-
Notifications
You must be signed in to change notification settings - Fork 38
feat(pcb): add main-control-board MVP #35
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
jamro
wants to merge
14
commits into
main
Choose a base branch
from
feat/main-control-board-mvp
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
Show all changes
14 commits
Select commit
Hold shift + click to select a range
75a0181
docs(pcb): add main-control-board README
jamro 79470fe
docs(pcb): document control board connections and test status
coderabbitai[bot] 588f8a9
feat(pcb): add kicad project and symbols of modules
jamro 5c9d919
fix(pcb): update properties and pin types in tiny_engineer_modules.ki…
jamro c4cb630
feat(pcb): add footprints for Tiny Engineer modules
jamro 8097c16
feat(pcb): add pcb schematic
jamro 664f503
fix(pcb): update PCA9685 OE wiring status and related documentation
jamro 7fec90b
feat(pcb): add design rules and update PCB layout
jamro af52445
docs(pcb): update README with ERC and DRC status
jamro 28b4671
feat(pcb): add via stitching for GND
jamro ea18f20
Merge remote-tracking branch 'origin/main' into feat/main-control-boa…
jamro d1ef6f1
feat(pcb): add expected net memberships for main control board
jamro 9a79848
ci(pcb): enhance PCB validation process with automated checks
jamro da06e6a
Merge remote-tracking branch 'origin/main' into feat/main-control-boa…
jamro File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
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
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
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,4 +1,5 @@ | ||
| .DS_Store | ||
| __pycache__/ | ||
|
|
||
| # Cursor hook event log | ||
| cursor_events.log | ||
|
|
||
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
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
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
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
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
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
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
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
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
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
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
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
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1 @@ | ||
| *.bak |
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
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
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,22 @@ | ||
| # main-control-board | ||
|
|
||
| Carrier PCB that reduces jumper wiring: existing modules plug in on pin headers. | ||
|
|
||
| - **Purpose:** interconnect / carrier with header sockets for the existing modules | ||
| - **Status:** draft (schematic + routed layout, rev v1 / 2026-09-12) | ||
| - **KiCad:** 10 | ||
| - **Interfaces:** header sockets for the Waveshare ESP32-C3-Zero, Adafruit PCA9685, MAX98357A, SSD1306 OLED, and Adafruit 5993 USB-C breakout; shared I2C (ESP32 GP0/GP1 → PCA9685 and SSD1306 OLED); point-to-point I2S (ESP32 GP2/GP3/GP4 → MAX98357A BCLK/LRC/DIN); USB D+/D− (5993 → ESP32 GP19/GP18); PCA9685 OE ← GP5; +5V, 3V3, and GND. Servo 3-pin plugs and speaker terminals stay on the modules this revision. | ||
| - **Assumptions:** nets follow `[docs/hardware/](../../../docs/hardware/README.md)` (keep servo **+5V** off logic **3V3**; common GND). Custom module symbols live in `[libraries/symbols/tiny_engineer_modules.kicad_sym](libraries/symbols/tiny_engineer_modules.kicad_sym)`; footprints in `[libraries/footprints/tiny_engineer_modules.pretty](libraries/footprints/tiny_engineer_modules.pretty)`. ESP32-C3-Zero symbol pin numbers are Waveshare **header pads** (pad 1 = 5V, numbered anticlockwise from USB), not the ESP32-C3 QFN package. Two-layer FR4 ~1.6 mm; ESP32-C3-Zero on the back, other modules on the front. OLED uses a 1×04 pin header; USB-C breakout uses a 1×04 pin socket. Netclasses: `GND`, `Power5V` (`+5V`, 1.5 mm), `Power3V3` (`+3.3V`, 0.4 mm), `USB` (`/USB_`*), `Default` (I2C/I2S and other signals). | ||
| - **ERC / DRC:** ERC passed; DRC passed (custom rules in `main-control-board.kicad_dru`) | ||
| - **Built:** not manufactured | ||
|
coderabbitai[bot] marked this conversation as resolved.
|
||
| - **Tested:** not tested | ||
|
|
||
|
|
||
|
|
||
| ## Direction | ||
|
|
||
| First revision is sockets only. Design in KiCad 10, then fabricate, so the robot is wired on a board instead of Dupont harnesses. | ||
|
|
||
| Later revisions may integrate some or all of those functions onto this PCB and drop the plug-in modules. | ||
|
|
||
| Contribution rules: `[docs/pcb.md](../../../docs/pcb.md)`. | ||
Oops, something went wrong.
Oops, something went wrong.
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.
Uh oh!
There was an error while loading. Please reload this page.