A desktop monitoring client that mirrors the robot's LCD screen display.
- Python 3.7+ with tkinter
- Network connection to the robot
The following files are required at runtime but are excluded from the repo due to size. Re-download to recreate the working environment:
yolo11x.pt— YOLO v11 large model. Download from Ultralytics: https://github.com/ultralytics/assets/releasesyolov8n.pt— YOLO v8 nano model. Same source.rider_backup.tar.gz— Full robot home directory backup (411MB). Recreate by tarring~on the robot Pi.
-
Install dependencies:
pip install paho-mqtt
-
Configure robot IP in
rider_config.ini:[mqtt] broker_host = 192.168.1.130 # Change to your Pi's IP broker_port = 1883
-
Run the client:
python pc_client.py
Display (matches robot screen):
- 🎮 Controller status (upper left)
- ⏰ Current time (center top)
- 🔋 Battery level with progress bar (upper right)
- SPD: Speed multiplier
- BAL: Roll balance (ON/OFF)
- FUN: Performance mode (ON/OFF)
- CAM: Camera status (ON/OFF)
- Roll/Pitch/Yaw: Real-time IMU data
Controls:
- Movement buttons (↑↓←→⏹)
- Settings toggles
- Speed adjustment slider
- Green: Enabled/Good (battery ≥70%)
- Yellow: Warning (battery 40-69%)
- Red: Disabled/Low (battery <40%)
- Check robot IP address
- Ensure robot's MQTT broker is running
- Verify network connectivity