Triink - low power BLE E-Paper Clock

A fully custom Arduino E-Paper BLE clock in a 3D Printed case using nRF52832 with one year run time one a single 18650

Similar projects worth following
This is a mix of two gadgets I love to play with, an E-Paper display out of old unused Electronic Shelf Labels and the nRF52832 out of countless Smartwatch hacking projects


The goal was to create a nicely looking E-Paper Clock that will show the current time all the time, so a refresh every minute is needed.

This goal was reached by implementing a custom LUT(Look Up Table) driving the E-Paper display as well as implementing an algorithm that will only update the changing pixels of the E-paper display. Every hour the screen will be fully refreshed to prevent ghosting or burn in.

The optimized E-Paper driving plus the good deep sleep of the nRF52832(including active Bluetooth/BLE and 500ms advertising interval) ends up at an average of 65uA deep sleep current!

From the calculations this should reach over a year of runtime on a single 18650 Cell, and by now this project is fully tested, more than a year of runtime can be reported :)

Since the main goal was reached no further software improvements where done after that :( by now the Triink is on my desk and is actually used to show the time, every 3 month or so it is needed to connected to it via the D6Notification app to set the time as it is drifting by a few minutes.

The Screen itself is out of an Old E-Paper Price Tag and is named: WF00290BF33 the code and LUT is very much custom for that particular screen but can be adapted to any other screen if wanted.

BLE Connection:

The Android app D6Notifications can be used to set the time and also to implement further modes like notifications by utilizing the Display or Beeper

The app DaFlasher can be used to flash a new Firmware OTA to the Triink


Build LOGs:

Some project logs from Twitter:

Building your own Triink:

See the "Build Instructions" if you want to build your own Triink

All necessary files to build a Triink

x-zip-compressed - 5.79 MB - 02/21/2023 at 07:09


  • 1 × A BOM can be found in the uploaded .zip file

  • 1
    3D Printing the case

    Print both the Cap and Case without support and 0.2mm height

    The Cap should snap into the Case without much force.

    The needed files are in the uploaded .zip file

    The Battery, PCB and E-Paper display can be slit into the side of the Case 

  • 2
    Build the PCB

    User a PCB manufacturer by your choice and get some PCBs and a stencil.

    The parts needed are mentioned in the BOM file of the uploaded .zip as well as the Gerber file.

  • 3
    Flashing via Arduino

    The SWD connection of the nRF52832 is accessible via the USB data lines in the USB Connector.

    The best is to use a Female USB connector to pass power to the PCB and connect to an St-Link at that point

    To add the Triink to Arduino it is best to use this Portable version:

    From the uploaded .zip copy the Triink folder into: "\portable\packages\sandeepmistry\hardware\nRF5\0.6.0\variants"

    Copy the boards.txt content in some area between #### into the file: "\portable\packages\sandeepmistry\hardware\nRF5\0.6.0\boards.txt"

    You can then open the Sketch and compile and upload the files via an St-Link, by also uploading the bootloader you can, after the first flashing, upload newer versions via BLE the needed files are created in the Base folder of D6Arduino and will be created on each compiling.

    After a flash via the St-Link the nRF52832 should be repowered as it will otherwise stay in "debug" mode and the current consumption is increased by about 3mA in that mode

View all 3 instructions

Enjoy this project?



Does this project spark your interest?

Become a member to follow this project and never miss any updates