Legal
Disclaimer — independent, unaffiliated project
This is an independent, community-developed project. It is not affiliated with, sponsored by, endorsed by, or in any way associated with any of the OEMs or US-side brand owners whose hardware it interoperates with. Brand and model names are used solely in a descriptive (nominative) capacity to identify the hardware this project replaces firmware on; all trademarks, service marks, and product names remain the property of their respective owners.
No proprietary firmware, source code, signing keys, or other protected material from any OEM is redistributed by this project.
Per-board nominative-use statement — Rippleon ROC family
The names "Rippleon" and "ROC001" are used solely to identify the hardware this project interoperates with. This project is not affiliated with, sponsored by, or endorsed by RIPPLEON Energy or any of its subsidiaries.
If you are a representative of RIPPLEON Energy and have a concern about this repository, please open a GitHub issue and we will engage in good faith.
Scope of firmware replacement
OpenEVCharger replaces both halves of the stock firmware on the user's own hardware:
- Safety MCU (GD32F205VG on Rippleon; Nations N32G45x on the in-progress Nexcyber port) — bare-metal C + FreeRTOS safety core. A clean-room rewrite modelled on the OpenEVSE J1772 / fault / self-test approach (see docs/superpowers/specs/ ); no upstream OpenEVSE source code is incorporated, and no portion of any stock vendor firmware is included or derived.
- Wi-Fi/BLE companion module (BK7231N on
Rippleon's FC41D; RTL8720CF / AmebaZ2 on Nexcyber's WBR2) —
ESPHome + LibreTiny, original integration code
(fc41d/openevcharger.yaml
+ the local
openevcharger_tlvcomponent) talking to the MCU over a custom TLV protocol on a single shared UART.
Both images are original work and ship as a complete, voluntary
replacement for the stock vendor firmware on each chip. Stock
firmware is preserved via the documented
tools/stock_backup.sh
workflow before flashing, so installation is reversible if a
stock SWD dump was taken beforehand.
Protocol documentation and reverse-engineering artefacts in this repository (UART/Bluetooth captures, SWD dumps, disassembly notes for stock vendor images) were developed independently from publicly observable behaviour and from analysis of the user's own purchased hardware, for the sole purpose of interoperability — a use expressly permitted by 17 U.S.C. § 1201(f) (US) and Article 6 of EU Directive 2009/24/EC.
Installing this firmware will void the manufacturer's warranty and may render the device unusable. Use at your own risk.