RobotCrawler
BerkeleyHCI·PolymorphicBlocks·examples/RobotCrawler/RobotCrawler.kicad_pcb
About the RobotCrawler PCB
RobotCrawler is an open source RP2040/RP2350 PCB design by BerkeleyHCI, published on GitHub under the BSD-3-Clause license. It is a 2-layer board measuring 60 × 80 mm, with 112 components from 31 distinct parts.
Its main chip is the RP2040 (Raspberry Pi), from the RP2040/RP2350 family.
It belongs with the keyboards and robotics & motion designs in this gallery.
From the project
A Python-based hardware description language for PCBs for higher-level (block-diagram / system-architecture level) PCB design through libraries of directly reusable subcircuit generators.
subcircuit generator library based hardware description language for circuit board design
Polymorphic Blocks is an open-source, Python-based hardware description language (HDL) for schematic-equivalent design of printed circuit boards (PCBs). Its library of components provide a high-level abstraction for circuit design while subcircuit generators automate the calculation of fine details. Abstract component interfaces enable these libraries to be general across applications and component vendors.

RobotCrawler bill of materials (BOM)
112 components, 31 distinct parts.
| Qty | Part | Footprint | Refs |
|---|---|---|---|
| 33 | — | C_0603_1608Metric | RC1, RC2, RC3, RC4, RC5, RC9, RC10, RC11 +25 |
| 5 | — | C_0805_2012Metric | RC6, RC7, RC8, RC16, RC34 |
| 2 | — | C_1206_3216Metric | RC13, RC37 |
| 1 | CUS10S30,H3F (TOSHIBA) - 30V 230mV@100mA 1A SOD-323 Schottky Barrier Diodes (SBD) ROHS | D_SOD-323 | RD1 |
| 2 | 1N5819WS (Guangdong Hottech) - 40V 600mV@1A 1A SOD-323 Schottky Barrier Diodes (SBD) ROHS | D_SOD-323 | RD8, RD9 |
| 3 | — | JlcToolingHole_1.152mm | RH1, RH2, RH3 |
| 1 | B2B-PH-K (JST) | JST_PH_B2B-PH-K_1x02_P2.00mm_Vertical | RJ1 |
| 14 | PinHeader2.54 1x4 (Generic) | PinHeader_1x04_P2.54mm_Vertical | RJ2, RJ3, RJ4, RJ5, RJ6, RJ7, RJ8, RJ9 +6 |
| 1 | — | Tag-Connect_TC2030-IDC-FP_2x03_P1.27mm_Vertical | RJ16 |
| 2 | — | Tag-Connect_TC2030-IDC-NL_2x03_P1.27mm_Vertical | RJ17, RJ18 |
| 1 | FH35C-31S-0.3SHW (Hirose) | Hirose_FH35C-31S-0.3SHW_1x31-1MP_P0.30mm_Horizontal | RJ19 |
| 1 | AFC01-S24FCA-00 (Jushuo) | Hirose_FH12-24S-0.5SH_1x24-1MP_P0.50mm_Horizontal | RJ20 |
| 1 | — | L_1210_3225Metric | RL1 |
| 14 | — | R_0603_1608Metric | RR1, RR2, RR3, RR4, RR5, RR6, RR7, RR8 +6 |
| 1 | 5015 (Keystone) - vbatt | TestPoint_TE_RCT_0805 | RTP1 |
| 1 | 5015 (Keystone) - gnd | TestPoint_TE_RCT_0805 | RTP2 |
| 1 | 5015 (Keystone) - v3v3 | TestPoint_TE_RCT_0805 | RTP3 |
| 1 | 5015 (Keystone) - v14 | TestPoint_TE_RCT_0805 | RTP4 |
| 1 | 5015 (Keystone) - i2c_chain_0.scl | TestPoint_TE_RCT_0805 | RTP5 |
| 1 | 5015 (Keystone) - i2c_tp._io_sda_link | TestPoint_TE_RCT_0805 | RTP6 |
Show 11 more
| Qty | Part | Footprint | Refs |
|---|---|---|---|
| 1 | LSM6DS3TR-C (STMicroelectronics) | Bosch_LGA-14_3x2.5mm_P0.5mm | RU1 |
| 1 | AP7215-33YG-13 (Diodes Incorporated) | SOT-89-3 | RU2 |
| 1 | TPS61040DBVR (Texas Instruments) | SOT-23-5 | RU3 |
| 1 | XC6206P252MR (Torex Semiconductor Ltd) | SOT-23 | RU4 |
| 1 | XC6206P122MR-G (Torex Semiconductor Ltd) | SOT-23 | RU5 |
| 1 | ESP32-S3-WROOM-1-N16R8 (Espressif Systems) | ESP32-S3-WROOM-1 | RU6 |
| 1 | STM32F103xxT6 (STMicroelectronics) | LQFP-48_7x7mm_P0.5mm | RU7 |
| 1 | RP2040 (Raspberry Pi) | QFN-56-1EP_7x7mm_P0.4mm_EP3.2x3.2mm | RU8 |
| 1 | W25Q128JVSIQ (Winbond Electronics) | SOIC-8_5.23x5.23mm_P1.27mm | RU9 |
| 6 | — | LED_0603_1608Metric | RD2, RD3, RD4, RD5, RD6, RD7 |
| 10 | SK6812 SIDE-A (Normand Electronic Co Ltd) | LED_SK6812-SIDE-A | RD10, RD11, RD12, RD13, RD14, RD15, RD16, RD17 +2 |
RobotCrawler design files
The KiCad project lives in the BerkeleyHCI/PolymorphicBlocks repository on GitHub; these links point at the commit this page was built from.
RobotCrawler: common questions
What microcontroller does the RobotCrawler use?
The RobotCrawler is built around the RP2040 (Raspberry Pi), from the RP2040/RP2350 family.
How big is the RobotCrawler PCB?
The RobotCrawler measures 60 × 80 mm, has 2 copper layers and is 1.6 mm thick.
How many components are on the RobotCrawler?
112 components, from 31 distinct parts. The full bill of materials is listed on this page.
Where can I download the RobotCrawler design files?
From the BerkeleyHCI/PolymorphicBlocks repository on GitHub, which has the KiCad layout; the links under Design files point to each one.
Can I use the RobotCrawler design in my own project?
Yes, under the terms of its BSD-3-Clause license, which BerkeleyHCI chose for the repository.
Can I test firmware for the RobotCrawler without the hardware?
Yes. HardLabs builds a simulation of the board from its netlist and BOM, so you can run and debug RP2040/RP2350 firmware against it before you order a PCB.
More boards in PolymorphicBlocks
ESP32
UsbSourceMeasure
BerkeleyHCI
168 × 52 mm310 parts4LBSD-3-Clause91RP2040/RP2350
FcmlPanel
BerkeleyHCI
115 × 72 mm240 parts2LBSD-3-Clause91RP2040/RP2350
Fcml
BerkeleyHCI
78 × 72 mm179 parts2LBSD-3-Clause91ESP32
IotThermalCamera
BerkeleyHCI
30 × 95 mm119 parts2LBSD-3-Clause91ESP32
SevenSegment
BerkeleyHCI
226 × 74.4 mm114 parts2LBSD-3-Clause91ESP32
PcbBot
BerkeleyHCI
110 × 97.2 mm107 parts2LBSD-3-Clause91ESP32
EspLora
BerkeleyHCI
63 × 81 mm104 parts2LBSD-3-Clause91ESP32
IotIron
BerkeleyHCI
100 × 36 mm93 parts2LBSD-3-Clause91ESP32
RobotDriver
BerkeleyHCI
116.5 × 82.3 mm86 parts2LBSD-3-Clause91Keyboard
BerkeleyHCI
64.1 × 103.2 mm80 parts2LBSD-3-Clause91IotFan
BerkeleyHCI
24 × 70 mm56 parts2LBSD-3-Clause91
Similar boards
RP2040/RP2350
Open Book Abridged Edition
joeycastillo
85 × 115 mm29 parts2LCC-BY-SA-4.08.1kRP2040/RP2350
Corne
foostan
277.2 × 107.5 mm164 parts2LCC-BY-4.07.7kRP2040/RP2350
Corne
foostan
277.2 × 107.5 mm164 parts2LCC-BY-4.07.7kRP2040/RP2350
LogicAnalyzer
gusmanb
57 × 55.2 mm6 parts2LGPL-3.05.0kRP2040/RP2350
Jitx design
gusmanb
55.5 × 65 mm26 parts4LGPL-3.05.0kRP2040/RP2350
Pro V2
kata0510
290.1 × 130 mm270 parts2LMIT2.3k