Skip to main content

ikea IDÅSEN desk API and CLI.

Project description

PyPi Version Build Status Documentation Status Ruff

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 to the computer.

Install

python3 -m pip install --upgrade idasen

Configuration

Configuration that is not expected to change frequently 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 discover the device address. The device needs to be in ‘discover’ mode for this to work.

If discovery fails the device MAC addresses can be found using blueoothctl and bluetooth adapter names can be found with hcitool dev on linux.

If the device has not yet been paired, this can be accomplished with:

idasen pair

Again, the device will need to be in ‘discover’ mode for this to work.

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

Community

Related projects and packaging:

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

idasen-0.13.1.tar.gz (18.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

idasen-0.13.1-py3-none-any.whl (12.0 kB view details)

Uploaded Python 3

File details

Details for the file idasen-0.13.1.tar.gz.

File metadata

  • Download URL: idasen-0.13.1.tar.gz
  • Upload date:
  • Size: 18.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.17 {"installer":{"name":"uv","version":"0.11.17","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for idasen-0.13.1.tar.gz
Algorithm Hash digest
SHA256 20fe03f9f7e5f7dd4dc1861d4b09db1d570aa3f8cb294e6102f39be37c50d2d4
MD5 bf0160659e32ddedd8a954b32e888e6d
BLAKE2b-256 c7ee4da55d566fdcc00ad6909e3f331c7d008d51e33869038b64d1015fc8ca8a

See more details on using hashes here.

File details

Details for the file idasen-0.13.1-py3-none-any.whl.

File metadata

  • Download URL: idasen-0.13.1-py3-none-any.whl
  • Upload date:
  • Size: 12.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.17 {"installer":{"name":"uv","version":"0.11.17","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for idasen-0.13.1-py3-none-any.whl
Algorithm Hash digest
SHA256 c9bd338f2efdf49648ceb326b2d077a58e5568260615378086c1f9b865091b5a
MD5 93302ebf7d8b8d45d56b2a91f7c391b1
BLAKE2b-256 d433afb530c96163bf347081fe13f0032574d1d9b077aac10d44088cf78a0af3

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page