Skip to content

Firmware for the esp32 based on the esp-idf SDK to setup, retrieve surf data, and display it on different displays

License

Notifications You must be signed in to change notification settings

second-string/spot-check-firmware

Repository files navigation

spot-check-firmware

Overview image of Spot Check rev. 3.1

Embedded C code for the Spot Check project

Spot Check is a custom hardware, firmware, and software project to download and display calendar, weather, and surf forecast information. There are 4 main parts to the project, each with its own repo:

The basic behavior of this firmware is to access a custom Typescript API, parse the JSON or binary image payload, and display that information. There is OTA support where each device checks with the server on boot and compares its current version with the available server version and updates its firmware automatically if behind. Wifi provisioning and device configuration is performed through the iOS app to securely transfer network credentials and settings to and from the firmware.

This project is based on the esp-idf v5.0 SDK which itself is based on a FreeRTOS port. The firmware mostly makes use of the lower-level FreeRTOS structures and functionality rather than the esp-idf helpers when available.

Rev 3.1

Front image of Spot Check rev. 3.1

Prototype enclosure for rev. 3.x

Spot Check rev. 3.1 PCBA

Rev. 3.1 PCBA

Firmware versions 0.1.0 and later
This firmware works with hardware rev 3.1 detailed in the hardware repo README. Features include accurate time and date, air temp, wind speed and direction, and swell and tide chart display on an ED060SC4 e-ink display. There is also a CLI for interacting with the device over a USB <-> serial connection.

Rev 1 / 2

Spot Check rev. 1 & 2 display

LED strip display for rev. 1 and 2

Spot Check rev 2 PCBA

Rev. 2 PCBA

Spot Check rev 1 PCBA

Rev. 1 PCBA

Firmware versions 0.0.0 to 0.0.7
This firmware works with hardware revs 1 and 2 detailed in the hardware repo README. Air temperature, wind speed and direction, and tide height are displayed using a 60x6 matrix of LEDs created by stacking WS2812 strips.

About

Firmware for the esp32 based on the esp-idf SDK to setup, retrieve surf data, and display it on different displays

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages