38 lines
1.3 KiB
Markdown
38 lines
1.3 KiB
Markdown
# 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:
|
|
|
|
```yaml
|
|
wifi_ssid: "ssidhere"
|
|
wifi_password: "keyhere"
|
|
```
|
|
|
|
Adapt the config flags `reverse`, `common_cathode`, and `segment_first` in the component configuration in the main YAML
|
|
for your display type.
|
|
|
|
Build and upload the config with esphome CLI, or the dashboard.
|
|
See [the ESPHome CLI Getting Started Guide](https://esphome.io/guides/getting_started_command_line.html)
|
|
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 not tested well, due to missing hardware.
|