Aggiornare Venus OS nel Raspberry Pi o in Victron Energy Cerbo GX tramite Aggiornamenti online

31 dicembre 2022

Qualche giorno fa vi abbiamo mostrato come installare Victron Energy Venus OS sul Raspberry Pi.

Per chi se lo fosse perso, ecco il link alla guida.

Nel frattempo sono usciti alcuni aggiornamenti, quindi ora vi mostriamo come aggiornare il sistema :-)

Colleghiamoci al Raspberry Pi o al CerboGX tramite console o schermo touch

Colleghiamoci alla Console Remota:
http://venus.local
Oppure:
http://INDIRIZZO_IP

In alternativa possiamo utilizzare lo schermo touch se ne siamo dotati ;-)

Aggiorniamo Venus OS

Impostiamo la sola verifica e non l'aggiornamento automatico:

Impostazioni > Firmware > Aggiornamenti online > Aggiornamento automatico: Solo verifica

Scegliamo la versione stabile:

Impostazioni > Firmware > Aggiornamenti online > Update feed: Ultima versione

Verifichiamo gli aggiornamenti disponibili:

Impostazioni > Firmware > Aggiornamenti online > Cerca aggiornamenti: Premere per verificare (premere il pulsante)

Aggiornare il sistema:

Impostazioni > Firmware > Aggiornamenti online > Aggiornamento disponibile: Premere per aggiornare a vX.XX (premere il pulsante)

A questo punto dovrebbe apparire:

Impostazioni > Firmware > Aggiornamenti online > Installazione vX.XX in corso...

Victron energy venus os aggiornamento in corso

Dopo qualche minuto la console si disconnetterà con il messaggio: Disconnected.

Cliccare sul link: Reconnect

Verificare se l'aggiornamento è andato a buon fine:

Impostazioni > Firmware > Versione firmware: vX.XX

Verifichiamo la disponibilità di ulteriori aggiornamenti

Se sul Raspberry Pi o sul CerboGX era installata una versione obsoleta, potrebbe darsi che debbano essere effettuati degli aggiornamenti multipli.

Verifichiamo gli aggiornamenti disponibili:

Impostazioni > Firmware > Aggiornamenti online > Cerca aggiornamenti: Premere per verificare (premere il pulsante)

In caso ne siamo presenti ripetere la procedura di aggiornamento, altrimenti proseguire qui sotto.

Ri-Applichiamo le modifiche manuali al Venus OS installato sul Raspberry Pi: relè, luminosità schermo, etc

Abilitiamo l'accesso come Superutente:

Impostazioni > Generali > Livello di accesso > Utente e installatore (la password è ZZZ)

Una volta tornati nel menu Generale, con la riga Livello di accesso sottolineata di azzurro, tenere premuta la freccia a destra della tastiera.
Apparirà il livello di accesso: Superutente

Impostare una password di root:

Impostazioni > Generali > Livello di accesso > Set root password > impostare quello che si vuole

Abilitare SSH:

Impostazioni > Generali > Livello di accesso > SSH su LAN > Abilitare

Colleghiamoci al Raspberry Pi tramite SSH da un altro pc.

ssh root@INDIRIZZO_IP

Se utilizzi Windows puoi collegarti tramite Putty.

Rendiamo il file system scrivibile con questo comando:

/opt/victronenergy/swupdate-scripts/remount-rw.sh

Abilitiamo lo schermo touch digitando questo comando:

mv /etc/venus/headless /etc/venus/headless.off

Espandiamo il file system:

/opt/victronenergy/swupdate-scripts/resize2fs.sh

Lo schermo touch ufficiale del raspberry di norma, come dicevamo, va ruotato di 180 gradi:

nano /u-boot/config.txt
[...]
sotto:
[all]
dtparam=spi=on
inserire:
lcd_rotate=2
disable_overscan=1
[...]

Salvare con: CTRL + x

Abilitiamo lo spegnimento dello schermo dopo X secondi:

echo "/sys/class/backlight/rpi_backlight/bl_power" > /etc/venus/blank_display_device

Ci portiamo nella cartella degli overlays:

cd /u-boot/overlays

Download overlay:

wget https://github.com/kwindrem/RpiDisplaySetup/raw/main/rpi-backlight-overlay.dtb -O rpi-backlight-overlay.dtb

Per i nuovi kernel abbiamo invece bisogno di questo:

wget https://github.com/kwindrem/RpiDisplaySetup/raw/main/rpi-backlight.dtbo -O rpi-backlight-overlay.dtb

Impostiamo l'intensità di luce:

echo "/sys/class/backlight/rpi_backlight" > /etc/venus/backlight_device

Disabilitiamo l'AutoBrightness:

dbus -y com.victronenergy.settings /Settings/Gui/AutoBrightness SetValue 0 > /dev/null

Impostiamo la luminosità minima e massima per il RPI display in /Settings/Gui/Brightness:

dbus -y com.victronenergy.settings /Settings AddSettings '%[{"path": "/Gui/Brightness", "default":255, "min":0, "max":255}]' > /dev/null

Ci portiamo nella cartella degli overlays:

cd /u-boot/overlays

Download overlay:

wget https://github.com/kwindrem/RpiDisplaySetup/raw/main/rpi-backlight-overlay.dtb -O rpi-backlight-overlay.dtb

Per i nuovi kernel abbiamo invece bisogno di questo:

wget -O https://github.com/kwindrem/RpiDisplaySetup/raw/main/rpi-backlight.dtbo -O rpi-backlight-overlay.dtb

Abilitiamo tutti e 4 i relè (di default ne è abilitato solo 1):

nano /etc/venus/gpio_list
[...]
# Relay 1 Pin 40 / GPIO 21
21 out relay_1
# Relay 2 Pin 11 / GPIO 17
17 out relay_2
# Relay 3 Pin 13 / GPIO 27
27 out relay_3
# Relay 4 Pin 15 / GPIO 22
22 out relay_4
[...]

Eseguiamo il backup del file di controllo stato dei relè e lo editiamo come segue (qui di default ne sono abilitati 2):

cp /opt/victronenergy/dbus-systemcalc-py/delegates/relaystate.py /opt/victronenergy/dbus-systemcalc-py/delegates/relaystate_Backup.py
nano /opt/victronenergy/dbus-systemcalc-py/delegates/relaystate.py
[...]
('/Relay/0/State', '/Settings/Relay/0/InitialState', 0, 0, 1),
('/Relay/1/State', '/Settings/Relay/1/InitialState', 0, 0, 1),
('/Relay/2/State', '/Settings/Relay/2/InitialState', 0, 0, 1),
('/Relay/3/State', '/Settings/Relay/3/InitialState', 0, 0, 1)
[...]

Eseguiamo il backup del file di configurazione dei relè e lo editiamo come segue (qui di default ne sono abilitati 2):

cp /opt/victronenergy/gui/qml/PageSettingsRelay.qml /opt/victronenergy/gui/qml/PageSettingsRelay_Backup.qml
nano /opt/victronenergy/gui/qml/PageSettingsRelay.qml
[...]
property VBusItem relay1Item: VBusItem { bind: "com.victronenergy.system/Relay/1/State" }
property bool hasRelay1: relay1Item.valid
property VBusItem relay2Item: VBusItem { bind: "com.victronenergy.system/Relay/2/State" }
property bool hasRelay2: relay2Item.valid
property VBusItem relay3Item: VBusItem { bind: "com.victronenergy.system/Relay/3/State" }
property bool hasRelay3: relay3Item.valid

MbItemOptions {
id: relay1Function
description: hasRelay1 ? qsTr("Function (Relay 2)") : qsTr("Function")
bind: Utils.path(bindPrefix, "/Settings/Relay/1/Function")
show: hasRelay1
possibleValues:[
MbOption { description: qsTr("Manual"); value: 2 },
MbOption { description: qsTr("Temperature"); value: 4 }
]
}

MbSwitch {
id: manualSwitch1
name: qsTr("Relay 2 On")
bind: "com.victronenergy.system/Relay/1/State"
show: hasRelay1 && relay1Function.value === 2 // manual
}

MbSwitch {
id: manualSwitch2
name: qsTr("Relay 3 On")
bind: "com.victronenergy.system/Relay/2/State"
show: hasRelay2 // manual
}

MbSwitch {
id: manualSwitch3
name: qsTr("Relay 4 On")
bind: "com.victronenergy.system/Relay/3/State"
show: hasRelay3 // manual
}
[...]

Riavviamo il sistema:

shutdown -r now

Verifichiamo che le configurazioni personalizzate siano state impostate correttamente

Colleghiamoci alla Console Remota:
http://venus.local
Oppure:
http://INDIRIZZO_IP

Verifichiamo ed eventualmente impostiamo il tempo di spegnimento del display:

Impostazioni > Display e lingua > Tempo di spegnimento display > 30 sec

Verifichiamo ed eventualmente impostiamo l'intensità di luce desiderata del display:

Impostazioni > Display e lingua > Impostare tramite lo slider

Verifichiamo ci siano tutti e 4 i relè ed eventualmente li ri-configuriamo a nostro piacimento:

Impostazioni > Relè

Ricordiamo che volendo possiamo comandare i nostri primi due relè, tramite la temperatura rilevata dai sensori Ruuvi Tag, mentre il 3 e 4 solo con apertura/chiusura manuali:

Impostazioni > Relè > Funzione (Relè X) > Temperatura
Impostazioni > Relè > Regole di controllo della temperatura

Ed ora? Un po' di spoiler!

Questi gli argomenti delle prossime guide (in ordine sparso):

- visualizzare lo stato delle celle ed i report del bms in Venus OS
- aggiornare manualmente il sistema tramite pendrive se non è disponibile una connessiona a internet
- installare tutte queste modifiche automaticamente sul raspberry Pi (anche se personalmente preferisco la versione manuale)
- personalizzare le schermate di Venus OS
- impostare un inverter Victron Energy tramite Console remota e Raspberry Pi

Quindi... Stay Tuned!!

Condividi

Potrebbero interessarti