DIY Standing Desk Workstation

Background

orb-desk-150701Whether it’s just a fad or actually better for your health, standup desks have been getting a lot of hype lately. In either case, I certainly have moments throughout the day when I feel like standing and stretching, but don’t want to stop working. I’ve seen a lot of neat desks online, I just don’t want to pay a premium for one.

Some of my coworkers found an instructable explaining how to build a cheap standup desk using an IKEA side table and some modular shelving. It looked like a great idea, but after watching them use these desks over a few weeks I noticed they aren’t very stable when you use the shelf as a keyboard rest and you can only use it standing up. I don’t want to stand up all day, so I set out to modify the design to my own needs.

Goals

Primary

  • Ability to comfortably work on my laptop while standing.
  • Ability to comfortably work on my laptop while sitting.
  • Stability when putting weight of my arms or slightly leaning on desk while typing.
  • Enough surface area to have a notebook, calculator, or some sort of accessory next to my laptop while working – including a mouse

Secondary (after thoughts)

  • Support mounted LCD/LED Monitor via suspension arm.
  • Independent workstation when standing – so I don’t have to move laptop when changing between standing and sitting.

Materials

Primary

  • IKEA – LACK – Coffee Table – White – $24.99 (these will sometimes show up in the used section for much cheaper – and already assembled)
  • Rubber Anti-Skid Furniture Pads – ~$5.00 (something like this)
  • Computer desk or table – Assuming you already have one you work on, so $0.00

Secondary (after thoughts)

  • Computer LCD/LED Monitor – $0.00 (had one already)
  • Arm Style Monitor Mount – $0.00 (had one already)
  • Raspberry Pi 2 Model B – ~$35.00 to 50.00 (depends on where you get it, tax, and shipping costs)
    • UPDATE: RPi 3 has built-in WiFi and Bluetooth which will eliminate the need for a dongle and potentially USB cords for Mouse and Keyboard if you use blue tooth devices
  • Raspberry Pi monitor mounting case that fits a Pi 2 Model B – ~$30.00 (like this)
  • Wifi Dongle, USB power cable, HDMI Cable, Keyboard, Mouse, etc. for Raspberry Pi

Application

The idea of this is petty simple. Add a secondary surface far enough above the primary surface that I can still work sitting down but also work comfortably standing up on the secondary, higher, surface. The IKEA Lack table just ended up being in the sweet spot for my height, 5′ 11″. Obviously, this won’t be a good fit for all heights, however, you may be able to adjust the surface lower by sawing down the legs a bit, but you’ll end up making the primary surface too cramped for sitting work. I’m not really sure how you’d get any extra height out of it, if you’re taller, unfortunately. Anyway, here are the steps I took (initially):
orb-desk-pi-detail-150708

  1. Assemble the Lack table.
  2. Place the table on your desk surface.
  3. Test for stability, push it slightly to see if it gives/rocks at all
    • Add rubber anti-skid furniture pads to individual legs as needed to prevent rocking. I put one on each leg and then an extra one on the back right corner and front left corner – to stop the rocking plush make sure there’s good anti-slide protection.
  4. Place monitor on table surface.
  5. Hookup HDMI cable to the monitor (so all you have to plug into your laptop is a single HDMI cable).

orb-main-150701At first I did this with my laptop only and I’d move the whole machine from the table to the desk surface, or back, depending on where I wanted to work at the time. This got annoying pretty quickly and I was a little worried I’d end up dropping the laptop during the process. So I did a little refactoring. All I really needed at the table level was some kind of appliance that could remote into my development VM (virtual machine/desktop). So I figured a potentially good solution would be to use a Raspberry Pi since it’s cheap and small enough to mount somewhere out of the way. Here’s a list of what I tweaked in this refactor:

  1. Mount monitor on arm.orb-desk-pi-150708
  2. Mount a Raspberry Pi to the back of the monitor with a special RPi case.
  3. Connect HDMI and USB to the Raspberry Pi.
  4. Install Ubuntu MATE on the RPi.
    • Any linux distro would be fine, the key is to be able to run Remmina (an RDP client – or your choice here as well). I chose MATE simply because it was based on a trusted distro, it’s endorsed by raspberrypi.org, and it has a built-in screensaver/lock screen.
  5. Install Remmina on MATE.
    • I chose Remmina as the RDP client since it supports a variety of remoting protocols, not just RDP. It will also support VNC (to remote to a MAC) and SSH (to remote to another Linux box) connections as well.
  6. Configure Remmina with RDP credentials for my development VM.

Now I can just leave the laptop down on the desk and work on it when I want to sit but when I want to stand I can just remote right into my VM from the RPi. No cord changing and no movement of my laptop. As a side benefit, I don’t really even need to bring my laptop now that I’m used to standing for most of the day. So on the occasion where I work over a weekend, I’ll typically go sans laptop.