Skip to main content

It's a Table

·4 mins

It’s a table and also a gaming computer. I was first inspired by this video of DIYPerks, but I followed a simpler approach.

Photograph of the finished table. It’s a 80 by 150 centimeters tabletop with two white legs

The basic idea is to have all components to be less of 44 milimiters in height, which it’s the same height used for 1U in server racks. You can use some 44 mm square planks for the perimeter and two sheets of 3mm aluminium for the top and bottom. And you have a 5 centimeter table top! Add some height adjustable legs, and you have a great standing desk!

Now to the most interesting part: the components. I wanted a gaming computer so that means a great graphics card, I chose a PowerColor Radeon RX 5700. Paired with a Raizen 7 3800X and 64 GB of RAM, would play AAA games very nicely. One note about the RAM: nowadyas RAM modules are quite big, they add big radiators and LEDs making finding a model that would not got over the 44 mm quite challenging. Remember that RAM is connected vertically to the motherboard, and that one is not flat on the aluminun sheet, there are small pillars to avoid contact with the metallic surface.

Hover over the next image to get an annotated view of the components:

The configuration is quite simple: the three brown fans take air from outside and push it into the “case”; the 3 darkgreen fans move the air from inside, through the radiator out of the table-case. With a water circuit to move the heat from the CPU and GPU to the radiator, the loop is completed. I added a corsair commander to control all 6 fans independently and have temperature sensors in different places: air intake, air exhaust, near PSU, etc…

The PSU was a bit tricky to find. Standard Power Source Units are too big for the 44mm height restriction. There are a type of PSU. called “Flex” that would fit but usually are not powerfull enough for a gaming computer (or they are extremely expensive). There is another type of PSU that would fit in the height restriction: server PSU. Server PSU are also quite pricey, and they don’t have standard connections: each manufacturer have their own proprietary interface (so you have to buy the components to them). Lucky of me I found a miner’s shop doing clearance and I could buy a server PSU with connection board at a reasonable price. It’s still only providing 12v (the motherboard needs several different voltages), but at least provides enough watts for the most power-hungry components.

The server PSU components board has a functionality to be controlled externally. So that’s what I did: use the 250w flex PSU to provide power to the motherboard (with all the different voltages) and the 1200w server PSU to be controlled by the flex and provide power to the CPU and GPU (the most power-hungry components).

For the speakers, I tried something new. Well, at least new to me: I used conduction speakers (sometimes called resonace speakers too). These are speakers that don’t have a diagram, instead they use any hard surface to create sound. I used the bottom aluminium panel to provide sound. As they are simple speakers, they need an amplifier; with the height restriction in mind I found a cheap one that would also provide easy controls on the side of the table.

Close up of the side controls: USB and headphone to the left, audio to the right, height under the audio

Of course I wanted a frontal panel for USB! I found just the right one: USB 2, USB 3 and USB C with the right heght. I added a power button and a power LED (to know when the computer is up). As the legs are adjustable, I also added the control panel in the same area. I just used double sided tape for it, nothing fancy.

When I connected the control board of the legs, I noticed something interesting: there were two identical sockets, and it works with either one. That made me think, if there is a way to interact with the controller directly. And sure there is, after a few searches in internet I found somebody that had reversed engineered the protocol, and build a ESPHome device connected to home assistant.

The code I used can be found on my github repo: esphome_projects.

Back in a bit!

Diego Peinador
Author
Diego Peinador
Diego is a technology enthusiast that, in his free time, likes to learn new things, tinker with electronics and 3D printing, code stuff and administer systems and networks.