Skip to the content
2 layers108.7 × 63.5 mmRaspiCar, the printed circuit board in 3D

A model car equipped with a Raspberry Pi, intended for experimenting with tools and algorithms for autonomous navigation

Size
108.7 × 63.5 mm
Copper layers
2
Thickness
1.6 mm
Parts
71
Nets
94
Pads
278
Tracks, vias
981, 132
Pours
8
Routed
Yes
KiCad
KiCad 7 (file 20221018)
Created
19 Oct 2022
Updated
21 Jul 2026

Overview

RaspiCar is an open-source printed circuit board by phaenovum, from the phaenovum/RaspiCar repository on GitHub. It is a 2-layer board of 108.7 × 63.5 mm with 71 parts on 94 nets, routed with 981 tracks and 132 vias.

It is built around the LM2576T-ADJ, TL431 and A4988, with the BC547, IRF5305PBF and IRLML2244 among its other parts. Its parts include 23 resistors, 14 capacitors, 10 connectors, 5 diodes and 4 transistors. It belongs with the RP2040 boards of this library.

Main components

6

README

README.md

RaspiCar

A model car equipped with a Raspberry Pi, intended for experimenting with tools and algorithms for autonomous navigation

This is a simple platform for experimenting. At this stage clearly work in progress ...

The car is based on two stepper motors for the left and right driving wheel. In addition there is a free spinning wheel in the front. Driving direction is controlled by different speed settings for the motors. The car is capable of turning on the spot. Power is provided a by a LiPo battery of 3 cells.

Raspberry Pi:

The Raspberry Pi provides navigation and overall management of the car. The navigations is based on the various sensors. The software is written primarily in Python. Prototype software is avaiable to support ultrasonic sensors, LiDAR, camera and a NRF24 module for remote control. There are also experiments with machine learning alogrithms (SciKit Learn). More to be developed and to follow.

Python files:

  • io_ctrl.py - This module defines the I/Os for the Raspberry Pi and a tool to send commands to the motor driver via a serial interface
  • much more to come ...

Motor Driver:

In addition to the Raspberry Pi, there is a board comprising a 5V step down converter, a rp2040 microcontroller, a LCD and adapters for various devices such as LiDAR, distance sensors and more. The rp2040 generates the step and direction signals for the stepper motors, with this releasing the real time workload from the Raspberry Pi. The rp2040 interfaces with the Raspberry Pi via a serial interface running at115200 baud. The rp2040 also takes care of power management by raising a shutdown signal in case the battery voltage is running low. The software for the rp2040 is based on Arduino/C++

Arduino files for the motor driver:

  • rp2040_motor_driver.ino: main program
  • motors.cpp, motors.h: class to run the stepper motors
  • display.cpp, display.h: class to run the display
  • battery.cpp, battery.h: class to provide battery and power management

List of motor commands: The Raspberry Pi sends commands via the serial interface and receives responses. This can easily by tested via a standard terminal tool (e.g. PUTTY).

  • ME0,0 / ME1,1 - disables or enables motor A and B
  • MP0,0 / MP1,1 - switches motor A and B on or off
  • MD0,0 / MD1,1 - sets the direction of the motor (1 -> forward, 0 -> backward)
  • MR, - sets the speed of the motors in rounds per minute. The range is 0 to 1500. Example: "MR200,500"
  • DC - clears the display (title and message)
  • DT - prints a title of up to 0 characters on line 1 of the display (maximum 20 characters)
  • DM - prints a message of up to 40 character on line 2 and 3 of the display
  • BV - returns the current battery voltage
  • BS - returns the battery voltage and the system status, separated by comma

List of system status:

  • 0 - STATUS_OK 'OK' - all fine
  • 1 - STATUS_BAT_LOW 'BL' - Battery low, voltage below 10.5V
  • 2 - STATUS_BAT_SHUTDOWN 'BS' - Battery very low, shutdown requested due to low power, waiting for Raspi to respond
  • 3 - STATUS_BAT_EXTERNAL 'BE - System running on 5V external power
  • 4 - STATUS_SHUTDOWN_REQUESTED 'SR' - Shutdwon requested by user, waiting for Raspi to respond
  • 5 - STATUS_SHUTDOWN_ACTIVE 'SX' - Shutdown in progress, power will be shut in less than 10 secs

SLW October 2022

Parts

71
QtyValueFootprintReferences
4470uFCapacitor_THT:CP_Radial_D8.0mm_P3.50mmC2, C6, C7, C11
44k7Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR5, R10, R11, R19
3100nCapacitor_THT:C_Disc_D3.4mm_W2.1mm_P2.50mmC4, C8, C14
310kResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR8, R9, R16
2100kResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR7, R15
2100nFCapacitor_THT:C_Disc_D3.4mm_W2.1mm_P2.50mmC3, C9
2150Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P2.54mm_VerticalR12, R13
21N5822Diode_THT:D_DO-201AE_P3.81mm_Vertical_KathodeUpD1, D2
222kResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR4, R18
2330Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR3, R17
247uFCapacitor_THT:CP_Radial_D6.3mm_P2.50mmC12, C13
2A4988Module:Pololu_Breakout-16_15.2x20.3mmA1, A2
1100uFCapacitor_THT:CP_Radial_D6.3mm_P2.50mmC5
110kSLW-Footprints:R-Trim_horizontalRV1
110k, 1%Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR1
1150Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR14
11MResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR6
11k2Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P2.54mm_VerticalR23
11nFCapacitor_THT:C_Disc_D3.4mm_W2.1mm_P2.50mmC15
1220Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR20
13k9Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P2.54mm_VerticalR22
14,7Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P2.54mm_VerticalR21
1470uCapacitor_THT:CP_Radial_D8.0mm_P3.50mmC1
14k7, 1%Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR2
1A MS1Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalJP1
1A MS2Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalJP4
1B MS1Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalJP3
1B MS2Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalJP2
1BC547Package_TO_SOT_THT:TO-92_HandSolderQ4
1BC549Package_TO_SOT_THT:TO-92_HandSolderQ1
1Dual LEDSLW-Footprints:LED_D3.0mm-3-center-kathodeD4
1GreenLED_THT:LED_D3.0mmD5
1I2CConnector_PinHeader_2.54mm:PinHeader_1x04_P2.54mm_VerticalJ8
1IRF5305Package_TO_SOT_THT:TO-220-3_VerticalQ3
1IRLML2244Package_TO_SOT_SMD:SOT-23Q2
1L-PISRSLW-Footprints:L-PISR-100L1
1LCDConnector_PinHeader_2.54mm:PinHeader_1x04_P2.54mm_VerticalJ7
1LM2576T-ADJSLW-Footprints:TO-220-5_Vertical_tiny_heatsinkU1
1LiDARConnector_PinHeader_2.54mm:PinHeader_1x04_P2.54mm_VerticalJ6
1Motor LeftConnector_PinHeader_2.54mm:PinHeader_1x04_P2.54mm_VerticalJ3
1Motor RightConnector_PinHeader_2.54mm:PinHeader_1x04_P2.54mm_VerticalJ4
1Mount_1MountingHole:MountingHole_3.2mm_M3_DIN965_PadMount_1
1Mount_2MountingHole:MountingHole_3.2mm_M3_DIN965_PadMount_2
1PicoSLW-Footprints:Raspi_RP2040U2
1PowerDownSLW-Footprints:SW_PUSH_6mm_H5mmSW2
1PowerONSLW-Footprints:SW_PUSH_6mm_H5mmSW1
1PowerSupplySLW-Footprints:ScrewTerminal_1x4J1
1RaspiConnector_PinHeader_2.54mm:PinHeader_2x20_P2.54mm_VerticalJ2
1RedLED_THT:LED_D3.0mmD3
1SPIConnector_PinHeader_2.54mm:PinHeader_1x06_P2.54mm_VerticalJ5
1SerConnector_PinHeader_2.54mm:PinHeader_1x04_P2.54mm_VerticalJ10
1TL431Package_TO_SOT_THT:TO-92_HandSolderU3
1VccConnector_PinHeader_2.54mm:PinHeader_1x04_P2.54mm_VerticalJ9

Similar boards

  • 2 layers100 × 100 mmWhiteBoy, the printed circuit board in 3D

    WhiteBoy

    nodep/NovaBox

    Circuit and PCB design of simple Bluetooth stereo receiver and amplifier

    111 parts11GPL-3.0
  • 2 layers110 × 100 mmLab Bench PSU, the printed circuit board in 3D

    Lab Bench PSU

    BojanSof/Lab-Bench-PSU

    Laboratory bench power supply with switching preregulator and LDO.

    84 parts1
  • 2 layers74.7 × 69.1 mmThrottle tune, the printed circuit board in 3D

    Throttle tune

    Jonny999999/throttle-tune

    onversion of an old gasoline lawn tractor to an electric vehicle

    51 parts
  • 2 layers81 × 81 mmBMS, the printed circuit board in 3D

    BMS

    jeevv/Rover-2025

    71 parts
  • 6 layers168.7 × 106.5 mmSCREEN VERSION 1.2, the printed circuit board in 3D

    SCREEN VERSION 1.2

    Lucasmnascimento94/Smart-Shower

    This is an extended version of the project I made for my computer arquitecture class.

    155 parts
  • 4 layers100 × 100 mmPayloadPcbRev3, the printed circuit board in 3D

    PayloadPcbRev3

    MSzalawiga/Payload-Control-Board

    Science Payload Control Board for Queen's Space Engineering Team

    55 partsMIT
  • 2 layers45 × 45 mmZappy, the printed circuit board in 3D

    Zappy

    USSTRocketry/hardware

    15 parts1MIT

Questions

How big is the RaspiCar PCB?

It measures 108.7 × 63.5 mm and has 2 copper layers, 1.6 mm thick.

What parts does the RaspiCar use?

71 parts, built around the LM2576T-ADJ, TL431, A4988 and BC547. 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 RaspiCar KiCad files?

From the phaenovum/RaspiCar repository on GitHub, at the commit this page was made from: the board is RaspiCar-Interface-Board/RasPiCar-KiCAD-v1.2/RasPi-Car.kicad_pcb and its schematic RaspiCar-Interface-Board/RasPiCar-KiCAD-v1.2/RasPi-Car.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the RaspiCar design in my own project?

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