10,000 Hour Seven Segment Display Stopwatch

10,000 Hour Seven Segment Display Stopwatch

Frustrated by learning arcane embedded-C commands with no documentation? HAL bloat got you down? Don't know how the hell STM32CubeIDE's build process works? Worry not, you can be comforted by the fact that those 10 hours debugging linker errors is 10 hours towards your 10,000 of mastery. And when you get there you won't even think, "it's not even a real clock, there's not even an RTC module" – it doesn't matter since you're a Master now.

(yes, you can even use this timer to count your hours coding in C++, nay Python, this is an Arduino project after all)

snippets/02-Arduino-ESP/Arduino-Mega/03-tm1637-counter/03-tm1637-counter.ino at main · smaroukis/snippets
Contribute to smaroukis/snippets development by creating an account on GitHub.

Fun things from this project

EEPROM.write() / EEPROM.put() take ~3.4ms both for 3 bytes and a struct with those bytes. The docs mention that any EEPROM.write() will take about 3.3ms, so it's the setup and access to the ROM that busies the CPU, not necessarily how many bytes are written.

Measuing EEPROM.write() time

1000uF capacitor across USBVCC extended 5V—3.3V turn off time from 1.5 ms to 40ms (hopefully enough for an EEPROM.write())

Put the hunking cap here! (Arduino mega R3)