Skip to the content
4 layers80 × 87.6 mmAratMicro, the printed circuit board in 3D

High-performance, open-source micromouse robot platform built for Robosam and MEB Robot (Ministry of National Education Robotics Competition, Turkey).

Size
80 × 87.6 mm
Copper layers
4
Thickness
1.6 mm
Parts
110
Nets
93
Pads
369
Tracks, vias
101, 11
Routed
Yes
KiCad
KiCad 10.0 (file 20260206)
Created
6 Aug 2026
Updated
28 Aug 2026

Overview

AratMicro is an open-source printed circuit board by vorlaxen-labs, from the vorlaxen-labs/AratMicro repository on GitHub, published under the MIT licence. It is a 4-layer board of 80 × 87.6 mm with 110 parts on 93 nets, routed with 101 tracks and 11 vias.

It is built around the STM32F411CEU6, AP63203WU and DRV8833PWP, with the QRE1113, LSM6DS3 and PCA9554PW among its other parts. Its parts include 35 resistors, 31 capacitors, 10 diodes, 7 ICs and 7 transistors. It belongs with the robots and motor control boards and the STM32 boards of this library.

Main components

12

README

README.md

AratMicro

High-performance, open-source micromouse robot platform built for Robosam and MEB Robot (Ministry of National Education Robotics Competition, Turkey).

AratMicro is a competition-focused maze-solving robot with a custom PCB, wall-detection sensors, dual-encoder drive, and STM32F411-based firmware. Hardware and software are developed together; all design files are shared in this repository.

Competition target

This robot is designed to meet the maze-solving requirements of:

  • Robosam — national robotics competition (micromouse / labyrinth category)
  • MEB Robot — Ministry of National Education (MEB) robotics competition for schools

The mechanical dimensions, sensor layout, and control architecture are tuned for fast, reliable maze exploration and shortest-path solving under competition rules.

Features

AreaDetail
MCUSTM32F411CEU6 — Cortex-M4 @ 100 MHz, 512 KB Flash, 128 KB RAM
Motor driverDRV8833 — dual-channel H-bridge
Wall sensors4× IR receivers + 4× IR LEDs (front left/right, left, right)
Maze solverFlood fill (16×16 grid)
Position feedbackLeft/right quadrature encoders (L_ENC_A/B, R_ENC_A/B)
I/O expansionPCF8574AP — I2C GPIO expander
Power2S LiPo → AP63203WU buck (3.3 V logic), separate motor rail
ProgrammingST-Link SWD (PA13/PA14), optional UART Bluetooth
FirmwarePlatformIO + Arduino framework, C++17

Mechanical (target parts)

PartSizeNotes
Motor40 × 12 × 17 mm3 mm D-shaft
Wheel32 × 7 mm3 mm D-shaft

Mechanical CAD files are not yet included. Dimensions were chosen to match the PCB and drivetrain layout.

Repository layout

text
AratMicro/
├── hardware/
│   └── pcb/          # KiCad 10 schematics and PCB (AratMicro.kicad_pro)
├── software/
│   ├── src/          # Firmware source code
│   ├── include/      # Public API headers
│   ├── lib/          # PlatformIO module libraries
│   ├── test/         # Host-side unit tests (Unity)
│   ├── docs/         # Architecture and hardware reference
│   └── platformio.ini
├── LICENSE
└── CONTRIBUTING.md

Quick start

Requirements

  • PlatformIO (VS Code extension or CLI)
  • ST-Link V2 (or compatible programmer)
  • KiCad 10.x (for hardware edits)

Build and upload firmware

bash
cd software
pio run -e aratmicro_f411
pio run -e aratmicro_f411 -t upload

Host tests

Algorithms and core logic can be tested on the host:

bash
cd software
pio test -e native

Hardware

KiCad project: hardware/pcb/AratMicro.kicad_pro

Schematic sub-sheets:

SheetFileContents
Power Supplypower_supply.kicad_sch2S LiPo input, buck, protection
MCUmcu.kicad_schSTM32F411, clocks, SWD, I/O
Motor Controllermc.kicad_schDRV8833 motor driver
Sensor Unitsu.kicad_schIR wall-detection circuit

Full BOM and signal list: hardware/README.md

Software architecture

Firmware is organized in layers:

  • core — Hardware-independent application lifecycle
  • platform — Time and pin abstractions
  • lib/ — Motor, IMU, maze solver modules (planned)

Details: software/docs/architecture.md

Status

ComponentStatus
PCB schematicActive development
PCB layoutActive development
Firmware skeletonAvailable
Motor driver codePlanned
Wall sensor codePlanned
Maze solver (flood fill)Available (host-tested)
Mechanical CADPlanned

Contributing

Contributions are welcome. Please read CONTRIBUTING.md.

License

This project is released under the MIT License — hardware and software may be used, modified, and shared freely.

Parts

110
QtyValueFootprintReferences
13100nFCapacitor_SMD:C_0805_2012Metric_Pad1.18x1.45mm_HandSolderC5, C9, C17, C21, C25, C26, C27, C28, C30, C33, C34, C35, C36
710KResistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR8, R17, R20, R29, R31, R34, R36
52.2KResistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR7, R37, R38, R39, R40
54.7KResistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR9, R41, R42, R43, R44
5LEDLED_SMD:LED_0805_2012Metric_Pad1.15x1.40mm_HandSolderD3, D4, D5, D6, D7
41KResistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR11, R12, R13, R14
422OhmResistor_SMD:R_1206_3216Metric_Pad1.30x1.75mm_HandSolderR21, R22, R23, R30
4SFH4545LED_THT:LED_D5.0mm_Horizontal_O1.27mm_Z15.0mmD9, D10, D11, D12
4TEFT4300LED_THT:LED_D3.0mm_IRBlackQ4, Q5, Q6, Q7
322uFCapacitor_SMD:C_1206_3216Metric_Pad1.33x1.80mm_HandSolderC3, C7, C8
20.1uFCapacitor_SMD:C_0603_1608Metric_Pad1.08x0.95mm_HandSolderC24, C29
20.22OhmResistor_SMD:R_1206_3216Metric_Pad1.30x1.75mm_HandSolderR15, R16
2100OhmResistor_SMD:R_1206_3216Metric_Pad1.30x1.75mm_HandSolderR26, R27
2100OhmResistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR28, R35
215pFCapacitor_SMD:C_0603_1608Metric_Pad1.08x0.95mm_HandSolderC39, C40
222pFCapacitor_SMD:C_0603_1608Metric_Pad1.08x0.95mm_HandSolderC37, C38
24.7uFCapacitor_SMD:C_0805_2012Metric_Pad1.18x1.45mm_HandSolderC10, C11
2Conn_01x06Connector_PinHeader_2.54mm:PinHeader_1x06_P2.54mm_VerticalJ3, J4
2QRE1113OptoDevice:OnSemi_CASE100AQU4, U5
2SI2302DSPackage_TO_SOT_SMD:SOT-23Q1, Q2
2SW_PushButton_Switch_SMD:SW_SPST_B3U-3000PSW4, SW5
10OhmResistor_SMD:R_1206_3216Metric_Pad1.30x1.75mm_HandSolderR6
1100uFCapacitor_SMD:C_1206_3216Metric_Pad1.33x1.80mm_HandSolderC4
110nFCapacitor_SMD:C_0603_1608Metric_Pad1.08x0.95mm_HandSolderC22
110uFCapacitor_SMD:C_1206_3216Metric_Pad1.33x1.80mm_HandSolderC2
110uFCapacitor_SMD:C_0603_1608Metric_Pad1.08x0.95mm_HandSolderC32
11812L260/16Fuse:Fuse_1812_4532MetricF1
11nFResistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderC6
11uFCapacitor_SMD:C_0805_2012Metric_Pad1.18x1.45mm_HandSolderC12
12.2OhmResistor_SMD:R_1206_3216Metric_Pad1.30x1.75mm_HandSolderR5
12.2uFCapacitor_SMD:C_0603_1608Metric_Pad1.08x0.95mm_HandSolderC23
12S LiPo ConnectorConnector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalP1
13.9uHInductor_SMD:L_Sunlord_SWPA4030SL1
132.768 kHz CrystalCrystal:Crystal_SMD_3225-4Pin_3.2x2.5mm_HandSolderingY4
139KResistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR3
18.2KResistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR4
18MHz CrystalCrystal:Crystal_SMD_3225-4Pin_3.2x2.5mm_HandSolderingY3
1AO3401APackage_TO_SOT_SMD:SOT-23Q3
1AP63203WUPackage_TO_SOT_SMD:TSOT-23-6U1
1Conn_01x05Connector_PinHeader_1.00mm:PinHeader_1x05_P1.00mm_VerticalJ1
1Conn_01x06Connector_PinHeader_1.00mm:PinHeader_1x06_P1.00mm_VerticalJ2
1DRV8833PWPPackage_SO:HTSSOP-16-1EP_4.4x5mm_P0.65mm_EP3.4x5mm_Mask2.46x2.31mm_ThermalViasU3
1LSM6DS3Package_LGA:LGA-14_3x2.5mm_P0.5mm_LayoutBorder3x4yU6
1PCA9554PWPCA9554PW:SOP65P640X120-16NU8
1SMAJ9.0ADiode_SMD:D_SMAD1
1STM32F411CEU6Package_DFN_QFN:QFN-48-1EP_7x7mm_P0.5mm_EP5.6x5.6mmU2
1SW_SPDTButton_Switch_SMD:SW_SPDT_PCM12SW1

The 102 most common of 110 parts.

Similar boards

  • 4 layers70 × 99.9 mmMicromouse, the printed circuit board in 3D

    Micromouse

    UBIEEE/FrankenMouse

    FrankenMouse is a MicroMouse robot that was designed, built, and programmed from scratch by members of the University at Buffalo's IEEE Student Branch.

    100 parts6MIT
  • 4 layers82 × 100 mmPCB Kicad, the printed circuit board in 3D

    PCB Kicad

    ChristopherAwomolo/Nova-Micromouse

    Newer version based off the Futura Micromouse

    121 partsMIT
  • 2 layers86 × 99.2 mmBloo, the printed circuit board in 3D

    Bloo

    jonnylin22/Micromouse-2025-2026

    UCI IEEE Micromouse build

    104 parts
  • 2 layers115.7 × 103 mmProject1, the printed circuit board in 3D

    Project1

    Landjetelina/Micromouse

    46 parts
  • 2 layers90 × 96 mmBloo, the printed circuit board in 3D

    Bloo

    Maahi-V/26-27-UCI-Kit-Micromouse

    Kit Mouse Schematic and Layout for the 2026-27 Micromouse IEEE program

    95 parts
  • 4 layers97.5 × 75 mmMicromouse pcb, the printed circuit board in 3D

    Micromouse pcb

    RoboJackets/roboracing-micromouse-pcb

    This year, we are making Ratatouillii! 🐭🔥

    65 parts
  • 2 layers92.8 × 94.6 mmMouse2 rev1, the printed circuit board in 3D

    Mouse2 rev1

    vqxel/RezqMicromouse

    116 parts

Questions

How big is the AratMicro PCB?

It measures 80 × 87.6 mm and has 4 copper layers, 1.6 mm thick.

What parts does the AratMicro use?

110 parts, built around the STM32F411CEU6, AP63203WU, DRV8833PWP and QRE1113. 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 AratMicro KiCad files?

From the vorlaxen-labs/AratMicro repository on GitHub, at the commit this page was made from: the board is hardware/pcb/AratMicro.kicad_pcb and its schematic hardware/pcb/AratMicro.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the AratMicro 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).