Problema Librerie MenuBackend e Emonlib (per SCT-013-000) non sono compatibili?

Ciao a tutti,
sto creando un sistema con ATMega1284P (firmware Sanguino), display LCD 20x4 collegato in I2C con MCP23017, 5 pulsanti collegati a un PIN analogico con le dovute resistenze, e infine sensore di corrente SCT-013-000.
I pulsanti servono a visualizzare e gestire vari menu, tra i quali vorrei includerne uno che visualizzi il consumo di energia elettrica in realtime, grazie al sensore di cui sopra.
La libreria utilizzata per i menu è MenuBackend nella versione 1.4 (lo so, lo so… non è quella ufficiale… :slight_smile: ), la libreria per il display è la classica LiquidTWI2 e infine quella per il sensore di corrente è EmonLib di OpenEnergyMonitor. L’IDE utilizzato è la versione 1.6.5, su Linux Mint.

Orbene, tutto funziona, i menu creati sono un bel po’ e tramite i pulsanti gestisco tutto, accendo e spengo cose, e considerando che sono un programmatore della domenica ne sono quasi fiero :slight_smile: .

Unico problema la visualizzazione del consumo di corrente nell’apposito menu, ovvero: se faccio uno script senza menu (senza quindi includere la MenuBackend), che visualizzi soltanto il consumo sul display, esso viene visualizzato correttamente ed è anche quasi preciso. Se invece includo la libreria MenuBackend e metto la funzione per il sensore in uno dei menu, la visualizzazione del consumo non va, per esempio visualizza: “nessun carico” anche se il carico c’è, oppure valori del tutto sballati.

Ho fatto un casino di prove prima di postare, quindi mi viene da chiedermi se MenuBackend è incompatibile con Emonilib per qualche motivo? O magari è LiquidTWI2?

Vi posto lo script, con un tantino di vergogna viste le mie conoscenze :-), in versione semplificata: soltanto 3 menu, di cui il primo non visualizza nulla, il secondo DOVREBBE visualizzare il consumo di energia elettrica, e il terzo un “millis()/1000” tanto per fargli fare qualcosa.

mi scuso, ma se inserisco lo script il sistema mi dice che sono fuori dal limite dei 9000, pur se ho ridotto a circa 8900. Ho messo lo script su pastebin, spero non sia contrario alle regole del forum. In caso contrario fatemi sapere, grazie.

edit: ho visto che in alcuni post il codice è in attach... ho provveduto :slight_smile:

Vi ringrazio in anticipo per gli eventuali suggerimenti,
ciao

LCD_MenuBackend_EmonLib.ino (7.79 KB)

mi rispondo da solo con un mea culpa e una risposta ovvia:
bastava cambiare libreria per gestire i menu. Con arduino-menusystem, almeno da un primo veloce test, la visualizzazione del consumo di corrente funziona come si deve.
E posso usare l'IDE 1.8.5..

Inconsciamente era l'unica prova che non avevo fatto.. perché ora mi tocca cambiare/rifare tutti i millemila menu... :o

Un saluto :smiley: