-
Notifications
You must be signed in to change notification settings - Fork 0
Operating Instructions (Hardware Execution Flow)
Vladyslav Vytrykush edited this page Sep 8, 2026
·
1 revision
Here is a clean, dedicated section formatted in Markdown for your project's Wiki / Documentation, titled Operating Instructions (Hardware Execution Flow):
This section details the operational workflow for deploying the MoSy motion engine alongside the HS-1 motion capture suit and physical quadruped hardware.
[ Step 1: Connect Hardware ] [ Step 2: Power Servos ] [ Step 3: Launch MoSy ]
ESP32-C3 ──(USB Cable)──► Host PC External 6-7.4V ──► PCA9685 `python main.py` on Host PC
- Connect the ESP32-C3 board on the HS-1 suit to your host computer (PC / Laptop / Raspberry Pi) using a USB-to-UART data cable.
- Note: The onboard C++ firmware executes automatically upon receiving USB power, streaming orientation JSON frames at 115200 baud.
- Ensure the PCA9685 16-channel PWM driver is connected via I2C (
0x40) and its external power terminal ($6.0\text{ V} \dots 7.4\text{ V}$ ) is energized for the motor servos.
- Verify the serial port assigned to the ESP32-C3:
-
Windows:
COM3,COM4, etc. -
Linux / macOS:
/dev/ttyUSB0or/dev/ttyACM0.
- Confirm the serial port name matches the configuration setting in
main.pyor your environment parameters.
Open a terminal on your host machine inside the repository root directory and initiate the main control pipeline:
python main.py
-
Port Binding: MoSy opens the designated UART interface and begins ingesting 50 Hz telemetry packets (
shoulder,forearm,hand). -
50 Hz Inference Loop: Incoming Euler angles are mapped into the 112-dimensional state vector, processed by the
<0.1 msONNX policy engine, translated into target servo microsecond pulse widths, and dispatched via I2C to the PCA9685 controller. -
Termination: To safely stop the pipeline and release the serial port, press
Ctrl + Cin the terminal window.
-
Architecture & Specs
-
Guides & Setup