Skip to content

Tinkerforge/esp32-remote-access

Repository files navigation

ESP32-Remote-Access

This repository contains everything needed to build and run the (WIP) remote access server for Tinkerforge WARP Chargers, WARP Energy Managers and ESP32-/ESP32-Ethernet-Bricks.

Repository Overview

Software

  • esp32-firmware Please report any issues concerning WARP hard- and software here! Source code of the ESP32 firmware shared between all WARP Chargers and Energy Managers
  • tfjson SAX style JSON serializer and deserializer
  • tfmodbustcp Modbus TCP server and client implementation
  • tfocpp OCPP 1.6 implementation
  • tftools Miscellaneous tools and helpers
  • esp32-remote-access Source code of the my.warp-charger.com remote access server
  • warp-charger The source code of (docs.)warp-charger.com and the printed manual, released firmwares, datasheets and documents, as well as some tools and hardware design files
  • api.warp-charger.com Serves APIs that are used by WARP Chargers to obtain relevant public information like day ahead prices
  • vislog.warp-charger.com Visualizes WARP Charger logs and EVSE debug protocols
  • dbus-warp-charger Integrates WARP Chargers into a Victron Energy Venus OS device (e.g. Cerbo GX)

WARP Charger Hardware

  • esp32-brick Hardware design files of the ESP32 Brick
  • evse-bricklet Firmware source code and hardware design files of the EVSE Bricklet
  • rs485-bricklet Firmware source code and hardware design files of the RS485 Bricklet

WARP2 Charger Hardware

  • esp32-ethernet-brick Hardware design files of the ESP32 Ethernet Brick
  • evse-v2-bricklet Firmware source code and hardware design files of the EVSE 2.0 Bricklet
  • nfc-bricklet Firmware source code and hardware design files of the NFC Bricklet

WARP3 Charger Hardware

WARP Energy Manager Hardware

WARP Energy Manager 2.0 Hardware

Forked/patched projects

File structure

.
├── backend
├── db_connector
├── docker
├── frontend
└── wg-webclient
  • backend The http backend server and relay server between the charger and the users browser
  • db_connector A crate containing the types needed to interface with the database server
  • docker Files to run and build the docker containers
  • frontend Website that is served by the webserver
  • wg-webclient The Wireguard implementation containing also a network stack and Http and Websocket client.

Build

Prerequisites

For the production build only docker is needed since everything is build in a container.

Developement build

  1. Create a certs directory in docker/nginx and place a X.509 certificate and key in pem format named cert.pem and key.pem inside.
  2. Fill in the needed variables in the env variables. All needed variables are listed inside the .env.example files.
  3. build the wg-package by running wasm-pack build inside wg-webclient.
  4. build the website by running npm install && npm run build inside remote-access-page.
  5. start the webserver + database by running docker compose -f docker-compose-dev.yml up --build inside docker.
  6. start the backend server by running cargo run inside backend.

Production build

  1. Ensure that the host is accessible via a Fully Qualified Domain Name, otherwise creating a Lets Encrypt Certificate will fail.
  2. Fill in the needed variables in the env file. All needed variables are listed inside the .env.example files.
  3. Start everything with docker compose up inside the docker directory.

About

Server side of the remote access for Tinkerforge Warp-Chargers.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •