Outsmarting the Desk

Ivan Lesar
2 min readMar 10, 2021

❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️

💚 I’ve moved away from Medium. You can find the latest version of this post on my personal website lesar.me.

❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️

About a year ago I joined the ‘standing desk’ community by investing in a IKEA IDÅSEN desk powered by a Linak BLE adapter. A part of me wanted to reverse all the strain bolted onto my back from sitting through at least 8 hours a day.

The Issue

The desk controls are minimal, but it bothered me from the start that I had to hold the button until the desk reached the desired height. The desire of a fully automated desk was not fulfilled.

The Approach

Well, the desk controller uses Low Energy Bluetooth (BLE), which is a handy protocol which in itself defines services needed to operate the underlying functionalities. But this was not needed.

The wheel was already built and we are certainly not going to reinvent it.

What do we need

The steps

  1. First we need to find out the MAC address of our desk controller. We’ll use the BLE Scanner Android app to find out the address.
  2. Add a HA support for IKEA Linak (Idasen) by following the installation in this repository
    https://github.com/j5lien/esphome-idasen-desk-controller
  3. Install the HACS Lovelace plugin called LinakDesk Card
  4. Add a new ESPHome device configuration and add this to the end of the yaml file

5. That’s it. Our card is now available in the Lovelace GUI. We need to add the card and paste the raw yaml configuration provided below. Be sure to change the desk heights to your needs.

The output

The IKEA IDÅSEN (Linak) desk is now a bit smarter. You no longer have to hold the height buttons. Just press a button and let the smart home system do its magic.

--

--

Ivan Lesar

Automation, psychology, mathematics — Senior Backend Engineer @ Superology