Skip to the content
4 layers36 × 36 mmJRWatch, the printed circuit board in 3D

Low-power BLE wearable: nRF52840 module + nPM1300 PMIC + BMI270 IMU + Sharp MIP display. 36 mm 4-layer board, ~15 µA projected sleep current, Zephyr firmware.

Size
36 × 36 mm
Copper layers
4
Thickness
0.8 mm
Parts
47
Nets
43
Pads
263
Tracks, vias
542, 182
Pours
16
Routed
Yes
KiCad
KiCad 10.0 (file 20260206)
Created
4 Jul 2026
Updated
18 Aug 2026

Overview

JRWatch is an open-source printed circuit board by jadenrhee, from the jadenrhee/JRWatch repository on GitHub. It is a 4-layer board of 36 × 36 mm with 47 parts on 43 nets, routed with 542 tracks and 182 vias.

It is built around the MDBT50Q-1MV2, BMI270 and USBLC6-2SC6, with the NPM1300-QEAA-R7, ESD9B3.3S and ESD9B5.0S among its other parts. Its parts include 23 capacitors, 8 resistors, 4 ICs, 4 connectors and 2 diodes. It belongs with the radio and wireless and lEDs and displays boards and the nRF52 and nRF5x boards of this library.

Main components

10

README

README.md

JRWatch

firmware build

A smartwatch designed from scratch, board included. 36 mm across and 4 layers, with an nRF52840 for Bluetooth, an nPM1300 handling charging and the power rails, a BMI270 for motion, and a Sharp memory-in-pixel LCD that holds a static image on about 12 µW. Firmware runs on Zephyr.

Most of the design work went into idle current, meaning what it draws while sitting on a wrist doing nothing.

front copper back copper

Front copper on the left, back on the right. 36 x 36 mm, 4 layers.

Sleep current~15 µA, or ~26 µA while advertising over Bluetooth (1.5 s interval, not connected)
Battery life~4 months connected to a phone all day, ~8 months mostly idle, on a 150 mAh cell
FirmwareZephyr v4.1.0, 232 KiB flash / 40 KiB RAM

These are calculated from datasheet typicals, not measured on hardware. The full itemization is in the verification report. Part choices are in the design rationale.

Architecture

mermaid
flowchart LR
  USB["USB-C"]
  BAT["LiPo 150 mAh<br/>+ 10k NTC"]
  PMIC["nPM1300<br/>charger, 2 bucks,<br/>2 load switches"]
  MCU["nRF52840<br/>MDBT50Q-1MV2"]
  DISP["Sharp LS013B7DH03<br/>128 x 128 MIP"]
  IMU["Bosch BMI270"]

  USB -->|VBUS| PMIC
  BAT -->|VBAT| PMIC
  PMIC -->|3V0 always-on| MCU
  PMIC -->|VDD_DISP via LSW1| DISP
  PMIC -->|VDD_IMU via LSW2| IMU

  MCU -.->|I2C 0x6b| PMIC
  MCU -.->|SPI2| DISP
  MCU -.->|SPI1| IMU

Solid lines are power, dashed are data. The display and IMU sit behind load switches inside the PMIC. In armed sleep they draw about 4 µA and 6 µA. Ship mode disconnects the battery entirely and the whole watch drops to 370 nA, low enough that cell self-discharge dominates. Full net list is in hardware/skidl/jrwatch.py.

case

Status

Not yet fabricated. A review before ordering turned up a problem with the display connector, and both halves of it trace to one cause. The panel's ribbon exits the center and has to fold 180 degrees back underneath. That fold leaves roughly a 9 mm window where the connector can sit, and mine was outside it. The fold also inverts the contact face, which reverses the pin order, and I had the pins running straight through.

The pin order is corrected in the schematic. Repositioning the connector is a layout change and hasn't landed yet, so ordering is blocked. Written up as D-025 in the decision log.

Firmware

An out-of-tree Zephyr board port with devicetree, Kconfig, and board files. Three power modes cover active, armed sleep, and off. The display redraws only when its content changes, and the IMU wakes the SoC on motion. BLE reports battery level and step count (protocol).

Parts

47
QtyValueFootprintReferences
9100nFC_0402_1005MetricC4, C11, C13, C14, C15, C18, C19, C21, C23
610uFC_0603_1608MetricC1, C2, C5, C7, C8, C12
51uFC_0402_1005MetricC6, C9, C10, C20, C22
2100RR_0402_1005MetricR7, R8
2100kR_0402_1005MetricR5, R6
212pFC_0402_1005MetricC16, C17
22.2uHL_Murata_DFE201612E_2016L1, L2
24.7kR_0402_1005MetricR3, R4
110k NTCR_0402_1005MetricRT1
1150kR_0402_1005MetricR2
12.2uFC_0603_1608MetricC3
132.768kHzCrystal_SMD_3215-2Pin_3.2x1.5mmY1
147kR_0402_1005MetricR1
1BMI270Bosch_LGA-14_3x2.5mm_P0.5mmU3
1ESD9B3.3D_SOD-923D2
1ESD9B5.0D_SOD-923D1
1FH12A-10S-0.5SHHirose_FH12-10S-0.5SH_1x10-1MP_P0.50mm_HorizontalJ2
1MDBT50Q-1MV2Raytac_MDBT50QU1
1PWR/SHIPSW_Push_1P1T-MP_NO_Horizontal_Alps_SKRTLAE010SW1
1SM02B-SRSS-TBJST_SH_SM02B-SRSS-TB_1x02-1MP_P1.00mm_HorizontalJ3
1TC2030-IDC-NLTag-Connect_TC2030-IDC-NL_2x03_P1.27mm_VerticalJ4
1TYPE-C-31-M-12USB_C_Receptacle_HRO_TYPE-C-31-M-12J1
1USBLC6-2SC6SOT-23-6U4
1USERSW_Push_1P1T-MP_NO_Horizontal_Alps_SKRTLAE010SW2
1nPM1300-QEAA-R7VQFN-32-1EP_5x5mm_P0.5mm_EP3.5x3.5mm_ThermalViasU2

Similar boards

  • 2 layers70 × 110 mmThermostat pcb, the printed circuit board in 3D

    Thermostat pcb

    mikegormack/thermostat-pcb

    knob thermostat PCB Kicad

    103 parts
  • 4 layers17.1 × 60.2 mmSolBuddy, the printed circuit board in 3D

    SolBuddy

    sebgle/SolBuddy

    Wearable circadian rhythm tracker

    44 parts
  • 2 layers42 × 32 mmRAMS - PCB, the printed circuit board in 3D

    RAMS - PCB

    JanClyde05/Road-Accident-Monitoring-System

    This directory contains the planning, specification, and initial KiCad project for RAMS Wearable PCB Revision C. Do not fabricate from this directory yet -- manual schematic wiring and DRC verification are still needed.

    68 parts1
  • 2 layers234.5 × 120.8 mmSmk kbd devkit, the printed circuit board in 3D

    Smk kbd devkit

    mburger89/SMK_Keyboard_DevKit

    59-key hot-swap mechanical keyboard PCB carrier for a socketed ESP32-C6-DevKitC-1 dev board — KiCad project generated/routed by Python scripts

    148 parts
  • 2 layers32.7 × 55.2 mmElicio v2, the printed circuit board in 3D

    Elicio v2

    uguryildirim24/elicio

    Unfinished ear-muscle EMG earpiece research with KiCad board designs, parametric shell CAD, firmware, synthetic transport fixtures and an audited gesture-to-action gate.

    66 partsMIT
  • 2 layers45 × 55 mmKnuckles controller, the printed circuit board in 3D

    Knuckles controller

    fcoury/knuckles

    An open-source, wireless column-staggered ergonomic keyboard.

    47 parts6MIT
  • 6 layers196 × 20 mmSmartbag core, the printed circuit board in 3D

    Smartbag core

    claudiofin/smartbag

    Tagless smart insert for a handbag: recognises its contents with an IR camera, 60 GHz radar and a 96-taxel FSR floor. PCB, CAD, renders and films all generated by script (KiCad -> CadQuery -> Blender).

    113 partsMIT
  • 4 layersSmart Watch, the printed circuit board in 3D

    Smart Watch

    jacksterb1234/Smart_Watch

    A fully custom smartwatch designed from the ground up, featuring a purpose-built PCB, BLE connectivity, and a 3D-printed case. Designed for complete control over hardware and software integration.

    73 parts

Questions

How big is the JRWatch PCB?

It measures 36 × 36 mm and has 4 copper layers, 0.8 mm thick.

What parts does the JRWatch use?

47 parts, built around the MDBT50Q-1MV2, BMI270, USBLC6-2SC6 and NPM1300-QEAA-R7. 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 JRWatch KiCad files?

From the jadenrhee/JRWatch repository on GitHub, at the commit this page was made from: the board is hardware/jrwatch.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.

Can I use the JRWatch design in my own project?

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