Repository navigation
V2 PCB: move PWR_HOLD to IO42 and apply review fixes - #100
Merged
Merged
Conversation
Swap PWR_HOLD and XBEE_RESET so the hold line sits on IO42, which has no reset pull. RXD0's pull-up could re-latch the board as the rail collapses at power-off. C_LATCH_G1 becomes 1 uF to ride through a short reset, and firmware holds the pin with gpio_hold_en for USB uploads. R_INV_BASE1 and R_INV_PU1 become 220k to cut the off drain. Add C_VSYS1, move the buck input cap and feedback divider beside the IC, double the power vias and add module GND stitching. Rename C_3V3_* to C_MCU_* and give every BOM line its full part detail, because PCBWay read "3V3" in the designators as a voltage rating. Add latch_v2_sim.py and regenerate the production files. Co-Authored-By: Claude Opus 5.5 <[email protected]>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Review fixes for the V2 board, ahead of ordering.
Do not order until this passes
ROM download mode has not been shown to keep the
gpio_hold_enstate. To test on V1: hold IO42 withgpio_hold_en(42), run a USB upload, and meter the pin. If the state does not survive, swap PWR_HOLD back to RXD0 and regenerate production.Changes
Power latch
Layout
BOM
Simulation
scripts/spice/latch_v2_sim.pyis new, with 32 checks: battery insertion, USB hot-plug, press time, power-off, reset ride-through at 1 µF and at an estimated 0.55 µF, insertion with the ESD diodes into the dead rail, and a press surviving until firmware drives PWR_HOLD.Firmware impact
V1 firmware must not run on this board, because the pin map differs. V2 firmware must:
gpio_hold_en(IO42)after driving it high, andgpio_hold_dis(IO42)before powering off.A blank board needs the power button held through its first flash.
Verification
stackup check: 0 errors, with the known LED 3.3 V note.bom_check: 43 lines, 0 problems.latch_sim.pyandlatch_v2_sim.pypass. These do not run in CI.Not covered
production/Snips_2_0.zipandproduction/netlist.ipcare local duplicates of thejlcpcb/files and are left out on purpose.🤖 Generated with Claude Code