Sorgente completo, sotto una licenza che nominiamo
Il firmware ESP32 di RBgrid è pubblicato per intero: pipeline di misura, statistiche, motore tariffario, storage, REST/WebSocket/MQTT. Una build, ogni funzione. Il firmware non contiene pubblicità né telemetria verso di noi. Sorgente disponibile (source-available) sotto PolyForm Noncommercial 1.0.0: gratuito da usare, modificare e compilare per uso personale e non commerciale; uso commerciale tramite licenza.
- licenza (PolyForm Noncommercial 1.0.0)
- piattaforma ESP32-WROVER / ESP32-S3
- ESP-IDF 5.5.1
- 16 MB di flash
- v1.2.1
Licenza, in parole semplici
PolyForm Noncommercial 1.0.0. Non è una licenza open source approvata da OSI, e non la chiamiamo così. Ecco cosa significa per voi:
| Eseguirlo a casa, nel vostro laboratorio, in una scuola o in un'associazione no-profit | Sì, gratuito |
|---|---|
| Leggere, modificare, ricompilare, tenere un fork privato | Sì |
| Condividere la vostra versione modificata con altri, in modo non commerciale | Sì, sotto la stessa licenza |
| Usarlo all'interno di un'attività a scopo di lucro, vendere dispositivi o kit che lo eseguono, installarlo per clienti paganti | Tramite licenza — scrivete a info@rbamp.com |
| Usare il nome o il logo RBgrid su un fork | No — rinominate il fork |
| Usare le librerie dei moduli rbAmp in qualsiasi progetto, commerciale o no | Sì — sono MIT, separate da questa licenza |
Le parti di terze parti mantengono le proprie licenze (ESP-IDF, driver I²C patchato — Apache-2.0; littlefs — MIT/BSD): vedi NOTICE.
Perché questa licenza: le vendite dei moduli finanziano il progetto; la licenza mantiene RBgrid gratuito per le persone e permette alle aziende che lo costruiscono di contribuire in cambio.
Cosa ottenete
components/rbpower/(raccolta I²C rbAmp, statistiche, motore tariffario, storage, REST/WS, MQTT)main/(app, bridge rbAmp, hub ESP-NOW, log degli eventi)webapp/(il sorgente della web app — TypeScript, il suo design system, script e documentazione)components/esp_driver_i2c/(driver I²C ESP-IDF patchato, Apache-2.0, vedi NOTICE)components/rbbench/ecomponents/bench_kit/(l'ambiente di test usato per le misure)examples/docs/FLASHING.md,partitions.csv,sdkconfig.defaults,CHANGELOG.md,LICENSE,COMMERCIAL.md,NOTICE.
Non in questo repository: il componente ESP-IDF di rbAmp (rb-amp/rbamp-esp-idf, MIT), scaricato automaticamente in fase di build.
Come è costruito
ESP32-WROVER o ESP32-S3 (N16R8), PSRAM richiesta; 16 MB di flash, due slot OTA con rollback; storico per fino a 12 punti di misura (gli altri mostrano valori live). Lo storico parte dalla v1.1.0: un taglio netto; lo sviluppo prosegue pubblicamente da qui. Il firmware funziona solo via API senza il pacchetto dell'app.

Compilazione e flashing
ESP-IDF v5.5.1 fissato (anche v5.4.1 compila); il componente ESP-IDF di rbAmp viene scaricato automaticamente. Oppure flashate l'immagine di release senza compilare, e installate la web app dalla release — vedi Inizia.
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: auto-descrittive
GET /api/v1/schema elenca ogni endpoint con metodi e parametri — il riferimento su questo sito è generato da lì (un descrittore personalizzato, non OpenAPI)
REST
/api/v1summary, history, export.csv, economics, units, sensors, events
REST
/api/systemconfigurazione, unità, piano tariffario, MQTT, Wi-Fi, ora, sicurezza, token, OTA, backup/ripristino, caricamento UI
Frame WebSocket v2 + MQTT
canale di comando, discovery per HA
Le scritture richiedono il token di amministrazione; le letture sono aperte sulla vostra LAN o protette da un token di lettura; lista CORS consentiti per i client browser.
Issue, discussioni, pull request
Bug e richieste di funzionalità vanno su GitHub Issues; domande e condivisione di progetti nelle Discussions. I contributi sono accettati sotto il Developer Certificate of Origin — mantenete il vostro copyright e certificate di avere il diritto di inviare il codice. Il vostro contributo è concesso in licenza secondo i termini del progetto: PolyForm Noncommercial 1.0.0. Tutto il resto lo chiediamo nella pull request, non in anticipo.
Il nome e il logo RBgrid restano al progetto; i fork vengono rinominati.