A basic wiring diagram I created for the new CAN bus architecture.
My lab's five-bar legged locomotion testbed was using direct USB to talk to its motor controllers, which introduced enough timing jitter to limit how tightly we could close a control loop. On advice from Yonder Dynamics' software team, I proposed moving to a CAN bus network for more deterministic timing and cleaner scaling as joints get added.
I built it on a Raspberry Pi running Ubuntu; wired, soldered, and configured ODrive v3.6 controllers driving Quantum MT5208 motors, with absolute encoders for feedback. Most of the time went into driver conflicts and dependency issues in the legacy testbed code (years-old browser Jupyter).
The network is up and reachable over SSH, but spring quarter ended before I could run full bandwidth validation. That's the first thing I'll do when I'm back, along with moving over to ODrive S1 controllers and a Waveshare CAN HAT for better performance (and cleaner wiring).