Skip to main content

Python package for controlling the LeKiwi robot

Project description

pylekiwi

PyPI version

Python package for controlling the LeKiwi robot.

lekiwi

Quick Start

Web UI

Log into the robot and run the following command:

ssh <your robot ip>
sudo chmod 666 <your_follower_robot_serial_port>
uvx pylekiwi webui --serial-port <your_follower_robot_serial_port>

Then, open a web browser and navigate to http://<your robot ip>:8080 to see the web UI.

web ui

Leader and Follower/Client Nodes

Run the following command to start the follower node (host) on the robot (Respberry Pi):

ssh <your robot ip>
sudo chmod 666 <your_follower_robot_serial_port>
uvx pylekiwi host --serial-port <your_follower_robot_serial_port>

Run the following command to start the leader node (client) on the remote machine:

sudo chmod 666 <your_leader_robot_serial_port>
uvx --from 'pylekiwi[client]' pylekiwi leader --serial-port <your_leader_robot_serial_port>
# Use rerun to view the camera frames
uvx --from 'pylekiwi[client]' pylekiwi leader --serial-port <your_leader_robot_serial_port>

Or use the following command to start the leader node (client) on the remote machine:

uvx pylekiwi client capture --camera base --output photo.jpg
uvx pylekiwi client pose go <name_or_angles>     # preset pose name or "10,20,30,40,50"
uvx pylekiwi client pose save <name>             # save current pose
uvx pylekiwi client pose list                    # list preset poses
uvx pylekiwi client pose delete <name>           # delete preset pose
uvx pylekiwi client position --x-mm 180 --y-mm 0 --z-mm 120  # move EE to absolute position in base frame
uvx pylekiwi client inching --x-mm 10 --z-mm -5  # move EE delta in base frame
uvx pylekiwi client arm links actual --frame lekiwi_chassis  # inspect the modeled chassis frame
uvx pylekiwi client arm links actual --frame lekiwi_base_camera_mount  # inspect the CAD camera-body frame
uvx pylekiwi client arm links actual --frame lekiwi_base_camera_optical  # inspect the approximate camera optical-center frame
uvx pylekiwi client arm links actual --frame wrist_camera_mount  # inspect the wrist camera mount and optical frame
uvx pylekiwi client grasp                        # grasp object
uvx pylekiwi client release                      # release object

The lekiwi_chassis and lekiwi_base_camera_mount frames are now seeded from the public LeKiwi CAD/URDF rather than placeholders. lekiwi_base_camera_mount tracks the upstream CAD camera-body link, and lekiwi_base_camera_optical adds an approximate lens-center frame derived from the CAD mesh.

Referenced LeKiwi CAD sources:

If automatic discovery does not work across machines, you can connect explicitly to the robot:

# On the robot (Raspberry Pi)
uvx pylekiwi host --serial-port <your_follower_robot_serial_port> --listen-host 0.0.0.0 --listen-port 7447

# On the remote machine
uvx --from 'pylekiwi[client]' pylekiwi leader --serial-port <your_leader_robot_serial_port> --host <your robot ip> --port 7447
uvx pylekiwi client --host <your robot ip> --port 7447 capture --camera base --output photo.jpg
uvx pylekiwi client --host <your robot ip> --port 7447 pose go <name_or_angles>
uvx pylekiwi client --host <your robot ip> --port 7447 position --x-mm 180 --y-mm 0 --z-mm 120

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

pylekiwi-0.11.0.tar.gz (2.7 MB view details)

Uploaded Source

Built Distribution

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

pylekiwi-0.11.0-py3-none-any.whl (2.7 MB view details)

Uploaded Python 3

File details

Details for the file pylekiwi-0.11.0.tar.gz.

File metadata

  • Download URL: pylekiwi-0.11.0.tar.gz
  • Upload date:
  • Size: 2.7 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.15

File hashes

Hashes for pylekiwi-0.11.0.tar.gz
Algorithm Hash digest
SHA256 a0a19df9fa1c4ec05e6c9813c265e7198ae69b2e88da08f70f1bd323480179d3
MD5 a9514830f98ee42e718cc2818b07ffe3
BLAKE2b-256 56c1e77549aebb1246e9986e096a242c5beb84ee2db479b06a5f5d8ec6cbc8d5

See more details on using hashes here.

File details

Details for the file pylekiwi-0.11.0-py3-none-any.whl.

File metadata

  • Download URL: pylekiwi-0.11.0-py3-none-any.whl
  • Upload date:
  • Size: 2.7 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.15

File hashes

Hashes for pylekiwi-0.11.0-py3-none-any.whl
Algorithm Hash digest
SHA256 71cf6461d6e96ef18f58fa7ddcf10416b4673fc4d16adb18862f02a56af50fe9
MD5 e5a8ad957a60b95e3e9b62e1e3438cb7
BLAKE2b-256 594f2ffea28dfc3e9d4194501d3bc07ecf74e9cf9abad362863a14a887e9a13d

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