shadow-4wd-motor-shield-pcb

Public

@assaadmh

Share shadow-4wd-motor-shield-pcb

Check access before sharing the link.

Who can open this board

Anyone can open this board. No sign-in is required.

This link opens the latest version. Copying it does not grant additional access.

Loading 3D model… large boards can take a moment.

README

4WD Motor-Control Shield — Custom Nucleo-64 PCB

The 24-signal interface board that replaces SHADOW's perfboard wiring — and the two pin conflicts that only appeared on re-checking the spec. 2026 · Proteus 8 · PCB design · STM32 Nucleo-64 · Schematic capture · DRC · BOM

Origin

Built at IRIS Systems during a 2026 engineering internship, as part of a team working on the SHADOW autonomous vehicle programme. This repository covers the parts I worked on; the wider programme is IRIS Systems' project. Published with their agreement.

About

SHADOW's four motor controllers, steering bridge, encoder, brake servo and lights were all wired on perfboard. This is the board that replaces that harness: a Nucleo-64 shield carrying 24 signals — four throttle and four reverse channels, six Hall inputs, a BTS7960 steering bridge, an AS5600 steering-angle encoder, the brake servo and five lighting channels — brought out on pluggable screw terminals so the loom can be disconnected without desoldering anything.

Deliberate decisions, not defaults. Every lighting channel is kept at 12 V so that pack voltage never appears anywhere on this board. The star ground is a real 0 Ω link rather than a net tie, because the chosen tool has no net-tie object and the simulator needs a single 0 V reference to converge. Only the two 2×19 Morpho headers are populated: all 24 signals are available there, and skipping the Arduino headers also sidesteps an ambiguous solder-bridge mapping in which one analog pin can land on a signal already in use.

What re-checking the spec found. The source wiring document stated there were no pin conflicts. Two survived that claim. The on-board user button shares an external-interrupt line with one of the Hall inputs, so the button has to be polled rather than interrupt-driven or it will fight the odometry. And one output sat on a timer already running at kilohertz for a throttle channel, forcing a move to a different alternate function. Neither would have announced itself — both would have shown up as intermittent misbehaviour after assembly.

One circuit is missing on purpose. The source document specifies an optocoupler across what it labels an anti-theft line. That pair is a motor phase, and driving it is what caused the earlier fire on this robot. It is left off the board deliberately, and the omission is written down as a decision — so that a later reader restores nothing as an apparent oversight.

Footprint verification without the vendor. The manufacturer's site was unreachable, so the connector geometry was taken from two independent published sources that agree with each other, cross-checked against the board's own width by symmetry, and is to be confirmed with a 1:1 paper print before any order. Coordinates prove mechanics, not orientation — pin 1 still gets checked against the silkscreen.

Figures

Contents

docs/
kicad/
reference/

Notes

Only COPIE_0 is included - it is the live board (42/42 checks). The other two copies on disk are stale revisions and are deliberately not published.

Not included in this repository: 1 duplicate copy file(s), 1 generated/binary file(s) - build caches, generated toolpaths and oversized binaries are kept out on purpose. The source they are generated from is here.

Third-party work used here

This work was done as part of a team, and it builds on the following, which are not ours and are used under their own licences:

Author

Lassaad Mahmoudi — [email protected]
https://linkedin.com/in/mahmoudi-assaad

Comments

No comments yet. Be the first to ask about this board.

Ask about this board

Sign in to BoardRepo

New here? Signing in creates your account; there is no separate sign-up.