ESPHome config for a shift-register based clock
Find a file
2024-01-21 20:39:18 +01:00
components/spi_74hc595_display add configurable bitflips 2024-01-21 20:39:18 +01:00
.gitignore add ESP32 clock 2024-01-12 22:49:50 +01:00
esp32-clock-template.yaml better test string, faster transfer 2024-01-20 02:31:18 +01:00
LICENSE add ESP32 clock 2024-01-12 22:49:50 +01:00
Readme.md add ESP32 clock 2024-01-12 22:49:50 +01:00

ESP32 Clock

This is a YAML config file + driver for a clock based on several LED segment displays driven by SN74HC595 shift registers.

Hardware

Connect the shift registers like this, or adapt the pin config as needed:

  • Data input (DIO) to ESP GPIO19
  • Shift clock input (SCK) to ESP GPIO18
  • Latch / register clock input (RCK) to ESP GPIO5

Keep in mind that the ESP32 is a 3.3V device when connecting to a 5V display.

Setup

Set the board type in the YAML (default should also work on most ESP32 devices) Adapt the config as needed for the fallback AP and if wanted, api key. Create a secrets.yaml containing this:

wifi_ssid: "ssidhere"
wifi_password: "keyhere"

Build and upload the config with esphome CLI, or the dashboard. See the ESPHome CLI Getting Started Guide how to do that.

License

The driver in components/ is directly based on the existing MAX7219 driver in ESPHome and as such subject to the GPLv3 and MIT licenses, as outlined in the LICENSE document (also copied from ESPHome).

Open Issues

The actual segment mapping is currently untested, due to missing hardware. It currently is still the same as in the MAX7219 driver.