Learning to build CAD models of a wooden remote

Step 2/4 in the “Everything you need to build your own Turn Touch smart remote” series

This is part of the full guide on how to make your own Turn Touch from scratch. This is the story of the design challenges faced when trying to make a seamless remote and how to overcome them. If you follow this guide, using the accompanying open-source design files, then you will be able to build your own Turn Touch that you can use to control your smart devices and apps on your phone and computer.

If you want to get your own, Turn Touch is on Kickstarter.

Signup on the Turn Touch mailing list to hear about future updates

The source code for the CAD models is available on Github.

Now let’s put it all together. The remote is broken up into 7 stacked parts, starting at the top:

  • top four wood buttons (beige)
  • top wood case (gold)
  • top plastic insert (light grey)
  • plastic button arms (teal)
  • circuit board (purple)
  • bottom plastic insert (dark grey)
  • bottom wood case (gold)

Starting the CAD process wasn’t easy. I didn’t even know which CAD program to use. I tried four programs, in order: Sketchup, Rhino, Solidworks, and finally Autodesk Inventor.

The models for Sketchup were limited by the simplistic capabilities of Sketchup, but Sketchup to its credit does a wonderful job of introducing you to the basics of CAD.

The models for Rhino were limited by the non-parametric capabilities of Rhino, where it was easy to model shapes but extremely difficult and time-consuming to change the parameters that determined how models affected each other.

The models for Solidworks were just the right balance of ease of creation and future modifiability. But once I tried Autodesk Inventor, its admittedly minor differences from Solidworks won me over. And while Autodesk’s Fusion 360 wasn’t production ready when I started the process, if I were to begin again today I was absolutely use it.

Figuring out how pieces fit together

The question to consider when designing each of these layers is what is their relation to the layer immediately above and below itself. The circuit board defines where its mounting pegs are for aligning with the plastic insert below it, and it defines the button dome positions on top for aligning with the plastic button arms above.

Seven layers: wood buttons, top wood case, top plastic insert, plastic button arms, circuit board, bottom plastic insert, bottom wood case

There’s quite a bit of overlap, so each of these pieces fit together nicely to form a much more compact package.

2" wide × 2" deep × 0.68" tall (52mm × 52mm × 18mm)

The circuit board defines the most fundamental constraints, so the design must form around it. That’s not always the case, but when the device is trying to be as compact as possible, it’s a good place to start.

On the other hand we have the outer design, which is shaped to fit your hand. Those contours, while independent of the circuit board, are constrained to fit the circuit board footprint. So from the top constraints, inside and outside, we can begin dissecting the component layers and figuring out how to build this remote.

First problem: How to hold the buttons in place

The button travels down the height of the metal dome when pressed, so there needs to be some way of holding the button in place while it’s pressed down so that it reliably returns to the original position.

The actuator is tall enough to allow the button arms to bend without deformation

Below you can see the concept of buttons arms. Each button has two arms that angle out diagonally from the center of the button. This holds the button in place from the sides.

The button array on the left attaches to the top enclosure on the right, held in place by its own structure

The remote has no border between buttons, so the button arms cannot cross over on top of other buttons. Two arms come from opposite corners and merge into the button half-way down its length.

Why not extend the arms all the way down to the center of the remote? Extending the arm would cut the deformation in half, since each part of the arm has half the height to travel when pressed. But it would also compromise the strength of the button, allowing it to break during assembly.

The length of the arms is a good compromise between strength and flexibility.

Possibly my favorite design inside the remote is how the buttons are held in place. Originally there were pegs in the insert and holes in the button arms. This worked but not well. It was at the mercy of various tolerances when building two separate plastic pieces: the top insert and the button arm. Any misalignment had to be corrected for on the other piece.

If the peg was too fat, the button arm’s hole had to be widened using a miniature, conic jeweler’s file. If the peg was too narrow, the button arm had to be adhered somehow to the peg to prevent it from slipping off. It was a nightmare.

By using tabs that reach over the top insert, the buttons hold themselves in place. During assembly the button array needs to be bent into place, but once attached it doesn’t go anywhere. This also solved the issue of broken pegs when buttons are forcefully pushed in during assembly.

Second problem: Pressing on any part of the button face

Users are going to press a button on any part of the button. And if the press isn’t directly in the center, then it needs to be accommodated.

Each button is held in opposite diagonal corners, so when a button is pressed the arms deflect slightly downward. But they also form an axis that the button can rotate on.

If the button is pressed anywhere not on that axis of rotation, it will either push up the inside corner or outside corner and pull down the other side. To prevent this, we add a paddle on the outer corner of the button. This paddle is aligned with the plastic inserts so that it has a tiny bit of wiggle room but ultimately is constrained from moving up or down, preventing the button from rotating.

The blue paddle rests between the bottom and top plastic inserts, preventing the button from rotating when pressed

Third problem: Holding the remote together

During a demo this is everybody’s favorite part. The top and bottom of the remote need to be held together so that the end user can open up the remote and swap out the battery.

Most remotes use a plastic latch that either needs to be pinched by the user or pulled apart. Alternatively, some remotes are round and can be rotated around internal threads to open.

To solve this problem, I turned to a set of eight strong neodymium disc magnets. They get glued and placed into holes that are sized slightly smaller than the disc magnet, forcing the opening on the side of the hole to expand slightly. This holds the magnet in place and, coupled with an adhesive, ensures a strong hold on the magnet.

It is so satisfying to pull a remote apart and let it snap back together with the power of mangetism. And these magnets are strong, so they pack a lot more punch than anything else this size.

Fourth problem: Accounting for alignment tolerance stackup

This problem has been one of the most perplexing and unforgiving issues I’ve come across on the remote. The issue is that the 7 separate pieces of the remote need to be adhered together in a way that compensates for the different relative tolerances and variable sizes of each component.

There are only a few sizes that must remain fixed. These are the circuit board, which has been fixed in size due to the requirements of the button positions. Second are the wood case’s top and bottom pieces need to be the same size and aligned perfectly with each other so that they form a seamless lip.

The trick is to have a buffer that can absorb the differences in tolerance between the two constraints. This buffer is between the inside of the wood and outside of the plastic insert. That space is apportioned to allow for inaccuracies that arise from two-sided machining.

What the above image shows is that the wood, on top, has a variable amount of space for the plastic insert to move around and align itself. The problem that arises during machining is that the top and bottom may not be evenly aligned, so the tolerance has to account for the maximum offset on one top and the maximum offset in the opposite direction on bottom.

While there is no issue with having a buffer that moves the button arms around, the buttons are no longer perfectly aligned with the opening in the top of the case. To account for this, the plastic button arms are inset from the edges, as evidenced by the purple circuit board peeking around the margins of the teal button arms below.

Smaller button arms (teal) allow the wood to be independently aligned without overlapping other buttons

The wood buttons are glued on top of the plastic button arms, so they don’t need to be perfectly aligned. But the plastic arms are reduced in size so that a wood button isn’t sitting on top of two plastic arms that happen to be slightly offset due to any alignment issues.

But this brings up another issue. We want to maximize the amount of wood at every point while minimizing the total size. We do this because otherwise the wood could break in the thin sections during machining.

Let’s turn back to the see-through side view of the remote.

Notice the space by the yellow arrow is a weak spot that runs along the circumference of the remote. By minimizing the height of the plastic insert we can maximize the wood that holds it in. This minimizes the possibility of split wood during the machining process.

And with that we come to the most exciting part of the process, how to successfully machine the wood.


This is part two of a four part series on everything you need to build your own Turn Touch smart remote.

Next step: CNC machining and fixturing to accurately cut wood

If you want to get your own, Turn Touch is on Kickstarter.