WatchDK - The ZSWatch development kit ($99) has the same nRF5340 chip and sensors as the final watch, in a larger form factor for development and debugging. Battery optional, runs off USB-C.
Smartwatch built from scratch, both hardware and software. Built on the Zephyr™ Project RTOS, hence the name ZSWatch (Zephyr Smartwatch).
ZSWatch Development Kit (WatchDK)
walkthrough_watch.mp4
Full documentation is available at zswatch.dev:
- Getting Started - WatchDK quick start guide
- Toolchain & Compiling - Environment setup, building, and flashing
- Writing Apps - How to create applications for ZSWatch
- Hardware Design - PCB design documentation
- nRF5340 BLE chip (u-blox NORA-B10 module)
- 128 MHz Dual core
- 512 KB RAM
- 1 MB Flash
- 30 MHz SPI for display
- 240x240 round display with touch screen
- IMU Bosch BMI270 for gesture navigation, wrist-wake, step counting
- Bosch BMP581 High-performance pressure sensor (~20 cm accuracy)
- ST LIS2MDLTR Magnetometer
- Macronix MX25U51245GZ4I00 64 MB external flash
- Broadcom APDS-9306-065 Light Sensor for automatic brightness control
- Micro Crystal RV-8263-C8 RTC for time keeping and alarm functions
- Knowles SPK0641HT4H-1 I2S microphone for audio recording
- Nordic nPM1300 PMIC for power and system management
- Speaker (Requires HR Extension Board)
All hardware is designed in KiCad. Hardware repos:
- Watch PCB - 38 mm diameter watch PCB
- Watch DevKit PCB - Larger development board with breakout headers and debug header
- Extension PCB - Health and audio addon PCB
- Dock/Breakout PCB - USB-C breakout for debugger and UART access
The Extension PCB is a small add-on board (approximately 16.8 mm diameter) that plugs into the WatchDK headers. It is still in development and the design, BOM, and firmware support may change.
More background and progress updates:
- https://zswatch.dev/blog/dk-and-hr-integration
- https://zswatch.dev/blog/progress-hw-xip-usb-power
- https://zswatch.dev/blog/progress-hr-fota
Key BOM highlights:
- Analog Devices / Maxim
MAX86141optical AFE + ams OSRAMSFH 7016(RGB/IR LED module) + VishayVEMD8082photodiodes - Analog Devices / Maxim
MAX32664biometric sensor hub - Renesas / Dialog
DA7212audio codec (speaker support) - Amphenol
101P014FB110board-to-board connectors
- Bluetooth LE communications with GadgetBridge (Android) and Apple ANCS/AMS (iOS)
- Multiple watchfaces (dynamically switchable), showing time, date, battery, weather, steps, notifications, environmental data, and more
- Pop-up notifications
- Application picker with extensible app framework
- Settings, Music control, Compass, and many more
- Step counting, gestures, and much more
The watch also supports ESP32 watchfaces from Felix Biego. See this fork for details.
Android: Uses GadgetBridge for notifications, music control, weather, and more.
iOS: Communicates directly via Apple Notification Center Service and Apple Media Service. No extra apps needed.
See phone setup on zswatch.dev for details.
3D-printed casing with 3D-printed buttons, with an option for CNC:ed metal casing.
For development: The WatchDK ($99) is the recommended starting point. It has the same nRF5340 SoC, sensors, and display as the final watch, with breakout headers, USB-C with SWD/UART, power measurement headers, and a debug header. Everything except battery is included. Battery is optional.
For DIY builders: Head over to the hardware repos for the for ordering information. The final miniature watch hardware is still being developed.
See the Toolchain & Build Guide for environment setup, compiling, and flashing.
To learn how to write apps for ZSWatch, see Writing Apps.
The main difference from MIT is that if anyone wants to build something more with this, they need to also open source their changes back to the project, which I think is fair, so everyone can benefit from those improvements. If you think this is wrong, feel free to contact me and I'm open to change the licence.
This project is partly funded through NGI0 Commons Fund, a fund established by NLnet with financial support from the European Commission's Next Generation Internet program. Learn more at the NLnet project page.
PCBWay for sponsoring the manufacturing and assembly of prototype PCBs. PCBWay is the recommended manufacturer for PCBs and assembly of ZSWatch.




