Does this project spark your interest?

Become a member to follow this project and don't miss any updates


Pip-Watch (Personal Information Panel) is an open-source smart watch with an ePaper display, a bluetooth modem, and a Li-Ion accumulator.

Similar projects worth following

This project was created on 05/18/2014 and last updated 6 months ago.

Pip-Watch uses a small ePaper/eInk electrophoretic display (EPD). Electrophoretic displays have high contrast even in sun light, and very low power consumption, making them suitable for always-on battery-powered embedded devices. Low power consumption comes from the fact that the EPD draws no power when just displaying still image; it needs energy only when redrawing the screen.

Communication with a mobile phone (or any internet-connected device) is via a Bluetooth modem module. As the modem implements the standard Bluetooth Serial Port Profile (SPP), Pip-Watch can be controlled over any terminal application even by hand. A smartphone app will transmit notifications to Pip-watch when an SMS arrives, a calendar event pops out, or an incoming call is being received.

Pip-Watch is powered by a small Li-Ion accumulator that is recharged via a standard Micro USB connector. When connected, the USB can be also used to communicate with the device.

Hardware Block Schema

Hardware is built around the STM32F103 microcontroller. CPU timing is derived from an 8MHz crystal; it provides a clock stable enough for an on-chip USB interface to function correctly. An auxiliary low-speed precision 32.768kHz crystal is used for real-time clock (RTC), which is also included in the microcontroller.

Bluetooth modem is implemented by a pre-built commercial module. The first prototype uses OEMSPA310 from connectBlue, later the BTM431 from Laird will be used. The BTM431 has the advantage of lower power consumption and smaller size. These modules implement complete Bluetooth stack beginning with built-in ceramic antenna, and ending with a UART interface. Both modules are controlled via AT-style modem commands (albeit different between the types).

All power is normally delivered from Li-On battery, type Nokia BL-4C. The battery is charged form a Micro-USB connector via a charging controller MCP73831. The whole device runs at 3.3V, which is generated by a low-drop regulator LD59015C33R from a battery voltage. Current battery voltage is monitored by an A/D converter in the microcontroller, so the remaining battery charge can be computed and displayed on screen.

The display is implemented by GDE021A1, a small 3” electrophoretic display with the resolution 172x72 pixels. Communication with the display is via simple SPI-like interface. The display requires a charge pump with a coil and MOSFET.

Besides the display, the rest of human interface comprises of at least three buttons, three LEDs, and a vibrating motor(s) to give tactile notifications.

Software Block Schema

Software is organized in three layers. At the bottom there is a hardware access library from STM. The middle layer is composed mainly of the FreeRTOS operating system and a graphics drawing library u8g, both open-source. FreeRTOS is a simple multi-tasking operating system with pre-emptive scheduling, and with support for simple inter-task communication primitives such as queues and semaphores. The u8g is a drawing library: it is used to draw text and graphics such as lines and circles into a frame-buffer. The frame-buffer is then transmitted to the display.

The top software layer are tasks. The main tasks include a “Bluetooth Modem” task which communicates with a smartphone via Bluetooth, a “Battery” task that monitors battery charge using A/D converter, and a “Display Drawing” task that refreshes the display. Other tasks may be added as needed.

  • 1 × GDE021A1 EPD display 3"
  • 1 × STM32F103 Microprocessors, Microcontrollers, DSPs / Microcontrollers (MCUs)
  • 1 × Laird BTM431 / or connecBlue OEMSPA310 Bluetooth modem
  • 1 × Nokia BL-4C Li-On Battery
  • 1 × MCP73831 Power Management ICs / Power Supply Support
  • 1 × LD59015C33R Power Management ICs / Linear Voltage Regulators and LDOs
  • 1 × Micro-USB socket
  • 1 × USB6B ESD and TVS Suppressors / ESD and Transient Voltage Suppression (TVS) Diodes and Arrays

Project logs
  • Bluetooth Power Modes

    6 months ago • 0 comments

    In previous post we discussed CPU power consumption in PIP-Watch. Today we look into Bluetooth power consumption because it is significant as much as the CPU power.

    Bluetooth Radio States

    Practically the only significant part that consumes a lot of power in Bluetooth modems is their radio transceiver. If the radio is switched off the module draws only small quiescent current (less than 2mA in BTM431). Radio is activated by modem to perform one of the following three actions:

    • to do a page scan,
    • to do an inquiry scan,
    • to transfer data to a connected device.

    Continue reading here...

  • Processor Low-power Optimizations in PIP-Watch

    6 months ago • 0 comments

    The PIP-Watch is a battery-powered device that will be continuously on, hence the average power consumption is one of the most important engineering aspects.

    In this post I will go through two simple steps of optimizing CPU power – sleep modes and lowering the clock frequency. In a next separate post we will look into Bluetooth module power.

    Continue reading here...

  • PIP-Watch Boards & Assembly

    7 months ago • 0 comments

    The printed circuit boards for PIP-Watch Zero came from Pragoboard fab on Friday 12 Sept. I ordered three pieces because the cost is practically identical as for two or one.

    PIP-Watch Zero: Pristine PCBs from fab

    On Saturday I assembled one board, and on Sunday I tested it and started working on firmware. I had some problems with PLL in the microcontroller - the CPU hard-resetted the instant the PLL was enabled. Eventually I found a bad solder joint on one of the CPU's power supply pins.

      PIP-Watch Zero: Assembled board from the bottom

    PIP-Watch Zero: Top PCB side, unfolded.

    So far I tested the CPU & JTAG, the eInk EPD display, Bluetooth modem access (but not the BT communication itself), and LEDs. I had issues with bad solder joints (both shorts and cold joints) because the PCB footprint for the CPU (the LQFP64 package) was apparently designed for the reflow process, and it is not suitable for hand soldering. Silly KiCAD libraries!

    PIP-Watch Zero: Assembly

    Measuring crystal frequencies:

View all 14 project logs


mohsenabbasiarbeit wrote 2 months ago point

Hi, I can make a package fot it. Tell me when you need (

Are you sure? [yes] / [no]

Adam Fabio wrote 10 months ago point
Great Project - thanks for entering PIP-Watch in The Hackaday Prize! Less power to the display means more mAh available for other stuff - like radios to connect! Try to get a few images uploaded when you can - every little bit helps you on the road to winning!

Are you sure? [yes] / [no]

Jara wrote 10 months ago point
Search for GDE021A1 on I got mine in April for $14, however, currently they sell it for $45, which is plain ridiculous :-( Or try contacting the manufacturer:

Are you sure? [yes] / [no]

jaromir.sukuba wrote 10 months ago point
Interesting project.
Just curious, where did you get that display from? Seems like common component distributors doesn't sell it.

Are you sure? [yes] / [no]

Similar projects