V4C38's picture
Ship clutch-relative UDP control (app 3.1.6).
a42951e
|
Raw
History Blame Contribute Delete
1.52 kB
metadata
title: ESP32 Motion Controller  Reachy Mini
emoji: 🕹️
colorFrom: gray
colorTo: yellow
sdk: static
pinned: false
short_description: ESP32 handheld motion controller for Reachy Mini
tags:
  - reachy_mini
  - reachy_mini_python_app
  - esp32
  - udp
  - imu

ESP32 Motion Controller

Reachy Mini app that receives protocol v4 UDP samples from the handheld ESP32. Engage snapshots IMU zero; roll/pitch/yaw stay clutch-relative (rotation only). The app owns IK-safe clamping, hard yaw stops, antenna idle, and body follow.

See the repository README and PROTOCOL.md. Firmware and app must both speak v4.

Local install

pip install -e .
python -m esp32_motion_controller.main

UDP: <host>:8766

Live Space: https://huggingface.co/spaces/V4C38/esp32_motion_controller

Publish to Hugging Face

Tags required: reachy_mini, reachy_mini_python_app.

# from reachy-mini-app/
hf auth login
hf upload YOUR_USER/esp32_motion_controller . --repo-type space \
  --exclude ".venv/*" \
  --exclude "build/*" \
  --exclude "dist/*" \
  --exclude "*.egg-info/*" \
  --exclude "**/__pycache__/*" \
  --exclude "*.pyc" \
  --exclude ".pytest_cache/*" \
  --exclude ".DS_Store"

Keep those tags in the README frontmatter. The excludes matter: packages.find would otherwise pick up a stray build/lib/ as a second copy of the package, and .pyc files from another Python end up in the daemon's 3.12 venv.