Der vollständige Quellcode, unter einer benannten Lizenz
Die ESP32-Firmware von RBgrid wird vollständig veröffentlicht: Messpipeline, Statistiken, Tarif-Engine, Speicher, REST/WebSocket/MQTT. Ein Build, jede Funktion. Die Firmware enthält keine Werbung und keine Telemetrie an uns. Source-available unter PolyForm Noncommercial 1.0.0: kostenlos nutzbar, veränderbar und baubar für private und nicht-kommerzielle Zwecke; kommerzielle Nutzung nur per Lizenz.
- Lizenz (PolyForm Noncommercial 1.0.0)
- Plattform ESP32-WROVER / ESP32-S3
- ESP-IDF 5.5.1
- 16 MB Flash
- v1.2.1
Lizenz, in einfachen Worten
PolyForm Noncommercial 1.0.0. Es ist keine OSI-zugelassene Open-Source-Lizenz, und wir nennen sie auch nicht so. Das bedeutet für Sie Folgendes:
| Betreiben Sie es zu Hause, in Ihrer Werkstatt, an einer Schule oder in einer gemeinnützigen Organisation | Ja, kostenlos |
|---|---|
| Lesen, verändern, neu bauen, einen privaten Fork behalten | Ja |
| Teilen Sie Ihre veränderte Version nicht-kommerziell mit anderen | Ja, unter derselben Lizenz |
| In einem gewinnorientierten Unternehmen einsetzen, Geräte oder Kits mit RBgrid verkaufen, für zahlende Kunden installieren | Per Lizenz — schreiben Sie an info@rbamp.com |
| Den Namen oder das Logo RBgrid auf einem Fork verwenden | Nein — benennen Sie den Fork um |
| Die rbAmp-Modulbibliotheken in jedem Projekt verwenden, kommerziell oder nicht | Ja — sie sind MIT, getrennt von dieser Lizenz |
Drittanbieter-Teile behalten ihre eigenen Lizenzen (ESP-IDF, gepatchter I²C-Treiber — Apache-2.0; littlefs — MIT/BSD): siehe NOTICE.
Warum diese Lizenz: Modulverkäufe finanzieren das Projekt; die Lizenz hält RBgrid für Privatpersonen kostenlos und lässt Unternehmen, die darauf aufbauen, etwas zurückgeben.
Was Sie bekommen
components/rbpower/(rbAmp-I²C-Erfassung, Statistiken, Tarif-Engine, Speicher, REST/WS, MQTT)main/(App, rbAmp-Bridge, ESP-NOW-Hub, Ereignisprotokoll)webapp/(der eigene Quellcode der Web-App — TypeScript, eigenes Design-System, Skripte und Dokumentation)components/esp_driver_i2c/(gepatchter ESP-IDF-I²C-Treiber, Apache-2.0, siehe NOTICE)components/rbbench/undcomponents/bench_kit/(das Testgerüst für die Messläufe)examples/docs/FLASHING.md,partitions.csv,sdkconfig.defaults,CHANGELOG.md,LICENSE,COMMERCIAL.md,NOTICE.
Nicht in diesem Repo: die rbAmp-ESP-IDF-Komponente (rb-amp/rbamp-esp-idf, MIT), wird beim Bauen automatisch geladen.
Wie es aufgebaut ist
ESP32-WROVER oder ESP32-S3 (N16R8), PSRAM erforderlich; 16 MB Flash, zwei OTA-Slots mit Rollback; Verlauf für bis zu 12 Messpunkte (die übrigen zeigen Live-Werte). Der Verlauf beginnt mit v1.1.0: ein sauberer Schnitt; die Entwicklung läuft von hier an öffentlich weiter. Die Firmware arbeitet rein über die API, ohne das App-Paket.

Bauen und flashen
ESP-IDF v5.5.1 fest angepinnt (v5.4.1 baut ebenfalls); die rbAmp-ESP-IDF-Komponente wird automatisch geladen. Oder flashen Sie das Release-Image ohne Bauen und installieren Sie die Web-App aus dem Release — siehe Loslegen.
git clone https://github.com/rb-amp/RBgrid.git
cd RBgrid
components/rbpower/certs/gen_dev_cert.sh # once, before the first build (generates the development certificate)
idf.py set-target esp32
idf.py build
idf.py -p <PORT> flash # <PORT> e.g. /dev/ttyUSB0, COM3API: selbstbeschreibend
GET /api/v1/schema listet jeden Endpunkt mit Methoden und Parametern auf — die Referenz auf dieser Seite wird daraus erzeugt (ein eigener Descriptor, kein OpenAPI)
REST
/api/v1Zusammenfassung, Verlauf, export.csv, Economics, Einheiten, Sensoren, Ereignisse
REST
/api/systemKonfiguration, Einheiten, Tarifplan, MQTT, WLAN, Zeit, Sicherheit, Token, OTA, Backup/Restore, UI-Upload
WebSocket-Frame v2 + MQTT
Befehlskanal, HA-Discovery
Schreibzugriffe benötigen das Admin-Token; Lesezugriffe sind in Ihrem LAN offen oder durch ein Lese-Token geschützt; CORS-Allow-List für Browser-Clients.
Issues, Discussions, Pull Requests
Fehler und Funktionswünsche gehen an GitHub Issues; Fragen und Erfolgsberichte an Discussions. Beiträge werden unter dem Developer Certificate of Origin angenommen — Sie behalten Ihr Urheberrecht und bestätigen, dass Sie das Recht haben, den Code einzureichen. Ihr Beitrag steht unter den Bedingungen des Projekts: PolyForm Noncommercial 1.0.0. Alles darüber hinaus verlangen wir im Pull Request, nicht im Voraus.
Der Name und das Logo RBgrid bleiben beim Projekt; Forks werden umbenannt.