TapClock for WatchX


I just had a low battery warning:) This was something that I was expecting:):slight_smile: Great improvement and definitely need:) There was a flashing LED as well:)


I don‘t see the blinking dots between hours and minutes and the seconds indicator line at the bottom is not shown.

Are these two things really not to see or is this because of the video?


They don’t present, also I am having problems with 0s I think it’s because of the modification I made earlier. I will recover everything back to its original state and re upload the code.


The wrong font file is used.
Replace the ssd oled library completely with an actual version from github and make sure you have all files in the sketch source folder.

You can run the eeprom cleanup before you upload the sketch.

I think the ssd oled lib in the watchx lib pack is also an outdated one. Please double check.

I am using two Arduino sketchbook folders.
One for the original watchX files and libs,
and another one for my libs and sketches.
Makes switching between them easier.


The latest TapClock versions using nearly all availble Memory.
Any additional code could end in an instable system if you compile and upload.
Whats the memory usage shown by the compiler?

All goes well until....pfff

when i upload the soft indicates 93%


93% is the value from where I see issues.
Which TapClock Version are you using?

Try to remove the code lines for the MAG Device (library, object, setup code) as this device is unused and only send to sleep for longer battery usage.

Where did you add your loop code?


TapClock for watchX v1.2. ok i’ll try to remove the MAG device. I can’t understand the sleep mode. i can’t put the screen off, always shows the watch, so, the battery is live around 2-3 hours.

I put the bme.readTemperature in stats menu in case 110:

case 110:
// Init
init_view = true;

  // Draw Header

  oled.print("Uptime: ");
  // Show MPU Angles
  if ( !mpu.getSleepEnabled() ) {
    oled.print("Wakes: ");
    oled.print("Views: ");
    // Angles
    oled.print("AX:    AY:    AZ:");
    //temp, humidity
    oled.print("T: ");
   // oled.setCursor(46,4);
    oled.print("P: ");
  // oled.setCursor(86,4);
   // oled.print("A: ");


State 110 is just „stats“, an status page to show a few (more) information.
No sleep here.

Sleep is in state 91 which is set from different other states.

The state which shows the clock is
61 which uses showWatchface() from an included watchface header file.

Are you using v0.8.4 or an older Version.


V 0.8.4 but the question is, how activate the sleep mode in the state 91? And how deactivated? My screen is on all time.
By the other hand, maybe this evening i’ll try to do to remove MAG for try to see temperature when i press the button number 2


Is the clock screen permanently shown?
An Power connection prevents the clock from sleeping.
And disable the MPU in setup.

An video will be helpful.

I added an txt file to Github which explains the states a bit more.
See: https://github.com/venice1200/TapClock/blob/master/TapClock/TapClock_v0.8.4/TapClock_v0.8.4_States.txt


Any progress with your problems?


Hi!! All goes well but only 2 more questions.

When i choose “1” in parameter clocktime the watch entry in sleep mode until I press the button 3. It’s possible give more time when the screen is on until entry in the sleep mode again? How?

And the other question is, how to put altimeter value in the screen? When I try the watch don’t run well and the cpu is 95%.

Thank you so much all the people and the community


let’s try to answer the first one as your second question is tricky.
The Setup Parameter Clocktime is responsible for how long the Clock is shown if the clock is awaken in 100ms steps.
See Readme Setup Menu/Clocktime

1 = 1x 100ms
40 = 40x 100ms = 4000ms = 4sec (Standard setting)


You need to remove code. For example…

  • The MAG Object
  • Comfort code in setup()
  • Remove the Setup Menu partly (range checking if…then) or completely.
    Then you need to set your parameter manually with defines or pre-defined variables.

I think this gives you enough space to add your BMP code.
Where do you like to have your values shown.
In Stats or shown with the Clock?


This solved the problem, I felt an instant love once I saw the second bar at the bottom. Second indicator also present now Thanks!


I would like to show the parameter in stats


I have tried to add the BMP to TapClock but the Adafruit Sensor Code needs around 10% Memory which is too much.
We need an smaller library.


Dear Edu, what is the version of your watchX board? It’s written on the Bluetooth side of the PCB.


Here is an TapClock v0.8.5 Version with BMP280 (Temp/Alt) Data in Stats but without an Setup Menu.

It uses the Adafruit BMP280 library which comes with the watchX libs.
Just a test from my end.