devcybiko / rpi-binary-clock

Vintage Binary Clock project resurrected using RPi Pico

Home Page:https://drfrancintosh.wordpress.com/pico-binary-clock/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

rpi-binary-clock

  • Converting an old, broken Graymark Binary Clock to use RPi-Pico-W
  • NOTE: I selected micropython over circuitpython because uPy supported the BLE chip
  • I also use AdaFruit's BlueFruit app on iOS to communicate with the clock
    • in UART mode
  • hard-coded to "mpy-uart"
  • hard-coded UUID = 6E400001-B5A3-F393-E0A9-E50E24DCCA9E
    • need to research how this number is created

GPIO

  • GPIO 0-3: Ones of seconds (0-9, little endian)
  • GPIO 4-6: Tens of seconds (0-5, little endian)
  • GPIO 7-10: Ones of minutes (0-9, little endian)
  • GPIO 11-13: Tens of minutes (0-5, little endian)
  • GPIO 14-17: Hours (1-12, little endian)

FEATURES

  • Bluetooth allows updating the time
    • format: HHMMSS
  • Uses RTC Module for setting/getting time

TODO

  • wire circuit board
    • "risers" for RPi Pico W
    • ribbon cable to LEDs
    • ribbon cable to pushbuttons
  • update BLE to use command line
    • perhaps key=value or verb value
  • push buttons on the back
    • Hold
    • Slow
    • Fast
  • 5V power supply?
    • battery powered currently
    • rechargeable batteries?
  • Add config file (writable via BLE commands)
  • Add WiFi time setting (NTP)
  • Add WWVB Atomic clock time setting
  • Add Date setting
  • Add Timezone setting
  • Add DST setting
  • Add HTTP server?
  • Add special "icon" displays
    • box, house, etc...

FILES

  • binary_clock.py: The main program
    • NOTE: Store as "main.py" to run at boot time
  • ble_advertising.py: From uPy github repo
    • creates the bluetooth connection
  • ble_simple_peripheral.py
    • creates the serial port connection
  • ble_blink.py
    • exaple: toggle led with BLE
  • localtime.py
    • sample of how to do the binary math etc...

REFERENCES

About

Vintage Binary Clock project resurrected using RPi Pico

https://drfrancintosh.wordpress.com/pico-binary-clock/


Languages

Language:Python 100.0%