imrishabh18/rp2040-motor-controller
An RP2040-based NEMA17 stepper-motor controller with USB-C programming and PD motor-power negotiation, DRV8825 dual H-bridge drive, current/temperature telemetry, protected power filtering, status RGB LED, buzzer alarm, and optional magnetic encoder.
- Version
- 1.0.41
- License
- unset
- Stars
- 3
reports/tests.log
$ CIRCUIT_JSON_PATH=dist/index/circuit.json bun test
bun test v1.3.14 (0d9b296a)
tests/temperature-telemetry.test.tsx:
(pass) temperature uses I2C only; ALERT/GPIO24 are disconnected and MCU/PD enable is retained [25.46ms]
tests/nema17-mechanical.test.tsx:
trace: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)
(pass) NEMA 17 perimeter, four mounting drills and shared ground are preserved [3724.12ms]
tests/board.test.tsx:
(pass) renders the complete RP2040 stepper-motor controller [15670.37ms]
tests/outer-motor-power.test.tsx:
(pass) motor supply, winding and regulation-return copper stays on outer layers [29.61ms]
tests/schematic-sheets.test.tsx:
(pass) renders nine readable schematic sheets with local component groups [9412.00ms]
tests/drv8825-thermal-vias.test.tsx:
(pass) DRV8825 preserves all twelve supplier thermal vias, grounded through EP [21.78ms]
tests/saved-routing.test.ts:
(pass) saved routing refuses moved terminals, changed connections and changed clearances [207.51ms]
(pass) saved routing supplies a fresh copy of the complete route geometry [32.33ms]
(pass) saved routing accepts deduplicated connectivity IDs from newer core [34.25ms]
(pass) saved routing still rejects changed obstacle connectivity [126.89ms]
tests/pd-voltage-control.test.tsx:
(pass) PD selection uses the correct physical pins and isolates the USB power domains [3924.77ms]
tests/feedback.test.tsx:
(pass) optional bottom encoder, buzzer switching/flyback and low-profile motor capacitor [114.79ms]
tests/ground-pour-selection.test.ts:
(pass) only the independently audited floating copper is removed [0.25ms]
(pass) changed copper geometry, layer, net or count requires a fresh ground audit [0.19ms]
(pass) placement-only CLI renders still run normal DRC without applying a routed-pour selection [0.04ms]
tests/drv8825.test.tsx:
(pass) DRV8825 physical pins, isolated reference, microstep mode and charge pump [2912.88ms]
tests/current-telemetry.test.tsx:
(pass) two inline current sensors, safe ADC nets, RGB and independent voltage probes [2870.93ms]
(pass) each sense lead terminates directly at its shunt pad without a via [3280.46ms]
tests/jlcpcb-stock-audit.test.ts:
(pass) keeps displayed stock separate from available order quantity [0.57ms]
(pass) ignores price records and other suggested components [0.06ms]
(pass) reassembles records split between script chunks [0.04ms]
(pass) fails closed instead of assuming missing stock means available [0.09ms]
tests/common-ground.test.tsx:
(pass) all grounds and mounting rings share connectivity; a missing ground connection is detected [3041.07ms]
23 pass
0 fail
2750 expect() calls
Ran 23 tests across 14 files. [46.17s]
