SignalK / SensESP

Universal Signal K sensor framework for the ESP32 platform
https://signalk.org/SensESP/
Apache License 2.0
158 stars 82 forks source link
arduino esp32 platformio signalk

SensESP

Introduction

TL;DR: Click here for the Getting Started documentation!

SensESP is a Signal K sensor development toolkit for the ESP32 platform. If you are a boater (or a professional developer!) who wants to build a custom Wi-Fi connected sensor for your boat, this is the toolkit you need. SensESP runs on commonly available ESP32 boards and helps you get sensor readings from physical sensors and transform them to meaningful data for Signal K or other outputs.

SensESP is built on the Arduino software development framework, a popular open source platform for embedded development. (Note that this refers only to the software stack - Arduino hardware is not supported.) To automate the management of external libraries, it also heavily relies on PlatformIO, a cross-platform build system for embedded devices (in other words, Arduino IDE is not supported).

SensESP features include:

To use SensESP, you need an ESP32 development board and a way to power it from the boat's 12V or 24V nominal power system. This can be done with commonly available ESP32DevKit boards and external DC-DC converters, or alternatively, the Sailor Hat with ESP32 (SH-ESP32) has all these features baked into a developer-friendly board and enclosure kit.

Example use cases of SensESP include:

At heart, SensESP is a development toolkit, and not ready-made software. This means that you will need to do some simple programming to use it. Don't worry, though. The project is newbie-friendly, so you don't need to know much to get started. A lot of examples and tutorials are provided, and some related projects also provide ready-to-use firmware for specific use cases.

Documentation

To get started, see the project documentation.

For reference, the old SensESP version 1 documentation is still available at the repository wiki.

Getting help

Discussion about SensESP happens mostly on the Signal K Discord on the #sensesp channel. To register as a new user, follow the invite link at signalk.org.

Another place for SensESP discussions is the discussion board on the SensESP GitHub repository.

Getting Started with Version 3

Major Changes

Migrating Existing Projects

Development

The frontend project is in the frontend directory tree. To build the frontend, you need to have Node and pnpm installed. Install the required dependencies:

./run install-frontend

Then build the frontend:

./run build-frontend

This will both build the project and save the deployment files in C++ source files suitable for embedding in the SensESP firmware.

To start the development server, run:

cd frontend
pnpm run dev