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.
- 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)
- 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
- 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
- warp-esp32-ethernet-brick Hardware design files of the WARP ESP32 Ethernet Brick
- evse-v3-bricklet Firmware source code and hardware design files of the EVSE 3.0 Bricklet
- nfc-bricklet Firmware source code and hardware design files of the NFC Bricklet
- esp32-ethernet-brick Hardware design files of the ESP32 Ethernet Brick
- warp-energy-manager-bricklet Firmware source code and hardware design files of the WARP Energy Manager Bricklet
- esp32-ethernet-brick Hardware design files of the ESP32 Ethernet Brick
- warp-energy-manager-v2-bricklet Firmware source code and hardware design files of the WARP Energy Manager 2.0 Bricklet
- warp-front-panel-bricklet Firmware source code and hardware design files of the WARP Front Panel Bricklet
. ├── backend ├── db_connector ├── docker ├── frontend └── wg-webclient
backend
The http backend server and relay server between the charger and the users browserdb_connector
A crate containing the types needed to interface with the database serverdocker
Files to run and build the docker containersfrontend
Website that is served by the webserverwg-webclient
The Wireguard implementation containing also a network stack and Http and Websocket client.
- Rust toolchain: https://www.rust-lang.org/tools/install
- Node: https://nodejs.org/en
- Wasm-pack: https://github.com/rustwasm/wasm-pack
- docker: https://www.docker.com/get-started/
For the production build only docker is needed since everything is build in a container.
- Create a
certs
directory indocker/nginx
and place a X.509 certificate and key in pem format namedcert.pem
andkey.pem
inside. - Fill in the needed variables in the env variables. All needed variables are listed inside the .env.example files.
- build the wg-package by running
wasm-pack build
insidewg-webclient
. - build the website by running
npm install && npm run build
insideremote-access-page
. - start the webserver + database by running
docker compose -f docker-compose-dev.yml up --build
insidedocker
. - start the backend server by running
cargo run
insidebackend
.
- Ensure that the host is accessible via a Fully Qualified Domain Name, otherwise creating a Lets Encrypt Certificate will fail.
- Fill in the needed variables in the env file. All needed variables are listed inside the .env.example files.
- Start everything with
docker compose up
inside thedocker
directory.