concept
Chris and I wanted to build a low cost (sub 100$) desk robot that feels alive and isn’t overly talkative. We were inspired by the Sesame quadruped and Reachy Mini.
At first we built Sesame by following the instructions to see what limitations exist and write out a requirements spec for our V1 of walnut. These include:
→ natural gait and agility → sub 100$ cost → hearing, speaking, feeling → real time adaptive facial expressions and voice/noises → ‘always-on’
The last req came from us never having seen a Reachy Mini turned on, since it mostly appeared in short demos where the user is actively engaging with it. This means that even if two people nearby Walnut are having a conversation, it could be turned on and uninterrupting.
architecture
We went for a dual-compute system where the mobile components (scs0009 motors, bno055 imu, 3 layer mlp ppo) were controlled by a Xiao esp-s3 board, and all remaining peripherals + general intelligence were managed by a raspberry pi 2 zero w.
fdsafdsa
motor management
Since the documentation for the scs0009 feetech motors was quite poor, we decided to build a motor control suite on top of the sts-suite by Binh Pham. This also required adding support for new motors in the pollen-robotics/rustypot project. This made it a lot easier to detect and test motors instead of having to write a series of unique test scripts in our repository.