Skip to content

PyEilik

Your Eilik, on your terms.

A sealed desk robot, opened up and made programmable — servos, screen and video, over a protocol recovered byte by byte and verified against real hardware.

import eilik

with eilik.connect() as robot:
    robot.arm_left.to(1800)
    robot.commit()      # one packet, joints in step
Get startedpip install pyeilik

macOS · Python 3.9+ · v0.3.1

The Eilik robot, arms raised

The robot ships sealed, with an app and no documented interface. Everything here came from watching the wire and checking each guess against the hardware.

  • The frame format — header, length, command, checksum — and the commands the firmware answers, including the four that are dangerous.
  • Four servos, their real travel limits, and how fast they actually move.
  • The 128×64 display, both directions: read what is on it, write your own.
  • The acknowledgement rule that separates working from dropping the device off the USB bus mid-frame.

What is not possible is written down too: there is no command to play audio through the robot’s speaker — not in this protocol, and not in the manufacturer’s own software either.

Read the protocol · Browse the API