Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/zebrajaeger/esp32clock

WiFI Clock, synchronized with NTP, WiFi and timezone settings via web interface. Auto access point mode. Arduino-OTA updateable.
https://github.com/zebrajaeger/esp32clock

arduino-ota autoconnect esp32 i2c ntp ntp-client oled-display platformio timezone wifi

Last synced: 7 days ago
JSON representation

WiFI Clock, synchronized with NTP, WiFi and timezone settings via web interface. Auto access point mode. Arduino-OTA updateable.

Awesome Lists containing this project

README

        

# ESP32Clock

![GitHub Workflow Status](https://img.shields.io/github/workflow/status/zebrajaeger/Esp32Clock/CI)
[![License: LGPL v3](https://img.shields.io/badge/License-LGPL%20v3-blue.svg)](https://www.gnu.org/licenses/lgpl-3.0)
![PlatformIO](https://img.shields.io/badge/PlatformIO-Community-orange.svg)

## Features

- Gets time from NTP
- mDNS
- Access Point mode for configuration via Browser
- Name
- Timezone
- Factory Reset
- Arduino OTA Update possible (OTA = Over The Air)
- 128x64 OLED Display
- Time
- Date
- IP/Connection state
- Values are stored in NVM

![Prototype](./doc/IMG_20200112_152020_319_1000.jpg)

![Screenshot](./doc/autoconnect.png)

## Connection

|ESP32|OLED Display|
|-|-|
|D32|SDA|
|D33|SCL|

## ToDo

- Using Preferences instead own abstracton layer for NVM.
- Move files on toplevel to subfolders.
- Move configserver_menu.json to src folder.

## Build and Upload

- Download and install Visual Studio Code
- Install PlatformIO as Visual Studio Code plugin
- Download or clone this project
- Open with with PlatformIO/Visual Studio Code
- Open platformio.ini and change IP (for OTA Updates) and/or Port (at least for first update to enable OTA updates) for your device.
- Build and Upload

## Configuration

- If the device is uninitialized it spawns a new Access Point you can connect.
- Configure AP and Reset.
- The device is now available into the configured network. IP is on the right bottom of display;