Outsmarting the Desk
❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️
💚 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
- HA/Home Assistant (ESPHome, HACS)
- ESP32 board
- MicroUSB cable
The steps
- 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.
- Add a HA support for IKEA Linak (Idasen) by following the installation in this repository
https://github.com/j5lien/esphome-idasen-desk-controller - Install the HACS Lovelace plugin called LinakDesk Card
- 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.