Skip to content

Firmware for the wall clock installed in the hallway of http://sch57.ru

License

Notifications You must be signed in to change notification settings

Bougakov/wallclock

Repository files navigation

Firmware for the clock in the hallway of http://sch57.ru

This is a firmware for a giant clock made of multiple layers of plywood and acrylic and five meters of "WS2812b" ("Neopixel") LED strip. It uses GPS module to set the correct time from satellites on the startup. RTC module ("DS1307") is used for timekeeping.

During the lessons and in after-school hours it displays current time; during the breaks it acts as a count-down timer.

This clock is a part of a large-scale redesign of School 57 by a Russian architect and designer, Mia Karlova, which won the "Best public space" award by AD Magazine in https://www.admagazine.ru/ad-design-award/novyj-oblik-moskovskoj-shkoly-57 and was featured in FRAME magazine: https://www.frameweb.com/news/moscow-school-57-mia-karlova

Assembled clock on the wall

Click to view video on Instagram: Preview - Instagram

Initally, a large TV screen was used instead of this clock:

Old TV was replaced with this clock

The clock can be assembled from laser-cut sheets of 3-4mm plywood. The layouts (in AutoCAD format) are designed in such a way that any laser cutter with working area of as low as 300x600mm could be used. Few dozen of 40mm M3 screws are needed for assembly. Diffusors are made of 2mm matte acrylic.

Click to view video on Instagram: Countdown - Instagram

Click the preview of the AutoCAD drawing to read more on the assembly:

AutoCAD drawing in full glory

Wiring

  • GPS is connected (via "MAX232" RS232 to TTL converter) to D3 pin of Arduino. Don't forget to double-check the baud rate of your GPS.
  • LED strip (288 "WS2812" LEDs) – to pin D2.
    • Each "digit" is made of 7 segments, 10 LEDs each.
    • "Colon" in the middle is made of 2 segments, 4 LEDs each.
  • Controller – an Arduino Nano (Atmega 328P, "old bootloader")

Wiring

Important notes

Avoid voltage drop by wiring LED strip to external power source in multiple points. For heat dissipation use 5m of 10mm aluminum strip cut to length of LED fragments. There are vent holes on the back that allow aluminum strips to dissipate heat to the wall. Fix the LEDs and strips using zip ties.

To radically simplify the programming of the clock make sure you connect the segments in each digit in the identical order. Check out attached Excel file to get the idea on how to do it.

Adjusting time table for your school:

To change the time ranges check out this code fragment:

  break2start = makeTime(year(local), month(local), day(local), 10, 40,  0);
  break2end   = makeTime(year(local), month(local), day(local), 10, 54, 59);

It tells Arduino that the break after the 2nd lesson is between 10:40am and 10:55. Please note that times entered here need to be in the local timezone, not UTC.

About

Firmware for the wall clock installed in the hallway of http://sch57.ru

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages