Skip to main content

Getting Started (for v1, v1.5, v2)

Watchy Kit w/ Case Assembly

Watchy Kit with Case

Before You Begin make sure you review the instructions and inspect for any missing or damaged components.

Remove The Components Carefully as they are tightly packed for maximum protection. The display is made of glass and will crack if you bend it!

Test Your PCB to make sure the board is functional!

Do Not Apply The Included Tape!! Watchy can be assembled and secured with the included enclosure, without needing any tape. Only apply the tape if you intend to use Watchy without the enclosure, and have triple checked the screen is properly aligned.

  1. Connect the screen to the FPC connector, the shiny gold pins on the ribbon cable should be facing up. The ribbon cable goes through the PCB slot like in the image above.
  2. Connect the battery
  3. Connect the USB to start charging the battery
  4. Press SW1 to bring up the menu/confirm
  5. Press SW3 & SW4 to navigate up/down
  6. Press SW2 to exit/cancel

Watchy Buttons

  1. Wait 1 minute to check and see if the clock is updating the time correctly


  • Make sure the screen is perfectly aligned before taping it down! It should not extend above or below the strap holes on the PCB.

Watchy Screen Alignment

  • Make sure the battery cable is tucked in Everything should fit snug and be aligned to the bottom case, before securing the top case.
  • Do NOT force the case to close. It could break the screen & buttons! The case should close easily with the top and bottom snaps latching.
  • Do NOT overtighten the screws in the aluminum case Overtightening will crack the screen! Make sure everything fits nicely and slowly adjust the screws to secure the case.
  • Still having trouble? Check out this step-by-step guide on assembling the case in our FAQ

Assembly Video:

Assembly Video (CNC Aluminum Case):

Watchy Original Assembly

Watchy OG Assembly

  1. Apply tape to the back of the E-Paper display and battery. The front of the display is white and the back of the display is metallic/silver
  2. Pull lightly to unlock the FFC connector, insert the display cable through the strap hole. Make sure the cable is inserted all the way, then push the lock back in to secure the cable.
  3. Fold back and align the display to the top of the PCB, peel off the tape and firmly secure the display
  4. Insert the battery plug, ensure correct polarity (red is closer to the USB connector)
  5. Peel off the tape and firmly secure the battery to the PCB
  6. Insert the watch strap through the PCB strap holes, then tighten the strap from both ends
  7. Wrap the strap around your arm and adjust for comfort

Assembly video:

Arduino Setup

Watchy comes pre-loaded with firmware that demonstrates all the basic features. You can also try different watch faces and examples in Arduino.

  1. Download and install the latest Arduino IDE

  2. Start Arduino and open File > Preferences.

  3. Under Additional Board Manager URLs add:
  4. Open Tools > Board > Boards Manager and install the latest version of esp32 platform

  5. Under Sketch > Include Library > Manage Libraries, search for Watchy and install the latest version

  6. Make sure all the dependencies are updated to the latest version i.e. GxEPD2 , WiFiManager, rtc_pcf8563,etc.


  1. Plug in the USB on Watchy and select the serial port that shows up
  2. If nothing shows up, or if you're having trouble uploading, make sure you have the USB-Serial drivers installed. Also make sure you're using a USB data cable, and not a charge-only cable. Try different USB ports as well.
  3. Select Tools > Board > ESP32 Arduino > Watchy
  4. Select Tools > Board Revision > Watchy v2.0
  5. Select Tools > Partition Scheme > Huge App
  6. Leave everything else as default
  7. Choose an example and click upload
  8. Try modifying the examples or create your own app!

Wifi Setup

  1. Click 'Setup Wifi' from main menu on the watch.
  2. Connect to 'Watchy Ap' wifi from another device such as phone or computer / laptop.
  3. Open in the browser. On iphone this page open itself when connecting to wifi.
  4. Click 'Configure WiFi'
  5. Enter SSID and password. (Note: SSID can be prefilled by listed networks on the top of this screen)
  6. Hit 'Save' button and wait for Watchy.
  7. If connection failed, the watchy will display 'Setup failed & timed out!', otherwise it will display the local ip address and SSID of the connected network with confirmation.

Troubleshoot Wifi Setup:

  1. Click 'Info' from page.
  2. Check your router setting to make sure the listed mac address is allowed.
  3. If above didn't fix, then try clicking 'Erase Wifi Config' from 'Info' page and wait for Watchy to restart itself. Once it happen, try the wifi setup again and it should hopefully work.

PlatformIO Setup

PlatformIO is a compatible alternative to arduino. It's more oriented for the command line user, but it is also more flexible and predictable in build configurations and dependency management (like libraries).

It has two parts: a "core" that has the command line tools that build and upload/flash, and an "ide" which is a bunch of plugins and extensions for editors you can find here.

Use whichever extensions you wish but this documentation is related to the core, so:

Simple watchface example

This example is to create a new watch face project, it starts by copying one of the examples to the src/ folder where you can make your own. However, it will not make it easy to edit the watchy library, or its config.h file, which many want to, for that see the section below.

  • Create a new folder and setup the PlatformIO project layout
mkdir my_new_watchy_face_project
cd my_new_watchy_face_project
pio project init --board esp32dev
  • Add the following to the platformio.ini file. Note that if you want to use another version of the Watchy library, you can put any file or git path here.

Some users have reported problems with one of the supported RTC modules: The module PCF8563 seems to be supported during first boots, but their library is overridden by PlatformIO using a broken version - so you need to add an other repository ( to prevent that.

lib_deps =
sqfmi/Watchy ; ; Pinned for the same reason
lib_ldf_mode = deep+
board_build.partitions = min_spiffs.csv
  • Also pin the version of platform espressif32 to ensure compatibility.
- platform = espressif32
+ platform = espressif32 @ ~6.6.0
  • Run PlatformIO, it will download dependencies such as the Watchy library, but then fail to compile because there aren't any source files in src/ yet. So when the dependencies are downloaded, copy the 7_SEG example files to src/.
pio run # will fail compilation but will download dependencies
cp .pio/libdeps/esp32dev/Watchy/examples/WatchFaces/7_SEG/*.{ino,cpp,h} src/
  • Plug in your watchy, compile and then upload the watch face:
pio run -t upload
  • Watch the serial port output
pio device monitor
  • Celebrate by watching ascii star wars
  • Additional keys you'll probably want to add to your platformio.ini file:
upload_speed = 3000000
upload_port = /dev/cu.usbserial-MQK8G8
monitor_port = /dev/cu.usbserial-MQK8G8
monitor_speed = 115200
monitor_filters = esp32_exception_decoder