// the find
peng-zhihui/ElectronBot
ElectronBot is peng-zhihui's open-hardware desktop robot: a WALL-E-style head unit with a round USB display and 6 servo-driven degrees of freedom, controlled from a PC via a layered SDK and a Unity front-end. It's aimed at hobbyists who want to build a physical device from scratch, not developers looking for a software library to drop into a project.
Full hardware release — Altium schematics, Gerber files, and both STEP and native Fusion360 CAD are all here, so you can actually fabricate the thing rather than just read about it. The modified-servo I2C protocol is documented down to the register table (community-contributed) and implements real closed-loop position feedback via ADC-sampled potentiometers and PID, which is more rigor than most maker-robot firmware bothers with. The SDK is properly layered (LowLevel -> Player -> UnityBridge -> Studio) and backs a working Unity app with expression-animation playback, not just a bare USB driver sample. Getting USB-HS with a custom CDC class working on an STM32F4 for video-out is nontrivial embedded work.
Nearly all substantive documentation — assembly notes, protocol quirks, chip-selection rationale — is Chinese-only; the enREADME doesn't cover the depth found in the main README. There's no CI, no tests, and no issue templates; this is a one-person project shared as-is, not something maintained to a software-engineering bar. The BOM leans on parts that are genuinely hard to source or reproduce: a specific low-stock driver chip (FM116B) and RC servos that require disassembling and re-housing by hand. The STM32CubeMX-generated firmware needs a manual backup/restore dance around USB files any time you regenerate the project from the .ioc, which is a fragile, easy-to-forget step for anyone modifying the hardware config.