Skip to content

Automates the sit/stand functionality of a LINAK-powered desk in my home office, utilizing control libraries to manage desk height transitions. Implements automated scheduling for optimal ergonomic positioning and integrates a physical Pomodoro timer to enhance productivity. The system ensures correct sitting and standing intervals.

Notifications You must be signed in to change notification settings

hansand02/DeskController

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Desk controller for Linak desk (IKEA)

Installment

Disclaimer, this project is a wrapper around the linak controller from this repo

Do:

  1. Activate the venv set up in this repo source venv/bin/activate
  2. Connect to your desk via bluetooth ( easiest way is to use Desk Control app)
  3. Find the UUID address of your bluetooth desk.
  • MAC:
    1. Open or download bluetility
    2. Disconnect Desk if you are already connected
    3. Set your desk to pairing mode (usually by holding down the bluetooth button) and pair your desk with your computer using Bluetility by clicking on it in the device list.
    4. Copy the UUID of the desk by right clicking on the device in Bluetility and selecting "Copy device identifier".
  1. Insert the UUID in the config.yaml file, as described in the configuration section on the public linak-controller repo. Or use the --mac-address flag.
  2. IMPORTANT. Close the Bluetility app, and disconnect other devices that may interfere with the connection to the desk. It is quite fragile in this manner.
  3. Run linak-controller.

Troubleshooting

Connection failed:

  • Try ensuring that the desk is paired but not connected before using the script.
  • Try increasing the scan-timeout and connection-timeout.
  • Close bluetility, or other bluetooth development software.
  • Close the --server, if you have it running in the background and you are not using the --forward flag

[Errno 48] error while attempting to bind on address

  • lsof -i :9123, replace 9123 with the port you are using. Find PID of process
  • kill -9 <PID>

About

Automates the sit/stand functionality of a LINAK-powered desk in my home office, utilizing control libraries to manage desk height transitions. Implements automated scheduling for optimal ergonomic positioning and integrates a physical Pomodoro timer to enhance productivity. The system ensures correct sitting and standing intervals.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published