Skip to the content
PCBKitNew board
2 layers38 × 101 mmKoloMapa2EINK, the printed circuit board in 3D

KoloMapa2EINK

utydfd/BikeNav3

ESP32 based GPS bike navigation

Size
38 × 101 mm
Copper layers
2
Thickness
1.6 mm
Parts
34
Nets
55
Pads
191
Tracks, vias
685, 141
Pours
1
Routed
Yes
KiCad
KiCad 9.0 (file 20241229)
Created
27 Jan 2026
Updated
3 Apr 2026

Overview

KoloMapa2EINK is an open-source printed circuit board by utydfd, from the utydfd/BikeNav repository on GitHub, published under the GPL-3.0 licence. It is a 2-layer board of 38 × 101 mm with 34 parts on 55 nets, routed with 685 tracks and 141 vias.

It is built around the ESP32-S3-WROOM-1-N8, SPX3819M5-L-3-3 and TP4056-42-ESOP8. Its parts include 8 capacitors, 8 resistors, 8 switches, 5 ICs and 3 connectors. It belongs with the lEDs and displays boards and the ESP32 boards of this library.

Main components

3

README

README.md

BikeNav

An GPS navigation(originally intended for biking) with an E-ink screen, ESP32-S3 MCU and an SD card. This repository contains code for the Arduino project and an Android app, as well as a PCB designed in KiCad and a case designed in Fusion 360.

Map format

It uses standard raster 256x256px map tiles, right now from OSM, but can be changed to others. The tiles are saved on the SD card in a ZOOM_LEVEL/X/Y.tile folder structure as 1 bit bitmap images.

Data flow

Either import a GPX track or plan right inside the app(right now using project OSRM API), it downloads the required map tiles and saves them.

I can pick a trip from the main screen and send it over to the ESP via BLE, first the GPX is sent and then the tiles. They are converted from PNG to bitmap, compressed using RLE for faster transfers. The ESP is saving them to the SD card as they come. It’s also appending an index of tiles, which is sent from the ESP to the app, so that only the missing tiles are sent.

ESPs software

The home screen contains smartphone like icons to "apps". The main one is obviously the map, which by default shows the current location. Pressing options brings up list of saved trips, clicking on it shows the preview and i can also start the navigation.

When navigating, the map rotates based on the upcoming GPX track; it shows the next turn distance and turn arrow(just calculated based on the angle of the turn). There are also screens for the progress and elevation graph. The GPX is loaded into PSRAM (512kb allocated) and PSRAM is also used for caching the map tiles (~6MB allocated).

Other apps include the speedometer, phone(which has music controls along with battery %), weather(phone fetches from an API the forecast and also rain radar images), tracker(for recording GPX tracks), info(was used for debugging, has GPS, SD and battery statuses) and also mines and snake games. Those are not ideal but playable on the E-ink.

Hardware

Its on a custom PCB, a standard 2 layer one. There are 2 regulators, one powering the ESP and other parts and the other solely for powering the front light - it has the EN pin connected to a GPIO so its controlled in software. The GPS module is connected via UART and also has an EN pin controllable. Micro SD card and the display are connected via SPI to the ESP. There is a TP4056 chip for charging, without the LEDs - its connected to the ESP so it can know the charging status.

For control, there is a rotary encoder(with a button) and 4 more buttons. The battery voltage is monitored with the ESP.

BOM

Parts

34
QtyValueFootprintReferences
6CCapacitor_SMD:C_1206_3216Metric_Pad1.33x1.80mm_HandSolderC1, C2, C3, C4, C5, C6
6SW_PushButton_Switch_THT:SW_PUSH_6mmSW2, SW3, SW4, SW5, SW6, SW8
5RResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_HorizontalR1, R2, R4, R5, R6
2Conn_01x02_PinConnector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalJ1, J3
2RResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P2.54mm_VerticalR7, R8
2SPX3819M5-L-3-3Package_TO_SOT_SMD:SOT-23-5U2, U5
12SD:SDSD1
1CCapacitor_SMD:C_0402_1005MetricC7
1CCapacitor_SMD:C_0504_1310MetricC8
1Conn_01x05_PinConnector_PinHeader_2.00mm:PinHeader_1x05_P2.00mm_VerticalJ4
1ESP32-S3-WROOM-1RF_Module:ESP32-S3-WROOM-1U1
1RResistor_SMD:R_0402_1005MetricR3
1RotaryEncoder_SwitchRotary_Encoder:RotaryEncoder_Alps_EC11E-Switch_Vertical_H20mmSW1
1SW_Push_SPDTButton_Switch_THT:SW_Slide_SPDT_Straight_CK_OS102011MS2QSW7
1TP4056-42-ESOP8Package_SO:SOIC-8-1EP_3.9x4.9mm_P1.27mm_EP2.41x3.3mm_ThermalViasU3
1~EINK:EINKEINK1
1~USB:UntitledU4

Questions

How big is the KoloMapa2EINK PCB?

It measures 38 × 101 mm and has 2 copper layers, 1.6 mm thick.

What parts does the KoloMapa2EINK use?

34 parts, built around the ESP32-S3-WROOM-1-N8, SPX3819M5-L-3-3 and TP4056-42-ESOP8. 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 KoloMapa2EINK KiCad files?

From the utydfd/BikeNav repository on GitHub, at the commit this page was made from: the board is PCB/KoloMapa2EINK.kicad_pcb and its schematic PCB/KoloMapa2EINK.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the KoloMapa2EINK design in my own project?

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

Similar boards

  • 2 layers136.1 × 135.4 mmMinicopter, the printed circuit board in 3D

    Minicopter

    darshg321/Minicopter

    Compact and precise ESP-32 based drone capable of autonomous pathing, built from scratch

    57 parts
  • 2 layers60 × 77.7 mmHard EnvSens, the printed circuit board in 3D

    Hard EnvSens

    IgorFJensen/Hard-EnvSens

    106 parts
  • 4 layers80 × 106 mmNodeHardware, the printed circuit board in 3D

    NodeHardware

    AleksaHeler/FlexNode

    FlexNode is a DIY "smart home" system with a single hub and multiple flexible and customizable nodes

    220 partsGPL-3.0
  • 4 layers55 × 47 mmMini Drone, the printed circuit board in 3D

    Mini Drone

    GitHubKailash/Mini-Drone-Custom-PCB

    Mini Drone Custom PCB Description

    74 parts
  • 4 layers35 × 50 mmTama, the printed circuit board in 3D

    Tama

    rough-rat/tama

    74 parts
  • 2 layers147 × 105.9 mmWirelessControllerESP32, the printed circuit board in 3D

    WirelessControllerESP32

    EmmetGameDev/NevoltaNexusConsole

    Repository for design files and code for the Nexus console.

    66 parts4GPL-3.0
  • 2 layers51.1 × 95 mmTalk e, the printed circuit board in 3D

    Talk e

    milovanpms/talk-e

    📻 — A simple LoRa-based talkie-walkie built on ESP32, operating on the 433 MHz frequency band for long-range, low-power wireless communication.

    75 parts4