Skip to the content
PCBKitNew board
2 layers60 × 24 mmRoboCore LineSensor, the printed circuit board in 3D

RoboCore is a classroom robot kit and coding platform, designed and built in Zambia by Plastal-Bot Builders (Lusaka).

Size
60 × 24 mm
Copper layers
2
Thickness
1.6 mm
Parts
25
Nets
16
Pads
80
Tracks, vias
187, 51
Pours
2
Routed
Yes
KiCad
KiCad 10.0 (file 20260206)
Created
12 Oct 2026
Updated
7 Nov 2026

Overview

RoboCore LineSensor is an open-source printed circuit board by Plastal-Bot-Builders, from the Plastal-Bot-Builders/RoboCoreDocumentation repository on GitHub, published under the MIT licence. It is a 2-layer board of 60 × 24 mm with 25 parts on 16 nets, routed with 187 tracks and 51 vias.

It is built around the TCRT5000 and LM339. Its parts include 11 resistors, 4 capacitors, 4 ICs, 3 diodes and 1 connector.

Main components

2

README

README.md

RoboCore Zambia: Build. Code. Create. The robot kit and coding app for young makers.

RoboCore

RoboCore is a classroom robot kit and coding platform, designed and built in Zambia by Plastal-Bot Builders (Lusaka). It has four parts:

  • an ESP32-S3 controller board;
  • a 3D-printed robot with a parallel lift and a geared gripper;
  • a retail box with a quick-start guide;
  • the RoboCore IDE, where students code the robot with blocks or C++.

This repository holds the design sources for all of it: the PCBs, the mechanical design, the software design and the brand. Pitch decks, grant applications and community posts live elsewhere.

The RoboCore robot: navy frame, yellow lift and gripper, V-wheelsThe RoboCore V2 controller board
The robot (V2, Fusion 360)The controller board (V2, KiCad 9)

The controller board (V2)

An XRP-style robot controller on a 68 × 60 mm, 4-layer board. Everything a classroom robot needs is on one board, and it charges and programs over one USB-C cable.

BrainESP32-S3-WROOM-1-N8R2: dual core, Wi-Fi and Bluetooth LE, 8 MB flash, 2 MB PSRAM. Programs over native USB, so no separate programmer is needed
Motors2 DC motors with encoders (DRV8411A dual H-bridge, limited to 1.0 A per motor). JST SH 6-pin, matching the SparkFun XRP motors
Servos4 servo ports on a 5.5 V supply (TPS61089 boost, about 2.5–3 A continuous)
SensorsUltrasonic port (4-pin), 3-channel line-sensor port (5-pin, analog), Qwiic I2C, and an LSM6DSOX 6-axis motion sensor on board
PowerOne Li-ion cell, or several in parallel (3.0–4.2 V), on an XT30 plug. Protected against a reversed or over-voltage pack. USB-C charging at 1 A (MCP73871) and a steady 3.3 V from a buck-boost converter
On boardRGB LED, buzzer, RESET, BOOT and USER buttons, charge and power LEDs, two 14-pin expansion headers
Top of the controller boardUnderside: Designed in Zambia artwork
Top: every port labelled on the silkscreenUnderside: pin names and the "Designed in Zambia" artwork
Close-up of the ESP32-S3 moduleThe connector edge: sensor headers, XT30, USB-C, power switch
The ESP32-S3 module, buttons and IMUThe connector edge: ultrasonic, battery, USB-C, line sensor, power switch
  • Design files: hardware/controller_v2/. Open RoboCore_V2.kicad_pro in KiCad 9.
  • Renders: studio renders made in Blender are in hardware/controller_v2/renders/, full size and 1600 px, with transparent and white backgrounds. Each shot has a map of where every part sits in the image, for pinouts and highlights in the IDE or on the website. See its README.
  • Before connecting anything: the sensor headers are not keyed, so a cable can go on backwards. Read the wrong-plug check. Known issues and bring-up findings are kept in the errata list.
  • Sensor boards: our own 3-channel line sensor and ultrasonic boards are designed in hardware/sensors/. For now the robot uses bought-in modules.

The robot

The current robot (V3, the V-wheel version): an open printed frame with Warren-truss sides, two encoder motors with 56 mm wheels, four V-wheels in wheel wells, a parallel four-bar lift on one MG90S servo (the gripper stays level from the floor to +40 degrees) and a geared gripper on a second servo. The RoboCore V2 controller sits between the side frames, three 18650 cells lie in a printed cradle, the sonar sits in a housing at the front, and a cream rear deck carries an 8 mm Technic/M4 hole grid. 154 x 286 x 111 mm with the lift level, about 620 g; every part prints flat without supports. The V3 model lives in Fusion 360 (document "RoboCore V3 Robot"); the files below are the earlier V2 robot, kept for reference.

Lift poses: floor, carry and up

  • Model: mechanical/robot_v2/RoboCore_V2_Robot.f3d (Fusion 360) and .step (any CAD program).
  • Generator: the model is built by a Python generator through the Fusion API (mechanical/robot_v2/fusion/). Its README explains the parameters, the fasteners and the checks: clashes, overhangs, antenna clearance and caster load.
  • Print files: mechanical/robot_v2/print/, already in print orientation. Every part prints without supports on a 180 mm bed.
  • Cardboard version: a low-cost cardboard chassis template is in mechanical/robot_v2/cardboard/.

The box

The RoboCore mailer box, closedThe box open: quick-start guide and the insert shaped to the robot

A printed mailer box, XRP-style, with the quick-start guide printed inside the lid and an insert with a pocket traced from the robot (lift lowered, jaws on the floor) plus a strip for the cable, screws and card. Outer 303 x 213 x 91 mm. The print-ready 1:1 PDFs are in mechanical/robot_v2/packaging/out_v3/ (generator make_box_v3.py; the V2 box is in out/).

Software

  • RoboCore IDE design (software/ide_design/): the screens of the RoboCore IDE, built in Figma by a plugin. It covers block coding (Google Blockly) and C++ (Monaco), a hardware-first block catalogue, and a behaviour spec. The app itself is developed in its own repository, robocore-ide.
  • System architecture (software/architecture/): UML and C4 diagrams of the whole platform, also generated into Figma.
  • Firmware (software/firmware/motion/): an arm-aware braking limiter in C, with tests.

Brand

A5 flyerRoll-up bannerBrand kit: renders

Event branding is in design/event_branding/: roll-up, pop-up, banner, A5 flyer, A4 tri-fold and the brand kit, built in Figma by a plugin. The topographic backgrounds are drawn from Copperbelt elevation data.


Repository layout

text
hardware/          PCB design (KiCad 9)
  controller_v2/     RoboCore V2 controller: project files, libraries (lib/), PCBWay and JLCPCB order
                     packages (fab/), generator, check, costing and Blender render scripts (tools/),
                     silkscreen artwork sources (technicalreference/), studio renders (renders/)
  sensors/           Line sensor (3-channel) and ultrasonic carrier boards for V2
  controller_v1/     RoboCore V1 (ESP32-C3) controller with its fab package and review scripts
  libraries/         Shared symbol and footprint libraries used by V1
  datasheets/        Component datasheets
mechanical/        Mechanical design
  robot_v2/          The Fusion 360 robot: model, Python generator (fusion/), print files (print/),
                     component STEP exports (export/), mailer box (packaging/), cardboard version
                     (cardboard/), vendor models (vendor/), renders
  board_step/        STEP models of the boards, for mechanical integration
  reference/         Motor and XRP reference pictures and models
  chassis_v1_spec/   Specification and script of the V1 chassis
software/          Software
  ide_design/        RoboCore IDE screens (Figma plugin), app icon, block catalogue, behaviour spec
  architecture/      UML + C4 system architecture (Figma plugin)
  firmware/motion/   Arm-aware braking limiter (C, with tests)
design/            Brand
  event_branding/    Roll-up, banner, flyer, tri-fold and brand kit (Figma plugin), topographic maps
docs/              Specification, costing and sourcing, component lists and supplier quote requests,
                   wrong-plug check and errata, schematic PDFs, part photos, A4 technical-reference
                   posters, progress renders, hand-off notes, PCBWay sponsorship request
tools/             sync_from_sources.sh: copies the working sources into this repo

Opening the designs

  • PCB: open hardware/controller_v2/RoboCore_V2.kicad_pro in KiCad 9. Project libraries resolve through ${KIPRJMOD}/lib; the V1 project's symbol table points at ../libraries.
  • Robot: mechanical/robot_v2/RoboCore_V2_Robot.f3d opens in Fusion 360; the STEP beside it opens anywhere.
  • Box: mechanical/robot_v2/packaging/README.md. The print files are 1:1 PDFs.
  • Board renders: hardware/controller_v2/tools/blender/render_board.sh re-renders them in Blender 5.1, from the KiCad model.
  • Figma plugins: the READMEs in software/ide_design/, software/architecture/ and design/event_branding/ explain how to load and run each plugin.

Status (2026-10-23)

  • Controller V2: two assembled prototypes are paid for at PCBWay (order YU1827457, 14 October) and expected to ship around 11 November. Bring-up findings will go into the errata list.
  • Robot: rev 6. The model and STEP here are Fusion v33.
  • Sensor boards: designed, not yet ordered. The robot uses bought-in modules for now.
  • IDE: in development in robocore-ide.
  • Parts: the component list and supplier quote request for two robots are in docs/.

Keeping this repo up to date

The design work happens in working folders outside this repo. Copy it in, then commit:

bash
tools/sync_from_sources.sh           # list what changed
tools/sync_from_sources.sh --apply   # copy it in

The script lists every source folder it copies. On a slow connection, push large changes in several small commits.

Licence

MIT, see LICENSE. Vendor models under mechanical/robot_v2/vendor/ keep their own licences, noted in each folder's SOURCE.txt.

Parts

25
QtyValueFootprintReferences
30.1uFCapacitor_SMD:C_0603_1608MetricC2, C3, C4
310kResistor_SMD:R_0603_1608MetricR2, R4, R6
3150Resistor_SMD:R_0603_1608MetricR1, R3, R5
3680Resistor_SMD:R_0603_1608MetricR9, R10, R11
3GREENLED_SMD:LED_0603_1608MetricD1, D2, D3
3TCRT5000OptoDevice:Vishay_TCRT5000U1, U2, U3
2100kResistor_SMD:R_0603_1608MetricR7, R8
2M3MountingHole:MountingHole_3.2mm_M3H1, H2
110uFCapacitor_SMD:C_0805_2012MetricC1
1LINE_SENSORConnector_JST:JST_SH_BM05B-SRSS-TB_1x05-1MP_P1.00mm_VerticalJ1
1LM339Package_SO:SOIC-14_3.9x8.7mm_P1.27mmU4

Questions

How big is the RoboCore LineSensor PCB?

It measures 60 × 24 mm and has 2 copper layers, 1.6 mm thick.

What parts does the RoboCore LineSensor use?

25 parts, built around the TCRT5000 and LM339. 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 RoboCore LineSensor KiCad files?

From the Plastal-Bot-Builders/RoboCoreDocumentation repository on GitHub, at the commit this page was made from: the board is hardware/sensors/line_sensor/RoboCore_LineSensor.kicad_pcb and its schematic hardware/controller_v1/Buttons.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the RoboCore LineSensor design in my own project?

Its repository publishes it under the MIT licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).

More from Plastal-Bot-Builders/RoboCoreDocumentation

3
  • 4 layers68 × 60 mmRoboCore V2, the printed circuit board in 3D

    RoboCore V2

    Plastal-Bot-Builders/RoboCoreDocumentation

    RoboCore is a classroom robot kit and coding platform, designed and built in Zambia by Plastal-Bot Builders (Lusaka).

    146 partsMIT
  • 4 layers68 × 60 mmRoboCore, the printed circuit board in 3D

    RoboCore

    Plastal-Bot-Builders/RoboCoreDocumentation

    RoboCore is a classroom robot kit and coding platform, designed and built in Zambia by Plastal-Bot Builders (Lusaka).

    104 partsMIT
  • 2 layers46 × 22 mmRoboCore Ultrasonic, the printed circuit board in 3D

    RoboCore Ultrasonic

    Plastal-Bot-Builders/RoboCoreDocumentation

    RoboCore is a classroom robot kit and coding platform, designed and built in Zambia by Plastal-Bot Builders (Lusaka).

    19 partsMIT

Similar boards

  • 2 layers200 × 78.8 mmOpenridingcontroller rev2, the printed circuit board in 3D

    Openridingcontroller rev2

    Squalius-cephalus/OpenRidingController

    D.I.Y horse riding controller for the PC.

    30 parts13
  • 2 layers66.4 × 52.5 mmWatermeter v0.4, the printed circuit board in 3D

    Watermeter v0.4

    rbisschops/mySensors

    mySensors

    39 parts6
  • 2 layers135.8 × 56.1 mmPower board, the printed circuit board in 3D

    Power board

    xtarke/automated_buggy

    This shield connects microcontroller (MSP-EXP430FR2355) pins to the car's power board. Go to Power Board for more hardware information.

    87 parts5GPL-3.0
  • 2 layers160 × 42 mmESP kicad2, the printed circuit board in 3D

    ESP kicad2

    Amrlxyz/esp-lfr-buggy

    2nd Year Embedded Systems Project (ESP) - Line Following Robot Buggy

    28 parts4
  • 2 layers34.1 × 108.8 mmMeshmerize, the printed circuit board in 3D

    Meshmerize

    ChinmayLonkar/MAZEBLAZE

    Meshmerize BOT

    62 parts3
  • 2 layers103 × 80 mmEduRoMAA EduCIAA, the printed circuit board in 3D

    EduRoMAA EduCIAA

    ciiiutnfrc/eduromaa

    Versión educativa del robot móvil RoMAA (EduRoMAA)

    81 parts3GPL-3.0
  • 2 layers150 × 100 mmMaze kiCad, the printed circuit board in 3D

    Maze kiCad

    billtsol/Maze

    This project demonstrates how to use an Arduino board, IR sensors, and a motor driver shield to create a maze-solving robot.

    39 parts2
  • 2 layers134.4 × 99.6 mmLine sensor, the printed circuit board in 3D

    Line sensor

    Potato-eater/Legacy2026

    github repo for Robocup Junior Australia lightweight soccer team

    79 parts2