Skip to the content
PCBKitNew board
2 layers121.5 × 269.9 mmLab4, the printed circuit board in 3D

Firmware for the STM32 Nucleo-F401RE (Zephyr) and the Raspberry Pi cockpit.

Size
121.5 × 269.9 mm
Copper layers
2
Thickness
1.6 mm
Parts
504
Nets
373
Pads
1,368
Tracks, vias
3,427, 458
Pours
52
Routed
Yes
KiCad
KiCad 10.0 (file 20260206)
Created
23 Sep 2026
Updated
3 Nov 2026

Overview

Lab4 is an open-source printed circuit board by samregardie, from the samregardie/449Project repository on GitHub. It is a 2-layer board of 121.5 × 269.9 mm with 504 parts on 373 nets, routed with 3,427 tracks and 458 vias.

It is built around the SN65HVD230D, WS2812B and CX3225SB16000H0FLJCC, with the ABS25-32.768KHZ-6-T and 6396BG among its other parts. Its parts include 112 capacitors, 112 resistors, 51 diodes, 23 ICs and 10 crystals. It belongs with the STM32 boards of this library.

Main components

5

README

README.md

18-449 Project

Firmware for the STM32 Nucleo-F401RE (Zephyr) and the Raspberry Pi cockpit.

  • lab3/: Lab 3 apps (stm32-front, stm32-rear, pi/proxy_receiver); pins in lab3/pins.md
  • lab2/stm32/: Lab 2 Zephyr app
  • setup449: shell setup script

Lab 3

STM32 nodes

In every new shell, from 449Project/:

sh
source ./setup449

Then, from any folder:

sh
west build-front     # N2, steering
west flash-front
west build-rear      # N3, drivetrain
west flash-rear

Add -p for a clean rebuild (west build-front -p). With both boards plugged in, add the board's serial number: west flash-front --dev-id <serial> (find it with STM32_Programmer_CLI -l st-link), or plug in one board at a time.

Raspberry Pi

sh
cd lab3/pi/proxy_receiver
sudo ./run.sh

It sets up both buses, builds and starts. Enter sends one out-of-range CTRL (bad-input test). Ctrl+C stops it. Watch the buses with candump -c -t d any.

Lab 2

From 449Project/:

sh
west build -p always -b nucleo_f401re lab2/stm32   # full rebuild
west flash
west debugserver                                   # terminal 1
west debug                                         # terminal 2

For debugging, build with optimizations off:

sh
west build -p always -b nucleo_f401re lab2/stm32 -- -DCONFIG_DEBUG_OPTIMIZATIONS=y -DCONFIG_DEBUG_THREAD_INFO=y

Zephyr setup (one time)

This repo sits inside a west workspace:

text
zephyrproject/     ← west workspace (not tracked): .venv/ .west/ zephyr/ modules/
└── 449Project/           ← this repo
  1. Follow the Zephyr getting-started guide to install the host dependencies and the Zephyr SDK.
  2. Install STM32CubeProgrammer (for west flash) and OpenOCD (for west debug; on macOS run brew install openocd).
  3. Create the workspace and clone this repo into it:
    sh
    mkdir zephyrproject && cd zephyrproject
    python3 -m venv .venv
    source .venv/bin/activate
    pip install west
    west init -m https://github.com/zephyrproject-rtos/zephyr .
    west update
    west packages pip --install
    git clone <this-repo-url> 449Project
  4. Check it works: the green LED (LD2) should blink.
    sh
    source ./setup449
    west build -p always -b nucleo_f401re ../zephyr/samples/basic/blinky
    west flash

setup449 must be sourced, not executed. It activates the west venv and the Zephyr environment, and adds the Lab 3 shortcuts.

Parts

504
QtyValueFootprintReferences
350.1uFCapacitor_SMD:C_0603_1608MetricC28, C32, C35, C40, C42, C47, C49, C54, C56, C61, C62, C100, C105, C106, C107, C108 +19
28470Resistor_SMD:R_0603_1608MetricR25, R26, R27, R28, R29, R30, R31, R32, R33, R34, R35, R36, R39, R83, R84, R85 +12
2510kResistor_SMD:R_0603_1608MetricR1, R3, R5, R10, R11, R12, R14, R16, R37, R41, R43, R44, R47, R49, R111, R112 +9
1822uFCapacitor_SMD:C_0805_2012MetricC27, C30, C31, C34, C38, C39, C41, C45, C46, C48, C52, C53, C55, C59, C60, C79 +2
13GNDLibrary:TestPoint_Keystone_5015_Micro_MiniTP56, TP57, TP57, TP57, TP58, TP76, TP77, TP78, TP79, TP80, TP81, TP82, TP83
13WS2812BLED_SMD:LED_WS2812B_PLCC4_5.0x5.0mm_P3.2mmD2, D3, D4, D5, D6, D7, D8, D21, D22, D24, D25, D26, D27
12100nFCapacitor_SMD:C_0603_1608MetricC1, C4, C7, C8, C11, C12, C15, C16, C19, C20, C23, C24
1222pFCapacitor_SMD:C_0603_1608MetricC2, C3, C5, C6, C9, C10, C13, C14, C17, C18, C21, C22
10120Resistor_SMD:R_0603_1608MetricR18, R19, R20, R21, R63, R70, R77, R79, R109, R110
847KResistor_SMD:R_0603_1608MetricR2, R4, R6, R13, R15, R17, R67, R76
84K7Resistor_SMD:R_0603_1608MetricR64, R68, R69, R78, R99, R100, R101, R102
8CX3225SB16000H0FLJCCLibrary:OSCCC320X250X60NY1, Y2, Y3, Y4, Y5, Y6, Y9, Y10
8D_SchottkyDiode_SMD:D_SMBD28, D29, D30, D31, D32, D33, D34, D35
8PinHeader_1x01_P2.54mm_VerticalConnector_PinHeader_2.54mm:PinHeader_1x01_P2.54mm_Vertical37, 39, 40, 43, 44, 44, 45, 45
7510KResistor_SMD:R_0603_1608MetricR23, R38, R45, R51, R57, R72, R75
7POWERLED_SMD:LED_0603_1608MetricD36, D37, D38, D39, D40, D41, D42
610nFCapacitor_SMD:C_0603_1608MetricC33, C36, C43, C50, C57, C81
630pFCapacitor_SMD:C_0603_1608MetricC29, C37, C44, C51, C58, C82
64.7uHInductor_SMD:L_Eaton_SDCHA1V80L4, L5, L6, L7, L8, L9
668kResistor_SMD:R_0603_1608MetricR24, R40, R46, R52, R58, R73
6CANA_Z1Connector_PinHeader_2.54mm:PinHeader_2x02_P2.54mm_VerticalJ10, J11, J12, J13, J14, J15
6MCP2515-xSTPackage_SO:TSSOP-20_4.4x6.5mm_P0.65mmU1, U9, U11, U13, U15, U17
6PGLibrary:TestPoint_Keystone_5015_Micro_MiniTP50, TP51, TP52, TP53, TP54, TP55
6REG_INConnector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalJP20, JP22, JP24, JP26, JP28, JP32
6RXCANLED_SMD:LED_0603_1608MetricD43, D45, D47, D49, D51, D53
6SN65HVD230Package_SO:SOIC-8_3.9x4.9mm_P1.27mmU8, U10, U12, U14, U16, U18
6TPS564252DRLRRegulator:SOT50P160X60-6NIC1, IC2, IC3, IC4, IC5, IC6
6TXCANLED_SMD:LED_0603_1608MetricD44, D46, D48, D50, D52, D54
41000pFCapacitor_SMD:C_0603_1608MetricC75, C76, C103, C104
41KResistor_SMD:R_0603_1608MetricR80, R81, R82, R86
41uFCapacitor_SMD:C_0603_1608MetricC72, C74, C97, C99
42N7002Package_TO_SOT_SMD:SOT-23Q1, Q3, Q4, Q5
44.3pFCapacitor_SMD:C_0603_1608MetricC65, C66, C68, C69
44.7uFCapacitor_SMD:C_0805_2012MetricC67, C71, C101, C102
47pFCapacitor_SMD:C_0603_1608MetricC109, C110, C111, C112
4?Resistor_SMD:R_0603_1608MetricR103, R104, R105, R106
4TERMConnector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalJP1, JP9, JP11, JP19
345kResistor_SMD:R_0603_1608MetricR22, R42, R48
3470 uFLibrary:CP_Elec_8x11.9_A768C25, C26, C86
3DEGRADED_ALED_SMD:LED_0603_1608MetricD9, D14, D19
3DEGRADED_BLED_SMD:LED_0603_1608MetricD10, D15, D20
3DEG_ALibrary:TestPoint_Keystone_5015_Micro_MiniTP66, TP67, TP72
3DEG_BLibrary:TestPoint_Keystone_5015_Micro_MiniTP65, TP68, TP73
3ERRLibrary:TestPoint_Keystone_5015_Micro_MiniTP61, TP71, TP74
3ERRORLED_SMD:LED_0603_1608MetricD13, D18, D23
3SolderJumper_2_BridgedJumper:SolderJumper-2_P1.3mm_Bridged_RoundedPad1.0x1.5mmJP4, JP5, JP6
3TESTSWT0210_045026GSA:SW_SWT0210-045026GSA_REVAS1, S4, S5
21MΩResistor_SMD:R_0603_1608MetricR9, R108
2220kResistor_SMD:R_0603_1608MetricR54, R60
230kResistor_SMD:R_0603_1608MetricR55, R61
23MΩResistor_SMD:R_0603_1608MetricR8, R107
2ABS25-32.768KHZ-6-TABS25_32_768KHZ_6_T:XTAL_ABS25-32.768KHZ-6-TY7, Y8
2ACS712xLCTR-05BPackage_SO:SOIC-8_3.9x4.9mm_P1.27mmU2, U4
2BEADInductor_SMD:L_0603_1608MetricFB1, FB2
2BUZZERPS1240P02BT:XDCR_PS1240P02BTLS1, LS2
2CAN_TX_ALibrary:TestPoint_Keystone_5015_Micro_MiniTP3, TP16
2CAN_TX_BLibrary:TestPoint_Keystone_5015_Micro_MiniTP4, TP17
2Conn_01x03_PinConnector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_VerticalJ16, J17
2RESETSWT0210_045026GSA:SW_SWT0210-045026GSA_REVAS2, S3
2STM32F401RETxPackage_QFP:LQFP-64_10x10mm_P0.5mmU3, U7
2STM_POWERConnector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalJP31, JP34
2SolderJumper_2_OpenJumper:SolderJumper-2_P1.3mm_Open_RoundedPad1.0x1.5mmJP7, JP8
2SolderJumper_3_Bridged12Jumper:SolderJumper-3_P1.3mm_Bridged12_RoundedPad1.0x1.5mm_NumberLabelsJP10, JP12
2V_BATT_SENSELibrary:TestPoint_Keystone_5015_Micro_MiniTP31, TP32
112V_INLibrary:TestPoint_Keystone_5015_Micro_MiniTP10
115VDiode_SMD:D_SOD-123D1
120mResistor_SMD:R_1206_3216MetricR71
13.3 SouceJumper:SolderJumper-3_P1.3mm_Bridged12_RoundedPad1.0x1.5mm_NumberLabelsJP2
13557-23557_2:FUSE_3557-2F2
16396BGLibrary:HSINK_6396BGHS1
1AP7361EA-SPR-13Library:AP7361EA_SO-8EP_DiodesU6
1Barrel_JackConnector_BarrelJack:BarrelJack_HorizontalJ18
1CAN_RX_ALibrary:TestPoint_Keystone_5015_Micro_MiniTP19
1CAN_RX_BLibrary:TestPoint_Keystone_5015_Micro_MiniTP18
1CMD_TXLibrary:TestPoint_Keystone_5015_Micro_MiniTP2
1CURR_PRELibrary:TestPoint_Keystone_5015_Micro_MiniTP47
1CUR_POSTLibrary:TestPoint_Keystone_5015_Micro_MiniTP75
1DIR_ALibrary:TestPoint_Keystone_5015_Micro_MiniTP59
1FLLibrary:TestPoint_Keystone_5015_Micro_MiniTP70
1FL_BLINKERLED_THT:LED_D3.0mmD12

The 408 most common of 504 parts.

Questions

How big is the Lab4 PCB?

It measures 121.5 × 269.9 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Lab4 use?

504 parts, built around the SN65HVD230D, WS2812B, CX3225SB16000H0FLJCC and ABS25-32.768KHZ-6-T. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the Lab4 KiCad files?

From the samregardie/449Project repository on GitHub, at the commit this page was made from: the board is lab4/Schematic/Schematic.kicad_pcb and its schematic lab2/Schematic/Schematic.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Lab4 design in my own project?

Its repository states no licence, so its author keeps all rights: ask samregardie before reusing the design.

Similar boards

  • 4 layers118 × 250 mmPcb lab, the printed circuit board in 3D

    Pcb lab

    y-watal/pcb_lab

    285 parts
  • 4 layers203.2 × 101.6 mmLboard2, the printed circuit board in 3D

    Lboard2

    electrodyssey/lboard2

    experimental Spartan-6 sound processing board with XC6SLX9-TQG144 and TLV320AIC3204

    230 parts7LGPL-3.0
  • 4 layers159.6 × 100 mmTemplate Board, the printed circuit board in 3D

    Template Board

    devtank-ltd/kicad_hiltop_board_template

    HILTOP Reference design template for new plug-in test modules/cards

    128 parts2
  • 4 layers80 × 55 mmPicknplacepcbV3, the printed circuit board in 3D

    PicknplacepcbV3

    caleboblepias/precision-gantry-control-system

    This project implements the embedded control backbone of an automated pick and place operations. The system centers on a custom STM32F103RB-based PCB running bare-metal firmware for precise motion control of stepper and…

    52 partsMIT
  • 4 layers159.1 × 99.9 mmLoTI Board, the printed circuit board in 3D

    LoTI Board

    devtank-ltd/kicad_hiltop_loti_board

    KiCAD files for Loti card for HILTOP

    452 parts
  • 4 layers159.9 × 99.9 mmMoto board, the printed circuit board in 3D

    Moto board

    devtank-ltd/kicad_hiltop_moto_board

    KiCAD files for Moto card for HILTOP

    213 parts