ikea IDÅSEN desk API and CLI.
Project description
This is a heavily modified fork of rhyst/idasen-controller.
The IDÅSEN is an electric sitting standing desk with a Linak controller sold by ikea.
The position of the desk can controlled by a physical switch on the desk or via bluetooth using an phone app.
This is a command line interface written in python to control the Idasen via bluetooth from a desktop computer.
Set Up
Prerequisites
The desk should be connected and paired to the computer.
Install
python3.8 -m pip install --upgrade idasen
Developers Install
Development is done with poetry, a virtual environment manager. First, install poetry using their guide.
Then install all the packages using poetry install:
poetry install
To install this package locally build it then install with pip:
poetry build
python3.8 -m pip install dist/idasen-0.4.0-py3-none-any.whl
Configuration
Configuration that is not expected to change frequency can be provided via a YAML configuration file located at ~/.config/idasen/idasen.yaml.
You can use this command to initialize a new configuartion file:
idasen init
mac_address: AA:AA:AA:AA:AA:AA
positions:
sit: 0.75
stand: 1.1
Configuartion options:
mac_address - The MAC address of the desk. This is required.
positions - A dictionary of positions with values of desk height from the floor in meters, sit and stand are provided as examples.
The program will try to find the device address, but if it fails, it has to be done manually.
The device MAC addresses can be found using blueoothctl and bluetooth adapter names can be found with hcitool dev on linux.
Usage
Command Line
To print the current desk height:
idasen height
To monitor for changes to height:
idasen monitor
To save the current height as the sitting position:
idasen save sit
To delete the saved sitting position:
idasen delete sit
Assuming the config file is populated to move the desk to sitting position:
idasen sit
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.