-
Notifications
You must be signed in to change notification settings - Fork 54
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
Merged
+15,461
−35
Merged
Changes from all commits
Commits
Show all changes
21 commits
Select commit
Hold shift + click to select a range
822b2e3
docs(pcb): add main-control-board README
jamro f18620a
docs(pcb): document control board connections and test status
coderabbitai[bot] c9fef7a
feat(pcb): add kicad project and symbols of modules
jamro 38d60a0
fix(pcb): update properties and pin types in tiny_engineer_modules.ki…
jamro b840e28
feat(pcb): add footprints for Tiny Engineer modules
jamro 869aa21
feat(pcb): add pcb schematic
jamro 2ecd96d
fix(pcb): update PCA9685 OE wiring status and related documentation
jamro cc162f7
feat(pcb): add design rules and update PCB layout
jamro 77e976f
docs(pcb): update README with ERC and DRC status
jamro 423d5c7
feat(pcb): add via stitching for GND
jamro 7ac7486
feat(pcb): add expected net memberships for main control board
jamro c12686a
ci(pcb): enhance PCB validation process with automated checks
jamro a8c68cc
feat(pcb): compact main control board layout and properties
jamro b0bcd19
docs(pcb): clarify PCB validation requirements and update testing ins…
jamro 702f17f
docs(pcb): add main-control-board README
jamro b6e2547
prep PCB assembly
jamro 531a227
feat(pcb): replace MAX98357 by pin header
jamro b9c3a18
chore(cad): remove custom OLED symbol
jamro 148a6aa
fix(pcb): update expected net connections for main control board
jamro 0c9961b
chore(pcb): replace modules by goldpin headers and add headers to BOM
jamro 8cbebab
fix(pcb): rotate esp32 headers
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
Some comments aren't visible on the classic Files Changed page.
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
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,4 @@ | ||
| *.bak | ||
| gerbers/ | ||
| production/ | ||
| fabrication-toolkit-options.json |
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,20 @@ | ||
| # 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 | ||
| - **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.