Skip to the content
2 layers34.5 × 45.8 mmPro micro shield, the printed circuit board in 3D

Software for Arduino based 3-lane lap timer for Tamiya Mini4wd.

Size
34.5 × 45.8 mm
Copper layers
2
Thickness
1.6 mm
Parts
8
Nets
22
Pads
56
Tracks, vias
38, 0
Pours
2
Routed
Yes
KiCad
KiCad 6 (file 20211014)
Created
31 May 2018
Updated
8 Oct 2026

Overview

Pro micro shield is an open-source printed circuit board by Pimentoso, from the Pimentoso/mini4wdchrono repository on GitHub, published under the MIT licence. It is a 2-layer board of 34.5 × 45.8 mm with 8 parts on 22 nets, routed with 38 tracks and 0 vias.

Its parts include 3 connectors, 1 resistor and 1 IC. It belongs with the AVR (ATmega, ATtiny) boards of this library.

README

README.md

Mini4wdChrono

Version License

Mini4wdChrono is a free, open-source desktop application for timing and managing Mini 4WD races on three-lane Japan Cup tracks. It combines Arduino-based lap detection with an interface designed for race organizers and large-screen displays.

Features

  • Live timing for up to three lanes, including position, gaps, average speed, and split times
  • Configurable lap counts, timing thresholds, start sequence, sensors, LEDs, and buzzer
  • Track import from Mini4WD Track Editor
  • Player and round import from Mini4WD Tournament Generator
  • Tournament standings, editable results, and free-race support
  • Persistent race data and Excel result exports

Hardware

The hardware is designed to be affordable and straightforward to assemble while maintaining accurate timing. An Arduino running Firmata connects the sensors and optional start button, LED strip, and buzzer to the application.

See the project wiki for complete assembly and setup instructions:

Download

Download a packaged build for your operating system from the GitHub Releases page. Available platforms may vary by release.

Getting started

  1. Build and flash the Arduino hardware by following the hardware guides.
  2. Connect the Arduino to your computer over USB.
  3. Launch Mini4wdChrono and open the Configuration tab.
  4. Select the serial port and configure the sensor pins and any optional hardware.
  5. Create a track with Mini4WD Track Editor and load its link in the race setup screen.
  6. For tournament races, create a player list and rounds with Mini4WD Tournament Generator and load its link as well.

For more detail, see the software quick-start guide and tournament rules.

Screenshots

Live race view

Position, gap to the leader, average speed, and split times.

Live race timing view

Player standings

Player rankings with each racer's best time highlighted.

Player standings view

Tournament rounds

An overview of every round with editable results.

Tournament rounds view

Race setup

Track, tournament, timing, and race-mode configuration.

Race setup view

Development

Mini4wdChrono requires Node.js 22.13.0 and npm 9 or later. Node.js is managed with asdf; install asdf and its Node.js plugin, then run the following from the repository root to install the pinned version:

bash
asdf plugin add nodejs
asdf install

Use the setup instructions for your operating system before installing the project.

Set up macOS

Install the Xcode Command Line Tools, then install Homebrew if it is not already available:

bash
xcode-select --install

After the Command Line Tools installation completes, use Homebrew to install Git and the Arduino IDE:

bash
brew install git
brew install --cask arduino-ide

Set up Windows

Run the following commands from an elevated PowerShell window. They install Git, Python, the Visual C++ build tools required by native dependencies, and the Arduino IDE:

powershell
winget install --id Git.Git --exact --accept-package-agreements --accept-source-agreements
winget install --id Python.Python.3.11 --exact --accept-package-agreements --accept-source-agreements
winget install --id Microsoft.VisualStudio.2022.BuildTools --exact `
  --accept-package-agreements --accept-source-agreements `
  --override "--wait --passive --add Microsoft.VisualStudio.Workload.VCTools --includeRecommended"
winget install --id ArduinoSA.IDE.stable --exact --accept-package-agreements --accept-source-agreements
winget install --id OpenJS.NodeJS.22 --exact --accept-package-agreements --accept-source-agreements

Close and reopen PowerShell after the installations finish so the new commands are available on PATH.

Set up Linux

The following commands prepare an Ubuntu or Debian system. They install the compiler toolchain, Git, and zip:

bash
sudo apt update
sudo apt install -y build-essential ca-certificates curl git zip
sudo usermod -aG dialout "$USER"

Sign out and back in after adding your account to the dialout group. This allows Mini4wdChrono to access the Arduino serial port without making the device world-writable. Install the Arduino IDE from Arduino's official download if you need to flash the board.

For other Linux distributions, install equivalent packages with the system's package manager.

Install and run Mini4wdChrono

After preparing the operating system, clone the repository, install the locked dependencies, and start Electron:

bash
git clone https://github.com/Pimentoso/mini4wdchrono.git
cd mini4wdchrono
npm ci
npm start

Connect a Firmata-compatible Arduino over USB to test hardware integration. Use npm run watch to reload the application while developing. Run the linter before submitting changes:

bash
npm run lint:fix
npm run lint

Project structure

  • window.js — Electron main process, persistence, serial hardware, and IPC
  • preload.js — restricted renderer-facing IPC API
  • js/ — renderer UI and race-management logic
  • index.html — application markup
  • utils/ — release packaging scripts

Building release artifacts

The build scripts install the locked dependencies, package the application, and create a zip file in release-builds/.

PlatformCommandOutput
macOS x64./utils/build-darwin.shMini4wdChrono-mac-x64.zip
Linux x64./utils/build-linux-x64.shMini4wdChrono-linux-x64.zip
Windows x64.\utils\build-win64.ps1Mini4wdChrono-windows-x64.zip

Run each script on its target operating system. Cross-platform packaging is not supported by these scripts.

Contributing

Bug reports and pull requests are welcome. Before opening a pull request:

  1. Create a focused branch for the change.
  2. Keep hardware access in the Electron main process and expose it to the renderer through IPC.
  3. Run npm run lint:fix followed by npm run lint.
  4. Describe the change, how it was tested, and any hardware used for testing.

Please use GitHub Issues for bugs and feature requests.

License

Mini4wdChrono is available under the MIT License.

Parts

8
QtyValueFootprintReferences
3MountingHoleMountingHole:MountingHole_2.2mm_M2H1, H2, H3
1Conn_01x06_FemaleConnector_PinHeader_2.54mm:PinHeader_1x06_P2.54mm_VerticalJ1
1Conn_01x09_FemaleConnector_PinHeader_2.54mm:PinHeader_1x09_P2.54mm_VerticalJ3
1Conn_01x12_FemaleConnector_PinHeader_2.54mm:PinHeader_1x12_P2.54mm_VerticalJ2
1ProMicropromicro:ArduinoProMicroU1
1RResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P15.24mm_HorizontalR1

Similar boards

  • 2 layers20.5 × 24.8 mmPi interface, the printed circuit board in 3D

    Pi interface

    opulo-inc/lumenpnp

    The LumenPnP is an open source pick and place machine.

    8 parts3.7k
  • 2 layers59.9 × 25.7 mmBuffer, the printed circuit board in 3D

    Buffer

    hoglet67/RGBtoHDMI

    Bare-metal Raspberry Pi project that provides pixel-perfect sampling of Retro Computer RGB/YUV video and conversion to HDMI

    8 parts1kGPL-3.0
  • 2 layers52 × 12.6 mmUSB, the printed circuit board in 3D

    USB

    shanteacontrols/OpenDeck

    A platform for building interactive control and sensing devices using MIDI and OSC built with Zephyr RTOS.

    8 parts960Apache-2.0
  • 2 layers87.5 × 48.5 mm7 input macropad, the printed circuit board in 3D

    7 input macropad

    hackclub/OnBoard

    💡 Join 1,000 teenagers and make your first PCB with a $100 grant!

    8 parts915
  • 2 layers36.2 × 63.1 mmPicoMemcard pico, the printed circuit board in 3D

    PicoMemcard pico

    dangiu/PicoMemcard

    Emulating PSX Memory Card (or controller) using a Raspberry Pi Pico

    8 parts694GPL-3.0
  • 2 layers36 × 10 mmPCB4-PWR BTN Rev.A, the printed circuit board in 3D

    PCB4-PWR BTN Rev.A

    OLIMEX/DIY-LAPTOP

    Do It Yourself Open Source Hardware and Software Modular Hacker's Friendly Laptop

    8 parts578Apache-2.0

Questions

How big is the Pro micro shield PCB?

It measures 34.5 × 45.8 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Pro micro shield use?

8 parts. 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 Pro micro shield KiCad files?

From the Pimentoso/mini4wdchrono repository on GitHub, at the commit this page was made from: the board is resources/kicad/pro_micro_shield/pro_micro_shield.kicad_pcb and its schematic resources/kicad/pro_micro_shield/pro_micro_shield.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Pro micro shield 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).