Design-review findings
Issues surfaced while writing the per-board circuit-review guides (*/CIRCUIT_REVIEW_AND_BENCH_TEST_GUIDE.md). These are schematic-stage findings on unfabricated boards — fix before committing a board to a fab panel. Grouped by severity. Each guide's own text has the full context.
Release blockers#
Both original blockers are now FIXED (schematic + layout + fab package regenerated, ERC 0/0, DRC 0 violations / 0 unconnected). They remain listed here with their resolution so the history is not lost. No open blockers.
| Board | Finding | Resolution |
|---|
axa-011-rs485 | 560 Ω failsafe bias gave ~168 mV idle on a doubly-terminated bus (A−B sees 120 ‖ 120 = 60 Ω) — below the ±200 mV RS-485 spec, so RO was undefined when the bus was idle | FIXED: R4/R5 respun 560 Ω → 390 Ω 1%. Worst case now 3.3 × 60/840 = 236 mV, above spec with margin. Bias current ~3.6 mA; driver load ~55 Ω, still above the 54 Ω RS-485 minimum. Bench-verify the 236 mV figure |
axa-005-servo-bank | VSERVO = 6 V exceeded the 74HCT541's recommended 5.5 V max supply. Related latent issue found while fixing: R17 pulled the enable inputs to that same 6 V rail, above the '541 input abs-max of VCC+0.5 V | FIXED: added U2 AP2204K-5.0 LDO (+ C5/C6 1 µF) generating a dedicated 5 V logic rail V5BUF for U1 VCC, C1 and R17. Servos keep the full 5–6 V VSERVO rail, so 6 V high-torque servos stay supported. AP2204K accepts 24 V in, so no new voltage ceiling was introduced. Bench proof: V5BUF ≈ 5.0 V regardless of VSERVO |
Corrections already applied during review (verify they stuck)#
| Board | Finding | Status |
|---|
battery-power-input | Reverse-protection FET orientation as originally specced ("source to battery") does not block reverse (body diode conducts) | Corrected to drain-to-battery; netlist-verified |
robot-power-dist | GATE_STATUS 100k/10k divider tops out at 1.15 V — never logic-high at 12.6 V | Corrected to 39k/10k (2.57 V); in schematic |
robot-power-dist | NANO2 fuse body doesn't fit the 1206 land pattern | Swapped to 1206-form Littelfuse 0467 series |
Documentation / value discrepancies (low risk, tidy up)#
| Board | Finding | Action |
|---|
battery-power-input | README states DMP4015 VGS abs max ±20 V; datasheet says ±25 V | Fix README number |
axa-007-bldc | README mA/LSB figure for the INA240/ADS7042 chain is inverted | Fix README; nFAULT is non-latching so fault latching must live in RTL (note added) |
axa-001-dc-motor | Dead Toshiba datasheet URL in the generator; C3 voltage-rating margin marginal | Update URL; review C3 rating |
Physics / thermal limits to document on silk or in HDL (not defects)#
| Board | Finding |
|---|
axa-008-lowside | ULN2003 package power caps realistic use at ~250 mA/channel, not 4×500 mA simultaneous — the datasheet VCE(sat) table itself stops at 350 mA |
axa-004-hbridge-lab | 10k gate networks make the FETs' datasheet switching times irrelevant (µs-class edges) → low-kHz PWM only; prospective shoot-through current ~130 A makes fabric dead-time non-negotiable |
axa-009-ws2812 | 60 mA/LED means strip current (1.8/3.6/8.6 A for 30/60/144 LEDs) can exceed the TBD strip-connector rating — size the connector/wire per target strip length |
axa-003-encoder | RC filter (~110 µs rise) bandwidth-limits fast open-collector encoders — fine for gearmotors, note the ceiling |
axo-011-i2s-amp | 3.3 V-only power ceiling ≈ 1.4 W into 4 Ω (vs 3.2 W at 5 V) — deliberate scope choice, state it |
Recurring bench gotchas (firmware, not hardware — captured in guides)#
- I2C modules: a missing internal-pull-up enable (e.g. MCP23017 GPPU) reads random, not a board fault.
- SD card (
axo-017): pull-ups required on all SD lines incl. unused DAT1/DAT2, or some cards refuse SPI init. - I2S amp (
axo-011): SD_MODE divider must read ~0.30 V; a wrong divider parks the amp in shutdown and mimics a dead board — measure it first. - LCD (
axo-005): contrast (VO) first — a blank-but-backlit display is almost always VO, not a fault. - NOR flash (
axo-019): program needs Write-Enable + prior sector-erase; the EEPROM's WP jumper silently blocks writes.
Notes#
- The four deferred sensors (UV, SGP40, thermal ×2) and the Mini-DIN-6 footprint (PS/2 ships as a pigtail carrier) remain on the parts watchlist in
BACKLOG.md. - All findings are from schematic + datasheet review only. First-article bench results will add or retire items — update this file as boards are actually powered.