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.12.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.12.0-py3-none-any.whl (2.7 MB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: pylekiwi-0.12.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.12.0.tar.gz
Algorithm Hash digest
SHA256 a28f93162a954c3c173cdc4ebf8fd0fdbd8d18a84588978f69aef45054c58399
MD5 6fe928fe6db6efbb076260ebbf790315
BLAKE2b-256 da067f00035dda80472ae7c27b1d11b02503f66899cc87e91518c1506bb1b018

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pylekiwi-0.12.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.12.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d5c6361f48fd2a632cb6bfc62279c9b15bfbdb98b824b05a84307262d992fdef
MD5 93835d4ed69f174b49070cb7bd5a84af
BLAKE2b-256 30405c15b7a0921d8a9f3fad939ec857bfc064a0ed806bba8b5d8c7b44cee1b9

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