Repository navigation
Add the V2 PCB (70 x 30 mm), placed but not routed - #96
Merged
Merged
Conversation
V1's main problem is length, so V2 is 30 mm shorter and 5 mm narrower. The board keeps V1's order: bumper, stick with side buttons, face buttons, XBee, USB. Radios: the XBee becomes a soldered XB3-24Z8UM (PRO, +19 dBm, Zigbee 3.0, U.FL) on top, with an ESP32-S3-WROOM-1U behind it. The 1U has the same pinout as the WROOM-1, is 6.3 mm shorter and has no antenna keep-out. Buttons: all 12 move to a TCA9555 I2C expander, which frees GPIOs for a USB-to-XBee bridge over the ESP32: GPIO21 to DIN, GPIO47 from DOUT, GPIO38 to RTS, GPIO42 to DTR. GPIO18 takes the expander's interrupt. The power button stays on GPIO2. The I2C pull-ups are now on the board, because every button needs the bus even with no OLED attached. Macro and boot switches become the Alps SKRPABE010, and there is one centered bumper. Power: the buck, charger and latch keep V1's placement and bottom-layer routing as rigid blocks. The latch is split at PWR_BTN_TRIGGER because it does not fit whole. Two charger GND vias moved to clear the face buttons. Adds Espressif's and Digi's STEP models for the two modules, and the TCA9555, SKRP and XBee reference documents. Firmware is unchanged, so V2 cannot read buttons until the expander driver exists. Co-Authored-By: Claude Opus 5.5 <[email protected]>
Runs the Stackup check, purchasing BOM export and PCB sync check on PCB/v2.x alongside PCB/v1.x, and notes the second board in CLAUDE.md. 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.
Summary
Starts the V2 board in
PCB/v2.x. V1's main problem is length, so V2 is 70 x 30 mm, 30 mm shorter and 5 mm narrower than V1. All parts are placed, but the board is not routed and is not ready to order.PCB/v1.xis unchanged, and firmware is unchanged.Layout: V1's order is kept: bumper, stick with side buttons on both sides, face buttons, XBee, USB.
Radios
XB3-24Z8UMon the top side: XBee 3 PRO Micro, +19 dBm, Zigbee 3.0, U.FL. The-Jpart is the +8 dBm non-PRO module, so it is not a substitute.ESP32-S3-WROOM-1U-N8behind it on the bottom. Same pinout as the WROOM-1, 6.3 mm shorter, no antenna keep-out. A builder can put the antenna on either radio's U.FL.Buttons and GPIOs
TCA9555PWRI2C expander at 0x20, withBTN_INTon GPIO18. The power button stays on GPIO2, so power-off does not depend on I2C.SKRPABE010, with the footprint checked against the Alps land drawing. There is one centered bumper.Power blocks: the buck, charger and latch keep V1's placement and bottom-layer routing as rigid blocks. The latch is too long to fit whole, so it is split at
PWR_BTN_TRIGGER. Two charger GND vias moved to clear the face buttons, and V1's top-layer traces in these blocks were not copied.CI: the Stackup check, purchasing BOM and PCB sync now run on both boards.
Verification
stackup check --locked, BOM export and PCB sync check pass on v1 and v2.scripts/spice/latch_sim.pypasses. V2's power nets match V1's.pio test -e native: 395/395.pio runbuilds.Open before this board can be ordered
PCB/v2.x/libraries/3dmodels/README.mdfor where they came from.🤖 Generated with Claude Code