Motorized Legs in Action


Description

Electric motorized legs are widely used in standing desks to adjust the height as per user needs.
The system is divided into three main parts:

  1. Motorized Legs

    • Each leg includes a DC geared motor with encoder for precise motion.
  2. Leg Controller

    • Drives the motors inside the legs.
    • Synchronizes the movement of multiple legs.
    • Provides protection circuits such as overload detection.
  3. Leg Controller Remote (Control Panel)

    • Controls up/down motion of the legs.
    • Displays the current position of the desk.

Objective

The objective of this project was to design a custom leg remote controller that communicates with the existing leg controller.

The system was designed to be flexible and integrate with other products that use motorized legs. For example:

  • Integration with touchscreen displays for modern control panels.
  • Software-based control from a PC interface.

System

No documentation was provided by the leg vendor, and no technical information was available online about the communication protocol.
To overcome this, we reverse-engineered the original remote controller circuit and decoded the communication protocol using a protocol analyzer.

Key Findings

  • The remote communicates with the leg controller via UART protocol.
  • Data packets include current leg position and error messages (overload, motor fault, cable fault).

Hardware Components

  • Atmega328P Microcontroller
  • 16x2 LCD Display
  • CP2102 USB-to-TTL Converter

The firmware was written in embedded C language, and the system successfully mimics all the original remote controller functions.


Remote Functions

The custom remote replicates and extends the original functionality:

  • Up/Down Control – Move legs upward or downward.
  • Memory Function – Store the current desk height in memory.
  • Memory Slots – Three programmable memory locations for preset positions.
  • Calibration/Reset – Reset or recalibrate legs for synchronized operation.
  • Display Output – Shows current desk position and error messages in real time.

Test Device Photos



System Video


Demo of Existing Remote Controller