Home Blog Page 3

Creating a Custom Floating Media Console


I built a custom floating media console to hold all of the AV equipment in our family room.

Why Build a Floating Media Console

We used to have all of our non-theater AV equipment in a very nice rack in our primary living room but at some point we made the decision to move all of this into our “Orange room” (e.g., the family room). This room doesn’t have the same type of space that our original room has, though, so there was no way to use our existing rack. That meant either buying or building a new one and knowing me, there was essentially no chance I was going to buy one. Thus, the need for a custom media console to hold all of our equipment.

I started with a SketchUp model (download for free here) to work through the concept.

First off, I wanted it to be a floating console since those take up less visual space and I tend to think they look better anyway. The console then has two layers — the top layer (or shelf) has the gaming equipment and the bottom has the bays containing our AV equipment.

On the top, then, we have our XBox 360, then the Kinect (more on that later) and Wii sensor bar, and then the Wii itself.

The bottom has three bays, starting off with our instantly obsolete early-adopter HD-DVD player, followed by a Denon AVR, and finished off with a TiVO Premiere. We also have a FireTV Stick but that’s directly plugged into the TV.

There are two cubbyholes capping off each side of the console that can hold DVDs or games or whatever. They are mostly closed.

Design Details

Most of the console is made up of 3/4″ plywood. Had I subtracted one inch off of the height, I could have done it all with a single sheet… but as it is, I ended up using one sheet and then some scrap pieces to make up the difference. I wanted to use a few screws as possible and so most of the plywood shell is held together with glue in dados or rabbets.

The front perimeter of the console is ringed with a 3/4″ poplar face frame. That’s there because I needed something in which to cut grooves. The grooves are there to hold the two cubbyhole doors, which are made from 1/8″ hardboard.

The shelf and partitions that delineate the equipment are all shorter than full depth of the console. That was to allow for wires to be passed up and down and side to side as well as to help facilitate air flow.

Finally, the entire console is supported by a hardwood rail that is attached to the console and then screwed into four studs using pretty beefy screws.

So let’s get started!

Rough Cutting

Oh, another goal of mine was to exclusively use material that I already had on hand. And so when I went looking for full sheets of 3/4″ plywood, I noticed this sheet of oak veneer plywood. That baffled the heck out of me since I have no memory of getting it. I also don’t know for certain why I would have, since the look of red oak is one of my least favorite looks in wood. Maybe it was the only reasonable “low void” plywood available when I was buying some? Well, since this was going to be painted, I figured I might as well use it up!

I started by cutting the strips to rough width using my skilsaw and a guide. I do this on my garage floor by just laying the sheet on a piece of foam insulation.

The initial cross cuts are also done using my skilsaw (this time using a custom jig) since the pieces are too long to handle easily on a table saw with the right cross-cut sled… and I don’t have such a sled at the moment.

In both cases, though, I cut the pieces every so slightly wider and longer than necessary so that I could trim them to the precise size on the table saw.

Routing the Dados

Most of the console was going to be held together with just glue and dados or rabbets and so that meant a decent number of them. Specifically, this required six full dados, two stopped dados, and four rabbets.

Since my inner pieces were going to be plywood, there was a need to create a custom fit dado width. I might have done it on the table saw with my dado set but these pieces were still notably long and as before, it’s tricky to use a table saw like this without the right sled. That meant using a router.

I’ve already made custom dado jigs out of scrap wood in the past (see here) and since they are so quick to make and are still so accurate, I did the same this time as well. There was one notable difference, though. In the past, I depended on a pattern bit that was smaller than my dado to make it work. In this case, my dado was going to be just a tad smaller than my smallest pattern bit and so I needed a different method.

In the end, I used a smaller non-bearing straight bit and then some guide bushings to guide it. That required some small tweaks to the custom jig but that was easy enough to do. I will likely create an updated post one of these days on how to make that style. The concept is the same between both styles, in any event.

The beauty of these jigs is that not only are they extremely quick and easy to make, but the end dados and rabbets are absolutely perfect.

While I was at it, I also drilled some shelf pins in the cubbyhole sides so I had a jig from a previous project already on hand. I have no idea why I’d want shelves there… but adding the holes now is trivial and would be a pain later if I ever did want them. Thus, I consider this a form of extremely easy future-proofing.

Assembling the Box

It occurred to me that it would be very difficult to sand the interior of the console after it was assembled and so I took the time to sand all of those surfaces beforehand. But… doesn’t it make sense that if sanding is a lot easier before assembly then wouldn’t painting also be a lot easier? Yes! Yes, of course it would be easier to paint at this stage!

In fact, had I painted at this stage, then I could have done the bulk of it using my sprayer, which is the by far the easier way of painting. But for some reason it never occurred to me until after I had it fully assembled and was struggling with painting all of the cramped nooks and crannies. Argh!

Lesson learned: prime and paint before assembly as much as possible.

The bulk of the assembly at this stage was just fitting the right pieces in the right dados after gluing and squaring them up and finding some way to clamp them in place.

I was experimenting with using an acid brush to spread out the glue for the first time but I only made it through roughly half of the assembly before switching back to using my finger. The brush was too slow even in general and it was made worse by having to pick out pieces of the bristles every now and then. I was also using a fancy Glu-Bot glue container to start but switched that out to the regular bottle, as well. That was my fault, though, as I had allowed the Glu-Bot to get almost totally clogged with dried glue and as a result it spread far too thinly and too slowly.

I did jump through a few minor hoops to try and ensure that the vertical pieces were square before the glue set. I also found myself having to improvise to get “clamping” force on the inside of the shelves, since I didn’t have any normal clamps deep enough. I ended up using some weights I have lying around on the shop.

I did have to use screws for one aspect of this and that’s attaching the shelf to the side panels.

The reason for that is because I made my AV bays a tad too wide. Had they been 3/8″ skinnier, then I could have cut dados into the side panels and used glue like the rest. I would have still had to figure out some way of clamping it… but presumably I would have been able to think of something.

The side panels were then fit into the rabbets at the end of the top and bottom pieces.

Somehow a combination of minute variations in the side of the panels and maybe variations in the depth of the rabbets resulted in the two sides not being precisely the same height. This ended up biting me in an unexpected way later.

Building the Face Frame

Next up was building the face frame that was going to hold the doors and allow them to slide back and forth. I needed to miter each of the pieces individually after discovering that the widths and lengths weren’t as precise as I had hoped. That is, if I put the wrong piece on the wrong side, there was bound to be a notable gap.

Three of the face frame pieces got half-depth grooves. These included the bottom piece and both sides. I used a 1/4″ wide flat bottomed dado blade for this.

The top face frame piece got a double-size groove.

The theory behind this is that I would be able to insert the door by simply pushing it up into the top groove. Since it’s double-depth, the door swings free of the bottom entirely. When I drop it down, though, it drops into the bottom groove while still remaining trapped by the bottom half of the top groove. The theory is sound.

This Project’s Big Oops

I fairly frequently make notable mistakes on projects like this but the screw-up I made this time was bigger than most.

Look at the following photo and see if you can tell what I’m doing wrong, if you know that the piece I’m installing has a half-depth groove in it, intended for the bottom.

Yep, I’m currently installing the half-depth grooved piece on the top of the console rather than the bottom. In fact, for some reason I had completely fooled myself into thinking that the bottom was facing me and so the two side pieces are also on the wrong sides. All four pieces end up being wrong. But I didn’t realize this until I was done installing all four and by that point I had even secured the pieces in place with brads.

This was a notable problem because my entire door mechanism depended on the double-size groove being on the top. It simply cannot work at all of that groove is on the bottom, like I installed it.

I should have realized that something was wrong much sooner since my face frame wasn’t lining up like it had in dry-fit. Remember how I said that the exact sizes needed for the pieces was going to bite me later? Now is that time. The mis-matched pieces ended up having gaps all over the place. One of them was too big to fix with putty.

That one was about 1/8″ wide and so needed a more robust patch. I started by widening the gap until it fit a piece of scrap that I had lying around. I then fit the scrap into the gap and cut it down to size and then glued it into place. After it dried, I fired up my belt sander to sand if flush. It’s not visible at all after it was painted.

I needed to make the top groove deeper in order to fix this and so I got out a slot cutting bit. I had to remove the bearing to give it enough depth for the groove to work like intended. Using a bit like this on a 3/4″ thick surface like the face frame wasn’t going to be easy and so I made a custom router base plate.

The custom plate was made of thin Baltic birch plywood that was long enough to span the console and I then just cut in the right holes and recesses to fit my router. I did forget that the holes weren’t centered on the router’s base and so my plate ended up skewed to one side. That’s no big deal since routers don’t need to face in any particular direction, anyway.

The actual routing worked roughly like I had hoped. There were two unexpected side effects of using this bit without its bearing, though.

The first side effect is clearly visible in the photo — I was using the bit’s shaft as the depth stop and this cylinder spinned fast enough to burn the wood the entire length of the groove. The second side effect was more surprising — it turns out that even a relatively smooth cylinder spinning at thousands of revolutions per minute is enough to essentially act like a cutting edge on its own and can hog away quite a bit more material than you’d think. The entire top face frame piece is notably “wavy” looking as a result.

With the top groove at its proper double-depth, the bottom groove needed to be filled in to be half-depth. I did this using a very thin strip of hardboard.

I just tapped the hardboard into the groove and since it was very slightly thicker than the groove, it ended up sticking in place without any glue and with just substantial friction.

Creating the Final Pieces

The doors are the simplest pieces on the console since they are just rectangular pieces of 1/8″ hardboard.

I was originally thinking of using metal pulls on them as the door hardware but couldn’t seem to find something that would fit my needs. I then punted on the decision until later.. in which case I ran out of time and ended up just drilling some finger holes in place.

The support rail is made of hardwood and it spans almost the entire width of the console. It’s glued on the three touching sides and then I drove in some pretty hefty screws on each side to add even more support.


I’m never a fan of the finishing stage but this particular time was notably more of a pain than most, if only because of how many surfaces there are and how many of them are in super cramped spaces. This was all exacerbated because I wanted a very smooth and full surface, which required many coats with sanding in between.

The entire console was primed with Zinsser B-I-N, which is a fantastic concealing primer. I put on several thin coats and sanded with 300 grit sandpaper between each coat. The paint was some shade of white Behr interior latex. That also required a few coats with sanding in between. That took a notable amount of time to do since I needed to wait for the paint to dry before sanding due to how much it pilled if it wasn’t completely dry.

But most of the finishing time was spent on the edge grain of the shelf and partitions. Note in the previous photo how smooth and uniform the edges are and compare them to some previous photos of the unfinished edges.

Basically my goal was to have edges that didn’t look like plywood at all and were completely smooth and flawless. I didn’t want to use edge banding, though. So what I did was start with a light sanding and then filled in all of the visible voids with wood putty. After that dried, I sanded it again and looked for any remaining voids. Those were filled with putty and sanded. I repeated this process three or four times. Then I primed it with B-I-N and looked for any voids with the new shadows. Those were filled with putty; sanded; and re-primed. I repeated this a few times.

It was all worth it in the end, though, as the final look does look essentially flawless and there’s no way to tell that it was pretty rough plywood to start.

All horizontal surfaces got a couple coats of Polycrylic with a light sanding in between.

My thinking for the Polycrylic is that I knew that it dried to a rock-hard finish and did so fairly quickly. Latex paint has a reputation for taking a very long time to completely cure before it loses all of its tackiness. I didn’t want any of my AV components to “stick” to the paint, though, and so the rock-hard finish was necessary.

This did work out very well!

Installing the Floating Media Console

The console is centered on the wall and is “floating” one foot off the floor. I wanted it to be level even though the floor is not. I started by resting the console on a pair of speakers that happened to be exactly a foot tall.

I then placed a 6′ long level on the top and got out a quick-clamp. I reversed the quick-clamp’s heads so that it worked as a spreader rather than a clamp. I then used this spreader as an ersatz jack of sorts to very slowly jack up one side of the console until it was perfectly level. This worked pretty well.

The console was then screwed through the hardwood rail and into four of the studs in the wall behind it.

Each hole was pre-drilled so that none of the threads of the screws were biting into the rail itself and were exclusively into the studs. I then used pretty beefy 3″ long screws to do the actual attachment. In theory this is strong enough to hold even my substantial weight on the edge, although I’m not going to try it. It’s easily strong enough to hold up all of my AV equipment with plenty of strength to spare.

All Done

Here’s what it looks like all installed and in a working state.

The speakers aren’t hanging on the wall since they are just temporary. You don’t see any other wires because this is hung on a custom media wall that shall be the subject of a future post.

Overall I’m pretty happy with the outcome of the console. I do like how it looks quite a bit and it holds all of my components just like I wanted.

If I did it again, I would tweak the dimensions enough to be able to use only a single sheet of plywood. I would also not make the same “groove” mistake a second time. Priming and painting would be done prior to assembly. And I would create better pulls for the doors.

Actually, I may remake those doors regardless and maybe just make some simple wood pulls for them. I’m not a fan of the finger holes at all.

My design did end up being wrong for the Kinect. As it turns out, this position is simply too low for the Kinect to work like expected. It’s much better suited on top of the TV. What I probably should have done is accounted for this in the custom media wall… or at least provided some way for the Kinect cable to come out the top of the console. As is, whenever we want to use the Kinect we have to pick it up and manually place it on top of the TV, which leaves the cable all exposed. Not a huge deal, but definitely a bit visually jarring compared to the otherwise wire-free setup (ignoring the temporary speakers).

But yeah, overall I’m very happy with the results!

Installing Reclaimed Saltillo Tile


I installed a set of reclaimed Saltillo tile in a bare concrete slab that has been in such a state for the past couple of years.

Let’s start out with the video:

Reclaimed Tiles

I had a strip of bare concrete slab in front of my theater that needed to be re-tiled.

The rest of the hall is tiled with Saltillo tiles and I happen to have a large selection of recovered tiles from when I deconstructed my living room a few years back.

One downside for re-using old tiles it that they all have a notable amount of mortar still stuck to them that has to be ground off, first.

I say that all of them have the mortar because there’s a bit of a selection bias (or survivor bias?) going on. All of the tiles with mortar that was not loosely attached to the concrete slab ended up being destroyed while trying to remove them. So by necessity, the only tiles that survived the process were ones with the mortar still stuck on.

Some ended up having “things” growing in them after hanging out outside for a couple years.  I have no idea what these growths are — maybe spider egg sacs or something?

Grinding the Mortar

Some of the tiles had mortar in the grooved patterns made by a square notched trowel. I attacked those first with a masonry chisel just to knock down the high spots.

That only goes so far and so I eventually need to grind down what’s left, regardless.

When I first tried this with regular grinding wheel, the amount of dust it kicked up was almost unbelievably staggering. Everything within 10 feet of the tile was covered with dust and some of the dust made it well beyond that. But since then, I discovered the Dust Buddie shroud for my angle grinder and… well, rarely do you find a product that works as brilliantly as this does. Hook it up to a decent shop vac and it not only reduces the dust but it eliminates it! It’s the difference between a stupefying cloud of dust and so little dust that you could probably get away without using a dust mask at all. Amazing product.

After realizing it took two minutes to do a tile with the back completely covered with mortar, thus no way to prep it with a masonry chisel, I decided to skip the chisel step thereafter and just use the grinder exclusively. Why spend the time with an extra step when it takes the same amount of grinding time in the end no matter what?

Cutting Tile

The space requires more partial tiles than full ones and so I needed to do a bit of tile cutting. I tested out the option of using an angle grinder but passed after the first experiments. More on that later. I bought a $99 wet saw from Home Depot. Yes, there is a model that is slightly cheaper both at Home Depot and Harbor Freight, but this one came with a diamond blade for the price and the cheaper ones required buying a $30 blade. In the end, this was the cheapest to just get started.

How good is it? Well… are you used to the professional grade tile saws? Maybe you’ve exclusively rented a higher end saw and have never used a cheap one? If so, then you’d hate this saw with a passion. It’s much slower; bogs down with anything more than a tiny bit of pressure; and is notably less accurate with its fence. But if you don’t have such experience and you want to spend as little money as possible on cutting tile, then this actually works okay. Just take it slow and make some test cuts to calibrate the fence and it’ll cut through whatever you have… providing you have the patience.

One downside to cutting Saltillo is that the red clay dust from the cut mixes with the water and creates a pretty decent dye. I was unable to fully clean this saw after I was done since the clay dye permanently stained some bits of it. Go figure!

I could use the tile saw for all of the rectangular partial pieces, but there was one piece that needed to be an L or a P shape or something like that to go around a corner. I used my angle grinder with a diamond cut-off wheel to cut out that piece. Compared to my cheap tile saw, the angle grinder actually feels like it has a lot more power. I could likely do all of my cuts much faster with it rater than on the tile saw. But man does it kick up a lot of dust! I didn’t want to deal with that with the rest of the pieces. And also, I found myself unable to get a truly straight line when doing it freehand. Finally, the edge isn’t quite as fine with the angle grinder as it is with the tile saw — there are chips taken out of the top and bottom. Maybe it’s because I didn’t keep the wheel perfectly square to the piece? Eh. It all worked out in the end.

I made sure to dry fit everything before starting since installing the Saltillo is fiddly work and I didn’t think I’d have enough time to cut and install it all at once.

Preparing the Tile

One important thing to note about Saltillo tile — its clay content makes it an extremely thirsty tile. So much so that it will naturally try to suck out all of the moisture from your mortar during installation, leaving a very dry mortar that does a terrible job of curing. It also means that any mortar or grout that touches the tile will almost immediately stain the tile permanently.

That’s why the first essential step is to soak the tiles in water preferably overnight but at a minimum for some amount of time before installation.

This was a relatively small project and so my goal was to just re-use leftover fortified thinset from a previous project. I started by pouring in a tiny bit of water into my bucket and then emptied the rest of the bag into it. I then inexplicably assumed that there wasn’t enough water and added more. That was a mistake. It became very quickly clear that my water to thinset ratio wasn’t even close to correct and while you can always add more water later, you can’t remove any. Argh!

Well, I did have an unopened back of slightly different fortified thinset that I wasn’t planning on using for this project. Looks like I left myself no choice. I’m not a big fan of combining two different types of thinset but, well, let me reiterate that I had stupidly left myself no choice in the matter.

With the added thinset, I was able to stir it into a much smoother consistency.

By the way, you’ll note that I’m using a corded drill for this. Experience has taught me that a decent 1/2″ cordless drill sort of works… but not great. The constant use that mixing mortar requires has a tendency to destroy the batteries. That is, not only does it make the battery go dead pretty quickly, but it’ll prevent the battery from charging again. Maybe heat related? In any event, if you’re going to be mixing thick compounds like this then a corded drill is likely going to be the cheaper method in the long run, when you factor in the ruined batteries.

Installing the Tile

The tools I use for laying the tile are, as follows: one 5 gallon bucket with the thinset and one bucket with water. One 6″ joint knife for loading on the thinset. A 1/4″ x 3/8″ square notched trowel to spread out the thinset. A sponge to wipe things down and then some sticks between 3/4″ and 1″ wide to clean out the grout lines.

I went back and forth on the notched trowel size. The question is if the tiles were considered “large format” or not. Most resources I found say to use a 1/2″ square notch with tiles larger than 16″ wide and my tiles are 12″ square. But… these are also notably thicker than most typical tiles and that might factor in, too. Finally, some sites do claim that a 1/2″ square notch should be used even for 12″ x 12″ tiles. Those tended to be in the minority, though.

In the end, I chose the 3/8″ trowel mostly because I already had it and I was planning on back buttering the tiles anyway. A 1/2″ trowel likely would have worked out just fine.

My procedure was to just dump out a bunch of thinset with the 6″ joint knife and then even it out using the notched trowel. Each tile then gets its own individual helping of thinset as I back butter it. I do this because the Saltillo tiles aren’t smooth on the bottom and sound notably hollow if there are any air pockets underneath them. I can hear that on quite a few of the existing tiles in my hallway and in my old living room. I can say from experience that the tiles that sounded hollow also were trivially simply to pop up from the floor, when I was removing them!

One funny note: if you watch the video, I describe how I back butter all of the tiles then proceed to do so for only one of the tiles and not the rest!  That’s because I was actually running out of thinset at that point in the installation since I was on the last tiles.  I didn’t have enough to back butter the final tiles… but I did back butter all of the initial ones.

You can buy very finished looking Saltillo tiles but mine are distinctly rustic looking. They have the multi-colored hues and animal paw prints and the rest. The appropriate grout width for this style of tile is very large — between 3/4″ and 1″. This does make placing the tiles quite a bit easier than some other styles. You’ll note that in my list of tools, I made no mention of any kind of spacers. Well, that’s because I just set the tile down roughly in line with the others and leave it be. There’s no reason to measure anything or get any more precise than it looking right. These wide spaces between tiles also means that’s it’s not as critically important to keep the tiles at the same level since small variations will be imperceptibly this far apart. I do use a level to roughly keep each individual tile from tilting too much, but nothing too crazy.

Oh, it’s worth nothing the spray bottle.  It’s for spraying down the concrete slab before all this. That’s what the spray bottle is for. I do that for the same reason that I soak the tiles beforehand — so the slab doesn’t suck any of the moisture from the thinset while it’s curing.

After setting the tile, I use a few pieces of wood I had lying around to clean out the grout lines. The sheer size of these pieces is probably somewhat unique to installing Saltillo.

I also am very quick to use the sponge to get rid of any thinset that fell on the tile. Even with the overnight soak, these tiles still have the tendency to stain if the thinset is left on for too long. I’m not sure how long that time is, so I just make sure it’s removed ASAP.

It took me just over a half hour to lay down roughly 10′ of tile, or 21 individual tiles, both full and partial.

I then let it set for 24 hours before grouting it.


Saltillo is different enough that it has its own special grout mix. It’s maybe hard to find most places but here in the South West, you can find it even at Home Depot and Lowes and the like. In my case, I just used the left over grout that the previous homeowner left and mixed up a batch using the directions on the package.

Grouting is tedious work even in the best of cases and grouting Saltillo is not even close to the best of cases. I mean, it starts out pretty standard, as I just flood all of the joints with the grout mixture. The only real difference here is the sheer amount of grout needed. I mean, with typical tiles, you can get away with a little box of grout powder but with grout joints this large, you need to get it in 50 lb bags.

The next step is also relatively standard in that I take out my rubber float and apply it at an angle to smooth out the joints. I use the same rubber float at a 90 degree angle to essentially squeegee off as much of the grout from the surface of the tile as I can. This would almost be a meditative step if I didn’t know what was coming next.

The final step is to finish the cleaning and grout shaping process using a sponge. Sounds simple, right? Well, the actual motions and such are simple but for whatever reason, this step takes forever. These few tiles that you see before you took about 10 minutes to finalize with my back killing me the entire time. It’s super important to get it all off, too. With typical grouting, you essentially leave a very thin layer on that forms a haze overnight. You can’t leave any grout on Saltillo since that haze will be impossible to remove with chemical means if it’s allowed to stay on overnight.

So yeah, every square inch of the tile must be meticulously cleaned so that it’s absolutely pristine.

When it’s all done, the grout is notably dark and I’ll have to say that I don’t mind the look of it.

Painting the Grout

When it dries, though, it dries to a much lighter tone of gray. You’ll note that the gray is similar to the grout color for the rest of the hall, but it’s not exact.

That’s because the existing grout is actually painted a lighter color than it would naturally be. See, the originally installed tile wasn’t sealed and so the grout became permanently stained. No amount of scrubbing could clean it off. Therefore, a year or so ago we got this Polyblend Renew Grout Colorant and Sealer and went to town painting the grout.

In order to match the existing grout, then, I needed to apply that same colorant to the new grout. This is all one week after it was installed, to give the grout time to fully cure.

Using the Polyblend colorant is straightforward if very exacting. I start by pouring out a very very tiny line directly onto the grout. A little bit of this goes a long way and pouring too much will just make cleanup that much harder.

The actual painting step utilizes an old toothbrush. Yes, that’s literally what is recommended on the bottle. The old toothbrush has fine enough bristles to really get up close to the tile edge without sloppily going over.

My technique is to drag the paint down the middle of the grout to essentially load an entire section. Then, I super carefully bring the paint out to the edges, being very aware of where every single bristle is on the toothbrush. It’s very zen like. Go extremely slow.

Doing just these 21 tiles ended up taking a full day. It took multiple days to do the entire hallway, the first time around. Yes, super slow going.

Even being super careful, though, there is bound to be a few tiny areas where the colorant spills over. I used a wet paper towel to essentially scrub it off.

After it dries, you can see that there is still a color difference between the old and the new. Well, this is exactly the same colorant — same bottle even — so that color difference is just dirt. The Polyblend solution is both a colorant and a sealant so in theory I can just scrub off the grime from the old grout to make it match.

Sure enough! A solution of 50/50 vinegar and water and a little elbow grease and the old and new are indistinguishable. Sweet.

Sealing it All

If there’s one overriding trait of Saltillo tiles that should be clear at this point is that it stains very easily. That means that using a sealant that soaks in is an essential last step in all of this.

Applying this sealant is the easiest part of this entire process. I flood it on using a foam brush but honestly anything at all that can evenly spread it will work just fine. It doesn’t take a lot, either. It kind of has a greasy texture but does soak in readily. In the case of the most porous tiles, a couple coats was needed but otherwise only one suffices for most of them.

After spreading it, I just wipe off the excess with a rag and voila, it’s done!

Yes, really done this time, after all of these steps.

All in all, I’m glad I did it because now this part of the hall looks finished. If I was starting from scratch, there’s no way I’d use Saltillo since I don’t like the look of it and it’s not fun to work with. But since it matches the existing tile and I had almost everything needed to do the job already, it was the clear choice. I’m gratified to see that it looks like the tiles have always been there.

Creating a Temporary “Sauna Bench” Style Equipment Rack


This post is all about a temporary equipment rack even though the next major task in my Phoenix theater build log is, believe it or not, installing tile in the entryway in front of the theater. That’s been bare concrete since that wall originally went up. In fact, my previous post on creating the door threshold was a preliminary one just so I could do the tiling.

Well, this is also a preliminary step in preparation for the tiling!

In this case, the issue is that my AV equipment (HTPC and AVR) are sitting directly on the floor in my equipment closet and thus also sitting right where the tile is going to go. This means that I need to elevate the equipment somehow — a simple shelf acting as an ersatz equipment rack.


The Video

As is typical now, I always create a video and usually (but not always) create a post to go along with it. Here’s the video:

A Quick Hack

My goal for this was to create a temporary solution that takes me less than an hour total to build and uses exclusively scrap lumber that I have lying around.

I started by looking at what I had. OCD people with expectations of perfect cable management: avert your eyes!


Heh. Yeah, that’s pretty nasty. I promise that it’ll all be much better when I finish the equipment closet for real. I just don’t want to commit to any particular cable length until everything is finalized.

I sort of kind of a little bit started organizing by figuring out what bundles of cables go where and making sure I wrapped them around the corner just to keep them in place.


What follows, then, is covered in the video but I don’t have any pictures. So use your imagine or just watch the video.

I started by getting out my laser level and striking a relatively random line, just to have a place with enough space under it for me to work with the tile. I then got a couple of spare 2x4s to use as shelf supports and screwed them into both sides. The right side was very straightforward since the studs are still exposed and so I just screwed directly into that. The left side should have been straightforward, but wasn’t.

The problem was that I was using 2″ long screws. That was fine on the stud size since that give 1-1/2″ for the 2×4 and 1/2″ embedded into the stud, which is enough for these purposes. But the theater wall is different. It’s made of two layers of sheet goods. The first layer is particle board and the second layer is drywall. What I didn’t think through was that a 2″ screw would have its 1/2″ of protruding screw embedded entirely into drywall, which has zero holding power in this fashion.

So when I started screwing the slats into the supports, even the mild pressure from that action was enough to rip the screw out of the wall. D’oh!

I rummaged around in my boxes of screws and found a few 3″ (or maybe larger) ones that easily had enough length to bite into the particle board. I mean, particle board doesn’t have fantastic grip strength either, but it’s still worlds better than drywall!

The shelf slates were made out of ripped 2x4s that I had created as part of my earlier sandbox build and were left over. They were in my scrap wood pile destined for firewood so those perfectly fit my requirement of “scrap lumber”.

I predrilled all of the holes in the slats since they are prone to splitting otherwise. I also decided to space the slats out for better airflow and to give more space in the back for the cables.

The end result looks like so:


That look immediately reminded both me and my wife of something — a sauna bench! We’re both very familiar with saunas since I grew up in the Upper Peninsula of Michigan (Yooper country) which was heavily settled by Finnish people. Both of are have mostly Finnish ancestry. I love the inadvertent resemblance!

And here’s what it looks like with the equipment loaded back up.


It definitely looks just like a temporary solution and that’s exactly what it is. I’ll eventually build a proper equipment closet with a proper equipment rack, someday. But for now, this is keeping the AV equipment off the floor and gives me room to tile, so I consider that mission accomplished!

Building a Threshold for a Soundproof Theater Door


When I originally built my theater door, I only made the threshold for one half of the opening and left the other half (roughly six inches) with just a bare floor. I needed to finish the threshold in order to install tile right next to it so now was the time.


My second reason for building it now was to finally allow the door to seal air-tight. The door already had weatherstripping on three sides which do an admirable job, but the bottom has been problematic all along. It does have an “automatic door bottom” but that’s never worked as perfectly as I hoped. One possibility for that is that the existing threshold was not parallel to the door and thus the door bottom’s rubber gasket wasn’t evenly distributed along it. A goal of mine, then, was to make the entire thing coplaner to the door and see if that worked.

If it still didn’t work, then my plan was to build a door stop for the bottom as well.

The Video

Miller Time

The existing door threshold was made from poplar a full inch thick and thus the new threshold needed to be that thick as well. This made getting a pre-milled board from Home Depot a non-starter since the AZ Home Depots don’t carry any boards like this over 3/4″. I found myself reaching into my rough lumber stack and found this one (hard to miss):


I started by cutting it to very rough length on my miter saw. This required two cuts since the entire board is wider than my cut capacity. It’s not terribly accurate, but all I really wanted at this point was to get the piece to even a tiny bit reasonable size.


Next up was ripping it to rough width on the table saw. This board was straight line ripped on one side by the lumber yard, although it has since moved a little. It was still straight enough on this little bit of length, though, so no problems there.


The board was technically flat enough for my use since I was just going to glue it down to the slab and then flatten it to be in line with the other side of the threshold. But it did have a mild cup and an equally mild front to back skew.


I was thinking that it would be nice to joint it but in the past, that required making a custom sled for my planer and I didn’t really feel like spending that effort this time. It would be very handy to have a 6″ jointer since that would make this so much easier. Alas, I don’t have…

Wait! I do have a 6″ jointer!


Yeah, it turns out that the previous homeowner left his jointer in the workshop when we bought the house and I just never used it. How random is that? I never used it because it was in pretty rough shape; dirty, covered in spider webs, and with all non-painted surfaces very notably rusty. Maybe it didn’t even work at all?

I spent a little bit of time cleaning it off and working at the rust with WD-40 and a scouring pad. That worked okay. The blades still had a tad bit of rust on them and they were nicked in places but didn’t look too terrible. I fired it up and sure enough, it at least turned on and the blades spun around. Worth a try!

It had been a long time since I watched a “how to use a jointer” video and so my technique was completely wrong — I was putting far too much pressure on the board. It did still concentrate on the cupped portion. I couldn’t afford to go too nuts on the jointer, though, since I was only at an eighth over an inch and didn’t have a lot of material to get rid of. So I got close enough.


Then I ran it through my thickness planer to get me with a 32nd or so of where I need to be.


After that, I was finally ready to rip the board to its final width and cross-cut it to its final length.

I also did a first rough sanding using a trick I learned a few years ago to first scribble pencil lines on the piece and when those are sanded away, you know it’s time to go to the next grit.


Looks like a proper milled board now! It’s almost too bad that it’ll never be seen.


Leveling the Base

I attached the board using PL375 construction adhesive. I had used Red Guard waterproofing compound under the other side’s threshold but didn’t this time since I’m not really convinced it’s necessary in our super dry AZ climate. If I’m wrong, then I’ll fix it when the future problem arises. I weighted it down with a random block of concrete I had lying around.


The two sides of the threshold were a little close in height but not completely flush. Far more importantly, though, the hinge side was notably higher than the other side. I decided to kill two birds with one stone and while sanding the two pieces flush, I also would lower the hinge side by nearly an eighth. The vast bulk of this was done with my belt sander, since the cross-grain nature of this mostly precluded planing it.


I could only get so far with the belt sander, though, so even after all that, the bits closest to the door stop were still notably higher and so the automatic door bottom still wouldn’t completely seal.



That meant getting some flap pads for my angle grinder and going to town with that. I could get right up to the door stop that way and so it was level all the way across after that.

I still wanted the entire threshold to be roughly an eighth higher in order to fit better with my automatic door bottom in the door. So I cut out a piece of hardboard and then cut out the lower part of the stops to fit the hardboard piece under it.


This also got a dose of construction adhesive. And was also weighed down with the random chunk o’ concrete.

Alas, even after all that, the automatic door bottom still didn’t work as well as I hoped. It sealed a lot more consistently than before but I could still hear air movement (whistling) when the AC was on. That meant that I needed to install a door stop on the bottom after all.

Installing the Door Stop

The door stop is only 3/4” thick so I didn’t need to mill any rough lumber this time.

I did need to cut an angle into the stop but not at any particular degree. So I just measured off 1/2″ at the max height of the blade and figured that whatever angle that was was going to be good enough.


The actual cut is thoroughly unsafe! The problem starts because I can’t put my fence on the opposite side of the blade, meaning that the piece is going to be trapped between the blade and the fence. I also haven’t yet made a tall fence so there was nothing inherently to keep the piece from tipping over.

I tried to minimize the risk by clamping another piece to the back in an attempt to create a wider and more stable footprint. This still has a very high risk of kickback. I was gambling that the friction of the pieces would keep them mostly in check and then I just made sure I didn’t stand directly behind it.


It worked! No, I don’t recommend that at all, but I wasn’t forced to learn a hard lesson or anything and the end result was just what I was hoping for.


Next up is cutting an 1/8” rabbet on the stop to accept the weatherstripping kerf. My blade is a thin kerf one and so I just made the proper depth cut and then just broke off the thin bit that was remaining. It cleaned up nicely after some thorough sanding.


I used plain wood glue for this step since it’s wood to wood contact. This deserved an additional concrete block weight to accompany the original random block.


Installing the Weatherstripping

The weatherstripping needs to go all around the door stops and so the existing side stops needed to be cut to extend the bottom kerf.


The weatherstripping needed to be cut at a fairly precise 45 degrees and so I used a square cut piece of lumber to hold it and then cut the angle using a speed square and utility knife.


It fit like a glove after all that!


And it worked, too! There’s no visible light coming through any side of the door now and I don’t detect any moving air when the AC is cycling. I consider that a complete success.

Finishing Up

The edges of the threshold were in pretty rough shape so I sanded them flush and slightly rounded first with my oscillating tool and then by hand. It got a coat of flat black paint.


Then while I was at it, I painted the rest of the door assembly in black. This would have been far easier to paint with the door down but that’s incredibly heavy and considering how much of a pain it was to install the first time, I certainly didn’t want to do that again! So I just removed all the hardware; taped up the hinges; and went to town.


Future Work

I am probably not going to create a second layer of stops and weatherstripping in the style of a “bank vault” door. Instead, I’m going to create a second door that will provide some level of soundproofing. Not sure when that’ll be.

Using a Pull Cord to Get an IR Cable Into My Theater


In this post, I talk about how I pulled an IR cable from my projector to my equipment close through conduit using a pull cord I had left for just such purposes.

The Video

Video link for the moving pictures fans:

Old School

This started because I bought a Logitech Harmony Companion remote to control my theater. I wrote up a more detailed review elsewhere but the important part to note here is that the Harmony Smart Hub controls devices via wi-fi, bluetooth, and IR. This was critical because my projector is a Panasonic PT-AE8000U which requires IR for control, since it predates any modern smart controls.

The Harmony supports IR out of the box and ships with a “mini blaster” to emit the IR signals. This blaster can control any number of IR capable devices as long as they are sight but I only cared about it supporting one, since my projector is my only device that requires IR.


The mini blaster has a chunky emitter on one end and an 8′ long cord with a jack that resembles a headphone jack that plugs into the Smart Hub. My conduit is 17′ long and when you factor in a few feet more to be usable on each end, well, that 8′ isn’t going to cut it. I was glad to see, then, that that jack that resembles a headphone jack is actually compatible with them and so I just bought a 12′ headphone extension cable and taped them together.


I already had a pull cord left in the conduit going to my projector from when I installed the HDMI cable in the first place. I have a video that describes how to use a vacuum to install that pull cord in the first place, if you care to see that. In any event, I attached one end of the IR cable to that pull cord using electrical tape and then added on a new length of pull cord to that bundle for good measure. I always do that when pulling cable so that there is always a length of pull cord left in each of my conduits in case I want to pull any more cables in the future. You know — like I’m doing right now! Yes, I’m glad that I left one there when I installed the HDMI cable in the first place.


Failed Attempts

I use a cable lubricant nearly every time I pull cable since I’ve found that it often makes a huge difference. That is, if you have a tiny cable going in a massive conduit than it might not be necessary at all, but in any more tight spaces, it can actually be a requirement. That’s because the conduit walls and any existing cables in the conduit can create a surprising amount of friction which also creates a notable amount of heat. This all will mess with the process of your cable pull quite a bit and if there are any extra impediments like corners and the like then that might be enough to stop the cable pull dead in the water. So yeah, cable lubricants make a big difference.


It had been over a year since I last used my bottle of lube, though, and I didn’t remember if it was supposed to be a liquid or a gel. I vaguely remembered it as a gel, but by this time is was definitely a thin liquid! In hindsight, I should have realized that it had gone bad and just thrown it away on the spot, but in the moment, I decided to at least give it a try.

So I put down a towel over the chairs under the projector conduit to stop any overflow and squirted some of the lube into a bowl. I then essentially soaked the cable and pull cord bundle in the bowl to coat it as best as I could. It felt a little bit slippery, but not as much as I remembered back when it was a gel. Still, I pressed forward.


I attempted to pull the cable through three times. The first was just me and that failed almost immediately. The cable hung up only a few feet in and wouldn’t go any farther. That wasn’t too much of a surprise on its own because I’ve had very sporadic success pulling cable on my own. I’ve found it to be extremely handy to have somebody essentially “pushing” the cable on the other end and agitating it a bit to loosen up any stopping points.

I made sure I had help the next two times. Specifically, my son pulled the cable from the equipment closet while I did the agitating and pushing from the projector end. I needed to be the one by the projector since my son was far too short.

Those attempts also completely failed as the cable got too hung up at some point and refused to budge, no matter what we did.


I suspected that there were three problems.

First, the HDMI cable is one of those “flat” ones which makes it very thin but also means that it’s very wide. I am guessing that the thinner cable bundle I was pulling through was getting wedged between the HDMI cable and the conduit.

Second, the conduit has several sharp turns and since it’s already a fairly tiny conduit, I think my possibly wedged cable bundle couldn’t make it past those corners.

And finally, that lubricant was clearly bad and was doing absolutely nothing to help at all.

A New Perspective

Since the HDMI cable was part of the problem, I decided to pull it entirely out of the conduit and leave only the original pull cord in there. My goal was to pull the HDMI cable and IR cable at the same time so there’s no possibility of them wedging.

I pitched the lube and went to Home Depot for a replacement. While there, I found a new alternative. It is a foam based product that is supposedly so much better than the gel. The gel works by you rubbing the lube on the wires by hand. With the foam, you just spray it inside of the conduit and it expands. You then pull the cable normally through the foam and it auto-lubricates. There’s no mess at all and it lubricates quite a bit of the cable. A very slick idea, if it works!


If we take a step back, though, we can see that there’s a bit of an issue. It starts with that IR cable. Yes, the jack end is very skinny but the blaster end (which needs to be in the theater, obviously) is notably chunkier. Indeed, it is roughly 1-1/2” wide


This is a problem because my projector conduit is only 1-1/4″. Oof. Yeah, the blaster head won’t fit through the conduit at all, thus meaning that I am required to pull from the projector to the equipment closet and not the other way.


As an aside, installing 1-1/4″ conduit to the projector was dumb. I consider 1-1/2″ conduit the absolute bare minimum for theater conduit and that’s literally only if you are only planning on having one cable in there. If there could potentially be more than one, then start at 2″ at a bare minimum and go up from there!

Anyway, so we need to pull from the theater. No big deal, right?

Well, let’s look at the attic just above the projector mount. Note how the conduit doesn’t go directly to the ceiling but actually goes to a backer box. I created this backer box to make sure there wasn’t any sound leakage around the projector mount area.


As a result of the way this was all constructed, though, the conduit only goes to the top of the box. That means there is a space of maybe 10 inches where there is no conduit at all!


No conduit means no place to spray the foam. But since I need to start from that side, how can I work around the lack of conduit to spray my lubricating foam?

What I did was get out a spare pipe to use as a surrogate conduit of sorts. The idea was to run the cable bundle through this pipe pretending that it’s part of the real conduit run. I would then fill this surrogate conduit with the foam and when the cable goes through, it should self lubricate just as well as if the pipe was in the wall or ceiling.

That’s the theory, anyway. I started by threading the pull cord through the surrogate pipe.

Next up, I gathered up the HDMI cable (remember I removed it earlier), IR cable, and new pull cord and attached them inline to the end of the original pull cord.


I shook the foam spray can well and then attached a flexible hose to it. The hose goes into the top of the pipe. There is a chart that says roughly how long you should let it go based on the pipe diameter so I sprayed for that long… but I don’t remember the actual time. A few seconds.


Now for the moment of truth — did it all work?

Yes! It worked fantastically well. The surrogate conduit worked far better than it had a right to and I could see how the cable was thoroughly coated the entire length of the run. The pull itself was the same “me in the theater; my son pulling in the equipment closet” but this time it was all smooth sailing.



Finishing Up

The hard part done, I just needed to hook my projector back up. That was pretty straightforward.

I did make one more boneheaded assumption and that was that the IR receiver on the projector was in the translucent section on the side of the face. There are a set of little bulbs there which I somehow thought to be related to IR.


Had I thought about it for even a few more seconds I likely would have realized that an IR receiver doesn’t have any bulbs! Anyway, it turns out that those are emitters for the 3D and have nothing to do with IR. I checked after getting very spotty and inconsistent results in my initial testing. The IR receiver is actually a round circle in the middle of the projector face!

After the fact, then, I went back and just placed the blaster on top of the projector and the reflected IR signals work like a charm.


Lessons Learned

I do have some lessons learned after this turned out to be more of a pain than I anticipated it would be.

First, that foam lubricant is pretty awesome. The gel worked okay when it was new but it was still very messy and didn’t coat the entire cable. The foam is mess-free and coats everything. Sweet!

Second, 1-1/4″ conduit is simply too small. As I mentioned earlier, that should have been 1-1/2″ at a bare minimum and honestly probably even more than that. The cost difference is negligible and the additional room to maneuver is invaluable.

The Third, which I guess I already knew, is that having a helper when pulling cable makes a big difference. I tend to do most of my theater stuff entirely on my own but this is one area where help really matters.

Living in Harmony (A Logitech Harmony Companion Remote Review)


Not Obvious

I’ve been searching for a good universal remote for awhile and, honestly, there isn’t one that does everything I want exactly how I want it. No matter what, there will be compromises. I ended up with the Harmony Companion Remote and Smart Hub, but it wasn’t an obvious choice.

I first looked at the “app” remotes like iRule and Roomy. They each have their pros and cons that I won’t spend a lot of time dwelling on. For instance, iRule is expensive and ugly as sin while Roomy is gorgeous but requires a cloud subscription (a fatal flaw to me). The overall fatal problem for all of the app remotes, to me, is that they require the use of a touch screen. I want physical and tactile buttons in my remote.

See, I did have a touchscreen remote quite a few years ago in the form of a Phillips Pronto. I discovered very quickly that I really like the ability to play/pause and fast forward or reverse at a moments notice and a touchscreen absolutely requires a notable amount of time to find the proper buttons. There’s no concept of “instant”. The modern app-based remotes have gestures, which supposedly take care of that… but even that didn’t really hit the sweet spot for me. No, I needed physical buttons.

Next up is the ability to control everything in my theater. That includes several wireless devices, a bluetooth device, and an IR device. Eventually, that list will also include potentially z-wave devices and maybe Insteon ones (we’ll see). That left out most of the legacy remotes since those tend to be IR or RF and handle only a subset of my requirements.

There are a couple of interesting remotes coming out in the next year or so, but I wanted one now.

Honestly, when everything settled, the only remaining contenders were the Logitech Harmony remotes with their Smart Hub.

The Elite (~$300) was my first choice since it’s the most full featured and looks the most like my beloved Harmony One from back in the day. I realized, though, that I didn’t care about any of the features it had that elevated its price. For instance, it has a touch screen — I don’t care about those. In fact, if I did want the touch screen experience, I could just use the Harmony app. It has a recharge dock so no need to switch out batteries. It’s competition, the Companion, has a battery that lasts a year — who cares about a recharge dock in that case. I believe it also supports more devices, but I’m only going to control my theater and so don’t need the additional devices.

So when all was said and done, my only remaining choice was the Harmony Companion (~$130). I bought it and so far, it’s been pretty awesome!


The Logitech Companion is made of three components — the Smart Hub, the Companion remote, and the Harmony app.

Here’s the hub on top of my AVR:


The Companion remote, then, looks like so:


The remote and app only exist to control the hub, as 100% of the actual functionality is the hub. The remote and app are inherently “dumb” and communicate with the hub wirelessly.

Thus, setting this up is all about setting up the hub. You can do it with either the Harmony iPhone or Android app or via a desktop application on your PC or Mac. I prefer desktop apps, personally, so I downloaded the Mac app. It’s terrible. Really really terrible. I couldn’t get it to recognize my hub no matter what I did… and honestly, the more reviews I’ve seen of it, the more I realized it probably wouldn’t have done much even if it had.

So I was stuck setting it up via the iPhone app. And, well, it really wasn’t bad at all. In fact, most of the setup was trivially easy. It automatically detected my Roku without me having to do anything. Adding my Denon AVR was as simple as tapping through a very intuitive wizard. Same goes for my Panny projector, even though that’s IR. More on that later.

Really, the only hiccup in my setup was controlling my Kodi instance running inside of OpenELEC (at first) and then LibreElec on my HTPC.

After the devices are setup, I associated them with “activities” like “Watch Movies” or “Watch Roku”. One press of them starts up everything needed to do that activity.

All in all, this was the simplest setup I’ve ever had for a universal remote and better than I expected for a smart remote.

Old School IR

It was important to me that my remote solution use wifi and bluetooth since I thoroughly dislike IR to control devices. IR is one-way (no feedback) and in my experience, flaky and unreliable. Thankfully, the only device I have that still requires IR is my projector, since it’s decently old tech.


The Harmony hub comes with one IR blaster and has a port for a second optional one. Each blaster can support a number of devices so the number of them is more dictated by physical locations rather than anything else. In my case, my hub was going to be in my equipment closest outside of the theater while my projector is on the ceiling in my theater.

The IR blaster is about 1-1/2″ wide and 1″ deep and is attached to an 8′ long cable with what looks like a headphone jack at the end.


I knew I’d eventually have to thread that through my conduit to get to my projector but since that conduit run is 17′ long or so, I needed to get an extender first. That all happened later. I’m going to have a post and video on that process next week or so. No, it didn’t go smoothly.

In the meantime, though, I just snuck the cable under the door and left the blaster on the floor. That worked well enough for setup and testing.

The Kodi Conundrum

Really, the only issue I had at all was getting the hub to control my Kodi instance. This was an absolute necessity since that’s my primary means of watching movies — everything else is in support of my HTPC and thus the most important control I have is the control of Kodi.

Kodi can be controlled via its API over a network (wifi or LAN) and I prefer that since it’s instant and two-way. The Kodi iPhone apps use this very effectively. Alas, the Harmony does support Kodi but it doesn’t do so via its API.

Instead, it controls Kodi via either IR or bluetooth. I already mentioned my opinion on IR. And since I would have to buy a separate IR receiver for my HTPC (likely a Flirc), I wanted to use that as my nothing-else-worked option.

That left bluetooth. The reason this works is because Kodi is fully controllable via a keyboard. That is, each of its commands can be mapped to a keystroke. That meant that if I had a bluetooth keyboard, then I could fully control Kodi. It’s not strictly two-way like the API is, but it’s almost surely going to be more reliable than IR.

Handily, the Harmony does support bluetooth keyboards out of the box! In theory, I just needed to choose Kodi as the device and it should Just Work.

If only…

First of all, Kodi doesn’t really exist as a dedicated “thing” in the Harmony database, since it’s just an application running on a computer. That makes it mildly dependent on the computer type it’s running on. There is no option for Kodi running on a Linux system like my OpenELEC instance was. I did a lot of reading and experimenting and finally discovered that choosing Apple as the vendor and then Kodi would mostly work.

Then came the wailing and gnashing of teeth as the next couple of weeks were spent getting this to fully work. I bought an external bluetooth USB adapter that had highly rated compatibility with Linux. Even with that, though, I couldn’t get a working paired solution out of the box. Was the problem with my HTPC, my adapter, or my hub? It was hard to tell.

I first suspected my OpenELEC instance and since I was having other issues with that, I nuked it and switched my HTPC to running a Kodi-specific instance of Ubuntu. I couldn’t get that (older) instance to recognize the bluetooth adapter at all, though, and so I updated it. Updating it to the latest Ubuntu broke everything. So I nuked that and installed a “pure” Ubuntu instance since that had the highest guarantee of recognizing the bluetooth adapter. Yes and no. I was on the path of getting everything working (it was not straightforward) when I started casting my eye towards LibreELEC.

LibreElec is a forked version of OpenELEC with a more dedicated development team and a better architecture. In particular, it now had native support for the Emby Server and so my hacked version that I did earlier was no longer needed.

Thus, I scrapped my Ubuntu instance and installed the latest alpha of LibreElec.

And… it all mostly worked! It recognized my adapter with no hassles and it only took me a few tries and some choice cursing to get the hub to pair with it.

So after all of that hassle, I did finally have an almost 100% working solution with Kodi. Really, the only issue I’m still having is that I haven’t figured out how to map the Stop action to any key. That means that when I want to stop a movie (not pause), I have to open up the OSD and choose the stop icon. That’s not a fatal flaw since I only need to do that once per movie.


The App

As I mentioned, I got this because of the physical remote but it does come with a very full featured app. I use this for setup purposes and day to day, only use it if I want to start up my theater from my living room so that the projector is fully warmed up and running by the time I get there. Otherwise, I use the remote.

But if I wanted to use the app, I could. It connects to the hub either via the local wifi network or roundabout via the cloud (no subscription required!). You are presented with the Activities menu:


The other main screen is the Devices tab which shows all of the individual devices available:


I don’t have any Sensors (yet) but do have my Nest thermostat as part of my activities in addition to my other devices.

When you select an activity like “Watch Movie”, it starts up this animation and you can hear at a distance the various components all clicking on. When the animation is done, you know that everything is on and working (“hopefully” in the case of the projector since it’s IR and there’s no way for the hub to know if it worked).


The “Watch Movie” activity turns on my AVR and switches the channel to the one associated with my HTPC; then switches on the projector and ensures that it’s set to the right HDMI input; then turns of “Away” mode on my Nest thermostat; and finally sets the remote to control Kodi, which is always on.


The remote screen reminds me of iRule quite a bit with just a bunch of pre-defined icons for the actions spread over a few pages. All of the necessary actions can be accessed via these three screens. There’s also a keyboard option to use my phone’s keyboard to write out stuff without having to select each letter one at a time.

There’s also a gestures screen, which is also a lot like iRule. In theory, I could setup my phone or a tablet or something to never go fully to sleep and use the one or two finger gestures to control the action.


I don’t use that since I use the buttons but I do like that the option is there should I ever need or want it. Very slick.

As an aside, the difference devices do have different options that are usable in the activities. In the case of my “Watch Roku” activity, for instance, it does everything that the “Watch Movie” does but instead switches everything to my Roku and then switches the Roku to the YouTube app. It does so flawlessly.

I could go on and on with the app since it’s really very very featureful. But… I feel like a broken record stressing how on a day to day basis, I don’t tend to use it at all.

Day to Day

The way I use the Harmony system most days is by pure muscle memory and feel. I have gone into my theater so many times now that I can do everything in the pitch dark or completely blindfolded (yes, I tested that). In one fluid motion I’m reclining my primary chair while my other hand is grabbing the remote and then switching to the proper activity. When it all comes up on screen, I can then manipulate the action without ever even glancing at the remote.

It’s not quite as ergonomic as my old TiVO remotes and not even as much as my old Harmony One… but I’ve no complaints. It’s comfortable enough.

It also works flawlessly so far. There is no discernible lag between pressing a button and seeing the action happen. It’s never “lost” the signal from my hub. I’m loving the reliability of it all.

Going Forward

If I could change anything about the Harmony, it would be all with respect to Kodi. I wish that it recognized Kodi as a first-level device rather than “just another application”. I with that it could control it via the Kodi API for true two-way communication rather than via the bluetooth keyboard “hack”. And more immediately, it would be nice if I could get the Stop action mapped to a key on the remote.

Next up will be integrating my lighting automation into the system. I don’t know yet if I’ll do a z-wave solution; an Insteon solution; or even get a bunch of individual wifi enabled lights like the Hue. The former two will require an external hub that the Harmony would then need to integrate with while the latter might run into the device control limits of the Harmony itself. Either way, it’ll be interesting to see how seamless such support will be and how easy it will be to get working.

I’ll finish with the $64,000 question: do I recommend the Logitech Harmony Companion?

I answer that with a resounding yes! It may not be perfect, but it’s very very good and frequently wonderful. At $130 I consider it a no-brainer for anybody that wants a physical remote that can control an entire theater.

Creating a Pool Filter Backwash Pipe.. and Fixing My Failure


Backwash Hose to Pool Filter Backwash Pipe

In this post, I replace my pool filter backwash hose with a permanent pipe-based system… and almost completely screw it up! Think of this in three parts; I first build it, then I break it, then I fix it.

The Old Way

We have a DE (Diatomaceous Earth) filter for our pool. It does a fantastic job of filtering out particles but does need to be backwashed or flushed on a somewhat regular basis. We’ve tended to put off that chore since it was enough of a pain to discourage us from doing it until past the point of absolutely needing it. Performing a backwash required multiple tools and multiple steps.

The filter is supposed to have a valve that closes off the backwash pipe when it’s off but ours leaks like a sieve. To combat this, we installed a screw-on pipe fitting:


The cap isn’t water-tight so it needs to be tightened down with a wrench in order to show any semblance of keeping in the water. That also does mean that the wrench is needed to loosen it, too. Specifically, a wide-mouth pipe wrench is needed:


Note how chewed up the cap is from being tightened and loosened so many times.

The next step is to fetch our hose from storage and unfurl it…. okay, I’m kidding. Properly drying out the hose; curling it up; and then putting it away is far too time consuming to be worth doing. As a result, we just keep the hose out in the open in between backwash sessions. This absolutely destroys the hose in the AZ sun, so we have to replace it roughly once a year (or two, if we’re lucky).

We slide the hose onto the end of the pipe:


This picture should also show the next piece, but I lost it just before undergoing this project. It’s a hose clamp that we tighten around the hose to keep it from flying off when the backwash pressure gets going. You can see the tiny holes forming in the hose from the clamp. We need to trim off a couple of inches every so often when they get too bad.

The hose clamp is tightened and loosened with a bolt and that takes enough turns that doing it manually isn’t worth the effort. So we get out our drill with the appropriate sized hex driver and use that. That’s the second required tool (three, if you count the specific sized bit).

Everything needs to be reversed after the backwash is done.

A Better Way

There has to be a better way and after some thought, this is what I came up with — a permanent pool filter backwash pipe. I put a ball valve in place of that old cap which will do a decent job of sealing off the water but allow for it to be turned on with the turn of a lever. Then the hose is replaced with permanent PVC pipe, which will always be in place and should last much longer.

Here’s the video for the motion picture folks:

Stay tuned to the end to see how I completely screwed up as well as how I scrambled to fix my blunder.

Dry Fit

The first step is to remove the old cap and fitting. It’s easy enough to cut PVC with a hacksaw and so I just turned mine upside down and went to town:


With that off, I could do a dry fit of all of the pieces. It’s important to do a dry fit since you only get once chance at gluing together PVC pipe.

I started each piece by doing a rough measurement in-place:


It’s important to make accurate measurements in some cases, but not in this one. So I just held a piece roughly in place and marked off where I wanted to cut it with a permanent marker.

I could cut it with my hacksaw but it’s quicker and easier to just use a miter saw:


I went through each piece that way until I had enough for my dry fit:


Digression: When is 45 not 45?

As you can see from the dry fit, I have one section that goes off at a 45 degree angle. This requires two 45 degree PVC elbows to permit the pipe to continue on parallel to the first length. I picked out two 1-1/2″ 45 degree PVC adapters at Lowes and used them during the dry fit… only to discover that they each worked notably different, even though they are both ostensibly 45 degree elbows.

Here’s what they look like:

But let’s see what happens when you hook them together into what should be a 90 degree angle:


That’s clearly off by a visible amount. What happens if you spin one of them around to give you a 180 degree angle with a bend in the middle:


Yep, it’s clearly not right. One of those must not actually be 45 degrees.

I decided to use the one with the wider sweep (the bottom one) since it gave me more working room and that necessitated a quick trip to Lowes to pick up a matching mate. Who knew?

Digression II: When is PVC not PVC?

It turns out that all of the elbow fittings (the 90 degree one and both 45 degree variants) are the wrong type of PVC! There are actually three main types of PVC – foam core, solid, and CPVC.

Foam core PVC is essentially extruded cellular foam with a thin layer of solid PVC covering it. It’s perfectly fine for drainage situations, but isn’t strong enough for use in cases where the water will be under pressure.

Solid PVC is, as the name suggests, made from solid PVC. It’s rated for water under pressure and is great for any liquid under 140 degrees F.

CPVC is like PVC only it’s only used for hot and cold water and can handle temperatures above 140F (up to roughly 200F).

Okay, why does this matter? Well, all of the elbows I had were made with foam core PVC which I thought was fine because I equated a backwash pipe with a drainage pipe. Nope. A backwash pipe is considered to be under a pretty decent amount of pressure and so it actually requires solid PVC. There is a chance that the elbows on my backwash pipe may well blow out some day. Oops.

Where does CPVC come into play? I found out after the fact that the filter’s valve housing was made of CPVC. This could matter because technically speaking you aren’t supposed to be able to glue PVC and CPVC together (different chemical compounds). In fact, it’s forbidden for any plumbing system that needs to be inspected. Pool filter plumbing doesn’t need to be inspected and so it doesn’t matter from that perspective. I also have a PVC glue that can supposedly handle both. Plus, it might not matter — I’ll talk more about that later.


Gluing up PVC pipe is very straightforward and is one of the simplest things a DIY enthusiast can do. I started by scuffing up the mating surfaces with sandpaper, but I’m not showing that because it’s not technically speaking a required step. I just happened to have the sandpaper on hand so why not.

The real first step is to apply a coat of PVC primer to both of the mating surfaces:


The primer and glue are so often used together that you can typically buy both in a combo pack. That’s where my primer and glue came from, this time around. The primer is used to soften the PVC in preparation for the glue (hence no hard requirement to sand the surfaces) and is typically purple. I’ve also seen clear primer, but have never used it. I believe that the purple primer is required by code in certain cases, to make it easy for an inspector to see that the primer was properly used.

Okay, technically speaking the primer wasn’t strictly required in my case, either. That’s because the glue I used is rated for use without a primer in non-pressure systems up to 6″ and pressure systems below 4″. My backwash system is a non-pressure system and is only 1-1/2″.

The next step is to apply the glue to both surfaces:


PVC glue comes in various colors, depending on the manufacturer as well as what properties the glue has. They all can have different “bodies” and different “set times”. Those don’t matter 99% of the time. I see that the glue I used was “medium body” and “very fast set”. That’s fine. Any PVC glue from a reputable company would be fine.

I don’t put a prescribed amount of glue on the surfaces — just a thin layer on both the pipe and the fitting.

The final step has to be done very quickly. I push the pipe into the fitting and give it a slight twist, to help evenly distribute the glue. I then hold it in place for at least 10 seconds and then ensure that it doesn’t move at all for 30 seconds.


The glue actually melts the PVC when making the bond, which makes it a super secure connection. After that initial hardening session it’s impossible to remove without cutting it off and redoing the connections entirely.

I systematically went though all of my connections following this same procedure.

End Result

Here’s the completed business end starting from the filter housing:


That ball valve is so far working perfectly. When I installed it, I had the valve open and could hear the filter hissing and gurgling from the influx of air from the existing leak. That noise instantly stopped as soon as I turned the lever to “off”, though. That was very gratifying, being able to do that very simply by hand without needing to put significant force on it with a wrench.

The pipe then has a relatively long run alongside our fence:


I’m currently supporting the pipe with some blocks I had laying around. I’ll very likely attach the pipe to the fence with some pipe hangers in the near future.

The pipe finishes off with a hard right into our outer back yard in an area that we don’t care if the grass grows or not. We have a salt water pool and it tends to kill grass if we backwash frequently.


And done… or so we thought!


Most of this build article was written prior to actually using the system. We tried it out for the first time a few days later with April manning the valve and me watching the output from a distance. She turned it on… and within seconds, the entire system was going haywire!

If you look at the above pictures and read my descriptions, you might note that there’s no references at all to securing the pipe to the fence with clips. Indeed, I didn’t think they were necessary and so I just rested the pipe on some spare blocks I had on hand on the assumption that I’d add clips at some later date.

Well, our pool pump running at 3250rpm propels that water at a pretty rapid pace and it comes out at a surprisingly high pressure. The pressure is enough to essentially act like a rocket propulsion at the end of the pipe run. I also learned that a 20 foot long piece of PVC pipe can bend a lot!

So what happened is that the pipe started whipping back and forth at a pretty high rate of speed and spanning maybe 5 or 6 feet of distance. I shouted to April to turn it off but it took her a few seconds to get to the pump to deactivate it. In that amount of time, the vibrations and movement of the very flexible pipe proved to be too much for the very non-flexible valve assembly and a critical elbow on the assembly snapped right off!


The Problem

The part that snapped in half was an elbow that was specifically designed to fit inside of the valve housing assembly. That is, it had an “interference fit” (tight friction fit) that was suitable for glue to hold it in place permanently and water-tight. Since the non-snapped off part was still glued inside, I only had the interior diameter of that elbow to work with. It had an diameter of 2″.

The problem with this is that there are no standard PVC pipes or fittings that fit inside of a 2″ pipe. What I needed was to find some standard piece that fit as close as possible and try and work from there.

After lots of measuring of individual parts at Lowes, I discovered that the exterior diameter of a 1-1/4” coupler fit very very close. It’s not perfect, but it’s as close as I could find. That is, it’s not an interference fit, but it did look like it fit in there without any visible gaps.


With that one standard fitting in place, I was able to make a series of other iterations to get where I need to be. Next up is a 3” long 1-1/4” pipe that fit into the coupler. To that I attached a 1-1/4” to 1-1/12” bushing . From that I could attach a 3” long 1-1/2” pipe. To that I attached a 1-1/2” 90 degree elbow. At that point all I needed was a standard coupler and length of pipe and I could re-attach my original pipe. Whew.


Here’s where the CPVC possibly came into play, though. See, the manual for the housing assembly claims that it is CPVC! What’s not clear to me, though, is if the elbow was or not. If it was, then that meant I’d be gluing my PVC coupler to it with a potentially weak bond. Well… not that I had much choice. It was either that or replace the entire housing and that would cost far more than I’m comfortable with. So I glued it and am hoping for the best.

Five Years Late

I wasn’t convinced that my hacked solution would be able to hold up the pressurized water during normal operation and so I decided to see if it was possible to fix the leaky valve in the first place. Turns out… yes! It was trivially simple!

I simply unscrewed a top nut on the housing by hand and pulled out the valve slide. I could immediately see that it was completely missing two crucial O-rings that clearly needed to be there. I popped into my local pool supply store and they had a pack of O-rings specifically for that slide.


All it took to install them was to roll them on the slide and lube them up with silicone grease.


After that, I just slide the slide back into place and hand-tightened the top nut and voila it worked like a charm. No leaks at all.

What is blowing my mind is that it’s been like that for at least five years. We’ve had multiple pool pros out to look at various things. Not one has noticed the leaky valve. At no point did it ever occur to me to try and fix it, either. Instead, I just created that stupid workaround with the screw on cap. Gah.


The final and crucial step in my rework was to securely attach the pipe to the fence with clips. I got galvanized clips that will hopefully stand up in the sun. The holes were drilled with my trusty rotary hammer drill and then I screwed them in with Tapcon masonry screws. Simple.


The end assembly got two clips — one to keep it from rocketing backwards and the other from oscillating up and down.


And it worked! See the video for the backwash system in action, but it absolutely works like it’s supposed to with nothing breaking.

My hacked insert to the housing assembly does leak a little bit while backwashing, but not enough to bother me and it doesn’t leak at all during normal operation.

Speaking of normal operation, it seems like the entire system is working far quieter and more efficiently than before. We both noticed that independently. My guess is because there’s no more air being introduced into the system like there was with the leaky valve. Dunno for sure.

The ball valve I attached is now completely useless since the fixed primary valve works like it’s supposed to. Ah well. I left it because it was easier to do that than to remove it.

Installing Emby Inside OpenELEC

Emby Inside OpenELEC

This post and accompanying video is all about installing Emby inside OpenELEC so I should first explain why I want to do that and what the issue is that justifies its own post.

OpenELEC is an HTPC operating system that primarily runs the HTPC mediacenter Kodi off of a disk image in RAM. This results in super fast bootups and very simple setup, once installed.

Kodi, in turn, is a pretty fantastic HTPC front-end, but it does have two notable issues. The first is that there is no way to do remote streaming. That is, say you are on a trip and want to watch a movie from your collection that is served up by Kodi. That’s not possible. The second problem is the bigger one in my opinion. Kodi has a terrible interface for movie metadata management. This includes things like artwork and movie info and maybe trailers and all of the rest of the data bits associated with a movie file. The Kodi interface is stuck in the era from when it used to be XBMC and run on an XBox. This console-style interface is now incredibly antiquated and is honestly one of the worst interfaces I’ve ever seen for managing information like this. It’s so bad that it’s almost a deal-breaker for using Kodi!

Handily, there are products that fill in those gaps, namely Plex and Emby. Both are native remote streaming platforms; both have excellent modern movie metadata management; and both have addons that integrate their functionality with Kodi. Nice!

I tend to prefer Emby for Kodi integration partially because it is Open Source, partially because it is more flexible and more powerful when doing metadata management than Plex, but mostly because it completely takes over the Kodi database when the addon is installed. This is in comparison to Plex, which exists sort of as a side-piece to Kodi and the two maintain separate databases.

It is possible to run the Emby server on a separate computer and stream the content to Kodi — the addon does support that. Unfortunately, that setup defeats the primary advantage of a dedicated HTPC, as far as I’m concerned. Specifically, if you are okay with streaming or transcoding the movies over the network then you are likely better served with a Roku or FireTV box as the front-end running a Plex or Emby client. The power of a dedicated HTPC box is that everything runs locally, giving everything super fast reaction times and much tighter integration. Separating Kodi and Emby goes against that purpose.

The problem here is that OpenELEC does not easily permit 3rd party software to be installed after the initial installation. It runs off of a disk image in RAM and so anything running that’s not part of the image is typically wiped out on reboot. That means that for the Emby server to run locally, it will need to be included as part of the OpenELEC disk image.

That’s what this post is about — how to install Emby inside of the OpenELEC disk image to be part of the cohesive system.


Here’s the video for those who prefer talking pictures to words:

Step 0: Create a Linux Development PC

We’ll be compiling OpenELEC from source so we need a Linux PC to do the build on. I did mine the easy way and just installed VirtualBox and installed the lasted Ubuntu image onto it. If you have a dedicated Linux box then all the better since it will likely be much faster.

Step 1: Building the OpenELEC Disk Image

Start out by cloning my forked version of the OpenELEC source code:

$ git clone https://github.com/granworks/OpenELEC.tv.git

This will download a couple hundred megabytes of source bits and expand to use another hundred or so. Better have at least 300MB available for the source and then quite a bit more for the build.

Building the disk image is exactly the same as doing so for the stock image, since I made the Emby build a default option:

$ PROJECT=Generic ARCH=x86_64 make image 2>&1 | tee make.log

Technically only the part up to ‘image’ is needed — the latter part is there to log everything, which is useful for debugging if something goes wrong.

So… how long should this take? Well, it massively depends on your system. Probably a long time no matter what. On my VirtualBox instance running on a Mac Mini, it takes a staggering amount of time. It’s not “get a cup of coffee” amount of time but more like “set it going before going to bed and it’ll be mostly done by the time you wake up”. Yes, it takes at least eight hours to build on my system! Gak!

Install OpenELEC

When the build finishes, you’ll have a few files in the target directory. The ones that matter are those that end with img.gz, which is used for brand new installations and tar, which is used to update an existing OpenELEC installation. I have a previous video which covers the former case and the latter case is completely standard and described here

Install the Emby Addon

After rebooting OpenELEC, you’ll see the Emby server running, but it doesn’t communicate with Kodi at all since the Emby addon isn’t installed. I was unable to find a way to make that part of the disk image, so you’ll have to do that manually.

This page describes how to do that: Installing the Kodi Emby Add-on

What’s Missing

This setup is fully functional and is what I’m using on my HTPC as I write this. However, it is a bit of a hack. I was unable to coax the OpenELEC build process to successfully build the ‘mono’ package and so I resorted to pulling down a 64 bit pre-compiled package to use. This limits this image to only a 64 bit Intel chip and absolutely will not run on any other architecture such as the Raspberry Pi or a FireTV.

I was also unsuccessful in inserting the Kodo Emby repository into the disk image. I don’t know why that didn’t work since it seems pretty straightforward. Nevertheless, it’s not there, and so that addon needs to be installed manually.

It’s possible that if those two issues are fixed then my forked version could be merged back into the mainline, but until such day, this will need to remain a fork.