Skip to content

Latest commit

 

History

History
60 lines (34 loc) · 2.97 KB

README.md

File metadata and controls

60 lines (34 loc) · 2.97 KB

BerlinUhr

Berlin Uhr or Mengenlehreuhr, a fancy retro style clock that's a bit tricky to read: https://en.wikipedia.org/wiki/Mengenlehreuhr

What is this

The BerlinUhr is a standalone PCB with all the needed parts on it, just connect power over the USB-C and it will run.

The ATtiny167 receives the actual time from the DS3231 real time clock chip. Then displays it with 24 leds driven by the TLC5947. The brightness is adopted by measuring the ambient light with a KPS-3227.

Building it

  1. PCB, source it with the gerbers: https://github.com/designer2k2/BerlinUhr/tree/main/Berlin_Uhr/gerber
  2. Schematic: https://github.com/designer2k2/BerlinUhr/blob/main/Berlin_Uhr/Schematic.pdf
  3. BOM, interactive BOM here: https://github.com/designer2k2/BerlinUhr/tree/main/Berlin_Uhr/bom
  4. Bootloader, burn the Micronucleus Bootloader to the ATtiny167 with ISP: https://github.com/ArminJo/DigistumpArduino
  5. Insert CR1216 battery for the RTC to keep time also while the USB power is gone.
  6. Software, upload the Code from the scr folder: https://github.com/designer2k2/BerlinUhr/tree/main/src/berlin-uhr

Setting the time

  1. The time gets set the first time the code is uploaded to the time from the pc.
  2. To change it afterwards, push the A and B buttons on the edge / backside.

Reading the time

This is special on the Berlin Clock. A practical explanation is given in the wikipedia article: https://en.wikipedia.org/wiki/Mengenlehreuhr#Time_encoding

The Berlin Clock is easy to read after a couple of days :-)

Modifying it

KiCad Version of at least 6.0.2 is needed due to a bug in the KPS-3227 Footprint in older Versions: https://gitlab.com/kicad/libraries/kicad-symbols/-/issues/3164

How it looks

grafik

Its 17:45 😃

It can hang on a wall or sit on a table with the help of a USB-C phone docking station.

The bare PCB:

grafik

ISP Programming the Bootloader to the ATtiny with the help of a Arduino Uno:

grafik

Populated backside:

grafik