Coffee table - CT1

I designed and built this coffee table in the spring of 2017. The idea behind the design was once again to benfit from the possibilites with CNC-routing. The design uses shapes and forms that are hard to achieve with other manual methods.

The glass top is made from 8 mm tempered glass, the lower shelfs are made from 18 mm oak and the legs are made from 36 mm oak. The parts are connected with M6 threaded rod.

The design in cadquery

The design have note been made in a traditional graphic CAD program. But instead in a Python-based text CAD-program. Doing CAD in Python is really rewarding and fun and have several benefits compared to the graphical way in my opinion.

  • It is easier to create a logic structure of the model. Easier to see how things are dependent in text form.
  • Very powerful possibilites for parametric design.
  • The models can be kept under source control in state of the art system like git. Much more powerful than the regular PDM-system.
  • Some geometry selection is simpler in text form while other types of selection are more difficult.

The design of the coffee table is fully parameterised so the size can be freely changed and scaled using design parameters. The design parameters are for example length, width, height, thickness of glass, thickness of legs etc.

Originally is designed the model using the direct python script functionality of FreeCAD. But some weeks ago I migrated the design to Cadquery and cqparts. Cadquery is a python script framework for generating 3d models. Cqparts builds on cadquery and adds functionality of parts and assemblies. Today cadquery uses Freecad as backend but it is designed with the intent of being backend agnostic. There is for example ongoing work to add PythonOCC as backend.

Below is an embedded model of the 3d-model that you can rotate and zoom in on.

Show 3D-model in fullscreen

The first prototype

The legs where each routed in the CNC as two 18 mm mirrored parts and then glues together. As can be seen in the pictures I have made a vertical track in each half that will create a channel for the threaded rod when glued together.

This process worked okay but on later tables I have built I have opted to drill the channel with a regular drill which is quite easy as well.

The legs glues together.

The oak shelfes for this table was to large to route on my small CNC. Instead I created a segmented template in MDF that I could screw together and then used as a regular router guide.

Here is the template on the stock oak board.

The cutouts for the leg in the shelfs was also done with a template. The template can be flipped over to do all sides of the shelf.

Here all the oak parts are ready for finish. The threaded rods have been cut to length.

The oakparts was finished with some furniture oil

This is a picture from a test assebmly before I received the glass top.

The finished result

Manufacturing and sale through GNH Design

This coffee table is now also a part of what we sell at GNH Design that is my and Hans-Erik Hansanders design company. The beauty of the parametric design is that it is very easy for us to offer specials of the coffee table with customized dimensions and so on.

For example, we have sold a coffee table with custom dimension to a customer that wanted the following dimensions: 800x500x500

Here are some pictures of that table.

Are you interested in getting a customized coffee table from us or have any questions do not hesitate to contact us.

The table design is licensed as Open Hardware

Most people do not have the tools or the possibilites to build this kind of table and does that have probably dont want to buy the table from us but instead build one themself. :)

Due to this reasoning and due to that I believe in the power of open source I have decided to licens the source code for this coffee table as open hardware under the CERN OHL v1.2 licens. This means that anyone is free to to use and build the design.

I hope to both spread knowledge and also maybe get feedback on the design and suggestions for improvements. All design files and instructions are available at the GNH Design GitHub.