[Solax X1] Rework inverter-mode

- redesign inverter-mode implementation
- enhancements to solax protocol version 1.7
- few german translation fixes
This commit is contained in:
SteWers 2022-01-08 21:46:23 +01:00
parent 26219eaebd
commit a4b218b89e
27 changed files with 200 additions and 121 deletions

View File

@ -922,10 +922,13 @@
#define D_SOLAR_POWER "Sonkrag" #define D_SOLAR_POWER "Sonkrag"
#define D_INVERTER_POWER "Omskakelaarkrag" #define D_INVERTER_POWER "Omskakelaarkrag"
#define D_STATUS "Status" #define D_STATUS "Status"
#define D_WAITING "Wag" #define D_SOLAX_MODE_0 "Wag"
#define D_CHECKING "Nagaan" #define D_SOLAX_MODE_1 "Nagaan"
#define D_WORKING "Werk" #define D_SOLAX_MODE_2 "Werk"
#define D_FAILURE "Mislukking" #define D_SOLAX_MODE_3 "Mislukking"
#define D_SOLAX_MODE_4 "Permanent Failure" // to be translated
#define D_SOLAX_MODE_5 "Software Update" // to be translated
#define D_SOLAX_MODE_6 "Selftest" // to be translated
#define D_SOLAX_ERROR_0 "Geen foutkode nie" #define D_SOLAX_ERROR_0 "Geen foutkode nie"
#define D_SOLAX_ERROR_1 "Netspanning verlies fout" #define D_SOLAX_ERROR_1 "Netspanning verlies fout"
#define D_SOLAX_ERROR_2 "Netspanning spanning fout" #define D_SOLAX_ERROR_2 "Netspanning spanning fout"

View File

@ -922,10 +922,13 @@
#define D_SOLAR_POWER "Слънчева мощност" #define D_SOLAR_POWER "Слънчева мощност"
#define D_INVERTER_POWER "Мощност на инвертора" #define D_INVERTER_POWER "Мощност на инвертора"
#define D_STATUS "Състояние" #define D_STATUS "Състояние"
#define D_WAITING "Очакване" #define D_SOLAX_MODE_0 "Очакване"
#define D_CHECKING "Проверка" #define D_SOLAX_MODE_1 "Проверка"
#define D_WORKING "Работи" #define D_SOLAX_MODE_2 "Работи"
#define D_FAILURE "Грешка" #define D_SOLAX_MODE_3 "Грешка"
#define D_SOLAX_MODE_4 "Permanent Failure" // to be translated
#define D_SOLAX_MODE_5 "Software Update" // to be translated
#define D_SOLAX_MODE_6 "Selftest" // to be translated
#define D_SOLAX_ERROR_0 "Липсва код за грешка" #define D_SOLAX_ERROR_0 "Липсва код за грешка"
#define D_SOLAX_ERROR_1 "Грешка - загуба на мрежата" #define D_SOLAX_ERROR_1 "Грешка - загуба на мрежата"
#define D_SOLAX_ERROR_2 "Грешка - мрежово напрежение" #define D_SOLAX_ERROR_2 "Грешка - мрежово напрежение"

View File

@ -922,10 +922,13 @@
#define D_SOLAR_POWER "Solar Power" #define D_SOLAR_POWER "Solar Power"
#define D_INVERTER_POWER "Inverter Power" #define D_INVERTER_POWER "Inverter Power"
#define D_STATUS "Status" #define D_STATUS "Status"
#define D_WAITING "Waiting" #define D_SOLAX_MODE_0 "Waiting"
#define D_CHECKING "Checking" #define D_SOLAX_MODE_1 "Checking"
#define D_WORKING "Working" #define D_SOLAX_MODE_2 "Working"
#define D_FAILURE "Failure" #define D_SOLAX_MODE_3 "Failure"
#define D_SOLAX_MODE_4 "Permanent Failure" // to be translated
#define D_SOLAX_MODE_5 "Software Update" // to be translated
#define D_SOLAX_MODE_6 "Selftest" // to be translated
#define D_SOLAX_ERROR_0 "No Error Code" #define D_SOLAX_ERROR_0 "No Error Code"
#define D_SOLAX_ERROR_1 "Grid Lost Fault" #define D_SOLAX_ERROR_1 "Grid Lost Fault"
#define D_SOLAX_ERROR_2 "Grid Voltage Fault" #define D_SOLAX_ERROR_2 "Grid Voltage Fault"

View File

@ -919,19 +919,22 @@
#define D_PV2_VOLTAGE "PV2 Spannung" #define D_PV2_VOLTAGE "PV2 Spannung"
#define D_PV2_CURRENT "PV2 Strom" #define D_PV2_CURRENT "PV2 Strom"
#define D_PV2_POWER "PV2 Leistung" #define D_PV2_POWER "PV2 Leistung"
#define D_SOLAR_POWER "solare Leistung" #define D_SOLAR_POWER "PV Gesamtleistung"
#define D_INVERTER_POWER "Inverter Leistung" #define D_INVERTER_POWER "Ausgangsleistung"
#define D_STATUS "Status" #define D_STATUS "Status"
#define D_WAITING "warten" #define D_SOLAX_MODE_0 "warten"
#define D_CHECKING "prüfen" #define D_SOLAX_MODE_1 "prüfen"
#define D_WORKING "arbeitet" #define D_SOLAX_MODE_2 "arbeitet"
#define D_FAILURE "Fehler" #define D_SOLAX_MODE_3 "Fehler"
#define D_SOLAX_ERROR_0 "Kein Fehler Code" #define D_SOLAX_MODE_4 "Dauerhafter Fehler"
#define D_SOLAX_ERROR_1 "Fehler im Solarstromnetz" #define D_SOLAX_MODE_5 "Software Update"
#define D_SOLAX_ERROR_2 "Spannungsfehler im Solarstromnetz" #define D_SOLAX_MODE_6 "Selbsttest"
#define D_SOLAX_ERROR_3 "Frequenzfehler im Solarstromnetz" #define D_SOLAX_ERROR_0 "Kein Fehler"
#define D_SOLAX_ERROR_4 "Pv Spannungsfehler" #define D_SOLAX_ERROR_1 "Keine Netzspannung vorhanden"
#define D_SOLAX_ERROR_5 "Isolationsfehler" #define D_SOLAX_ERROR_2 "Netzspannung unzulässig"
#define D_SOLAX_ERROR_3 "Netzfrequenz unzulässig"
#define D_SOLAX_ERROR_4 "PV-Spannung zu hoch"
#define D_SOLAX_ERROR_5 "PV-Isolationsfehler"
#define D_SOLAX_ERROR_6 "Übertemperatur" #define D_SOLAX_ERROR_6 "Übertemperatur"
#define D_SOLAX_ERROR_7 "Lüfterfehler" #define D_SOLAX_ERROR_7 "Lüfterfehler"
#define D_SOLAX_ERROR_8 "sonstiger Fehler" #define D_SOLAX_ERROR_8 "sonstiger Fehler"

View File

@ -922,10 +922,13 @@
#define D_SOLAR_POWER "Solar Power" #define D_SOLAR_POWER "Solar Power"
#define D_INVERTER_POWER "Inverter Power" #define D_INVERTER_POWER "Inverter Power"
#define D_STATUS "Status" #define D_STATUS "Status"
#define D_WAITING "Waiting" #define D_SOLAX_MODE_0 "Waiting"
#define D_CHECKING "Checking" #define D_SOLAX_MODE_1 "Checking"
#define D_WORKING "Working" #define D_SOLAX_MODE_2 "Working"
#define D_FAILURE "Failure" #define D_SOLAX_MODE_3 "Failure"
#define D_SOLAX_MODE_4 "Permanent Failure" // to be translated
#define D_SOLAX_MODE_5 "Software Update" // to be translated
#define D_SOLAX_MODE_6 "Selftest" // to be translated
#define D_SOLAX_ERROR_0 "No Error Code" #define D_SOLAX_ERROR_0 "No Error Code"
#define D_SOLAX_ERROR_1 "Grid Lost Fault" #define D_SOLAX_ERROR_1 "Grid Lost Fault"
#define D_SOLAX_ERROR_2 "Grid Voltage Fault" #define D_SOLAX_ERROR_2 "Grid Voltage Fault"

View File

@ -922,16 +922,19 @@
#define D_SOLAR_POWER "Solar Power" #define D_SOLAR_POWER "Solar Power"
#define D_INVERTER_POWER "Inverter Power" #define D_INVERTER_POWER "Inverter Power"
#define D_STATUS "Status" #define D_STATUS "Status"
#define D_WAITING "Waiting" #define D_SOLAX_MODE_0 "Waiting"
#define D_CHECKING "Checking" #define D_SOLAX_MODE_1 "Checking"
#define D_WORKING "Working" #define D_SOLAX_MODE_2 "Working"
#define D_FAILURE "Failure" #define D_SOLAX_MODE_3 "Failure"
#define D_SOLAX_ERROR_0 "No Error Code" #define D_SOLAX_MODE_4 "Permanent Failure"
#define D_SOLAX_MODE_5 "Software Update"
#define D_SOLAX_MODE_6 "Selftest"
#define D_SOLAX_ERROR_0 "No Error"
#define D_SOLAX_ERROR_1 "Grid Lost Fault" #define D_SOLAX_ERROR_1 "Grid Lost Fault"
#define D_SOLAX_ERROR_2 "Grid Voltage Fault" #define D_SOLAX_ERROR_2 "Grid Voltage Fault"
#define D_SOLAX_ERROR_3 "Grid Frequency Fault" #define D_SOLAX_ERROR_3 "Grid Frequency Fault"
#define D_SOLAX_ERROR_4 "Pv Voltage Fault" #define D_SOLAX_ERROR_4 "PV Voltage too high"
#define D_SOLAX_ERROR_5 "Isolation Fault" #define D_SOLAX_ERROR_5 "PV Isolation Fault"
#define D_SOLAX_ERROR_6 "Over Temperature Fault" #define D_SOLAX_ERROR_6 "Over Temperature Fault"
#define D_SOLAX_ERROR_7 "Fan Fault" #define D_SOLAX_ERROR_7 "Fan Fault"
#define D_SOLAX_ERROR_8 "Other Device Fault" #define D_SOLAX_ERROR_8 "Other Device Fault"

View File

@ -922,10 +922,13 @@
#define D_SOLAR_POWER "Potencia Solar" #define D_SOLAR_POWER "Potencia Solar"
#define D_INVERTER_POWER "Potencia del Inversor" #define D_INVERTER_POWER "Potencia del Inversor"
#define D_STATUS "Estado" #define D_STATUS "Estado"
#define D_WAITING "En Espera" #define D_SOLAX_MODE_0 "En Espera"
#define D_CHECKING "Revisando" #define D_SOLAX_MODE_1 "Revisando"
#define D_WORKING "Funcionando" #define D_SOLAX_MODE_2 "Funcionando"
#define D_FAILURE "Falla" #define D_SOLAX_MODE_3 "Falla"
#define D_SOLAX_MODE_4 "Permanent Failure" // to be translated
#define D_SOLAX_MODE_5 "Software Update" // to be translated
#define D_SOLAX_MODE_6 "Selftest" // to be translated
#define D_SOLAX_ERROR_0 "Sin código de Error" #define D_SOLAX_ERROR_0 "Sin código de Error"
#define D_SOLAX_ERROR_1 "Falla por Pérdida de Red" #define D_SOLAX_ERROR_1 "Falla por Pérdida de Red"
#define D_SOLAX_ERROR_2 "Falla por Voltaje de Red" #define D_SOLAX_ERROR_2 "Falla por Voltaje de Red"

View File

@ -921,10 +921,13 @@
#define D_SOLAR_POWER "Puissance solaire" #define D_SOLAR_POWER "Puissance solaire"
#define D_INVERTER_POWER "Puissance onduleur" #define D_INVERTER_POWER "Puissance onduleur"
#define D_STATUS "Statut" #define D_STATUS "Statut"
#define D_WAITING "En attente" #define D_SOLAX_MODE_0 "En attente"
#define D_CHECKING "En test" #define D_SOLAX_MODE_1 "En test"
#define D_WORKING "En marche" #define D_SOLAX_MODE_2 "En marche"
#define D_FAILURE "Défault" #define D_SOLAX_MODE_3 "Défault"
#define D_SOLAX_MODE_4 "Permanent Failure" // to be translated
#define D_SOLAX_MODE_5 "Software Update" // to be translated
#define D_SOLAX_MODE_6 "Selftest" // to be translated
#define D_SOLAX_ERROR_0 "Aucun code d'erreur" #define D_SOLAX_ERROR_0 "Aucun code d'erreur"
#define D_SOLAX_ERROR_1 "Défaut Perte de réseau" #define D_SOLAX_ERROR_1 "Défaut Perte de réseau"
#define D_SOLAX_ERROR_2 "Défaut Tension réseau" #define D_SOLAX_ERROR_2 "Défaut Tension réseau"

View File

@ -922,10 +922,13 @@
#define D_SOLAR_POWER "Zon krêft" #define D_SOLAR_POWER "Zon krêft"
#define D_INVERTER_POWER "Inverter krêft" #define D_INVERTER_POWER "Inverter krêft"
#define D_STATUS "Status" #define D_STATUS "Status"
#define D_WAITING "Wachtsje" #define D_SOLAX_MODE_0 "Wachtsje"
#define D_CHECKING "Kontrôle" #define D_SOLAX_MODE_1 "Kontrôle"
#define D_WORKING "Aktyf" #define D_SOLAX_MODE_2 "Aktyf"
#define D_FAILURE "Ferkeard" #define D_SOLAX_MODE_3 "Ferkeard"
#define D_SOLAX_MODE_4 "Permanent Failure" // to be translated
#define D_SOLAX_MODE_5 "Software Update" // to be translated
#define D_SOLAX_MODE_6 "Selftest" // to be translated
#define D_SOLAX_ERROR_0 "Gjin" #define D_SOLAX_ERROR_0 "Gjin"
#define D_SOLAX_ERROR_1 "Netferbining" #define D_SOLAX_ERROR_1 "Netferbining"
#define D_SOLAX_ERROR_2 "Netspanning" #define D_SOLAX_ERROR_2 "Netspanning"

View File

@ -922,10 +922,13 @@
#define D_SOLAR_POWER "Solar Power" #define D_SOLAR_POWER "Solar Power"
#define D_INVERTER_POWER "Inverter Power" #define D_INVERTER_POWER "Inverter Power"
#define D_STATUS "Status" #define D_STATUS "Status"
#define D_WAITING "Waiting" #define D_SOLAX_MODE_0 "Waiting"
#define D_CHECKING "Checking" #define D_SOLAX_MODE_1 "Checking"
#define D_WORKING "Working" #define D_SOLAX_MODE_2 "Working"
#define D_FAILURE "Failure" #define D_SOLAX_MODE_3 "Failure"
#define D_SOLAX_MODE_4 "Permanent Failure" // to be translated
#define D_SOLAX_MODE_5 "Software Update" // to be translated
#define D_SOLAX_MODE_6 "Selftest" // to be translated
#define D_SOLAX_ERROR_0 "No Error Code" #define D_SOLAX_ERROR_0 "No Error Code"
#define D_SOLAX_ERROR_1 "Grid Lost Fault" #define D_SOLAX_ERROR_1 "Grid Lost Fault"
#define D_SOLAX_ERROR_2 "Grid Voltage Fault" #define D_SOLAX_ERROR_2 "Grid Voltage Fault"

View File

@ -922,10 +922,13 @@
#define D_SOLAR_POWER "Solar teljesítmény" #define D_SOLAR_POWER "Solar teljesítmény"
#define D_INVERTER_POWER "Inverter teljesítmény" #define D_INVERTER_POWER "Inverter teljesítmény"
#define D_STATUS "Állapot" #define D_STATUS "Állapot"
#define D_WAITING "Várakozás" #define D_SOLAX_MODE_0 "Várakozás"
#define D_CHECKING "Ellenőrzés" #define D_SOLAX_MODE_1 "Ellenőrzés"
#define D_WORKING "Folyamatban" #define D_SOLAX_MODE_2 "Folyamatban"
#define D_FAILURE "Hiba" #define D_SOLAX_MODE_3 "Hiba"
#define D_SOLAX_MODE_4 "Permanent Failure" // to be translated
#define D_SOLAX_MODE_5 "Software Update" // to be translated
#define D_SOLAX_MODE_6 "Selftest" // to be translated
#define D_SOLAX_ERROR_0 "Nincs hibakód" #define D_SOLAX_ERROR_0 "Nincs hibakód"
#define D_SOLAX_ERROR_1 "Hálózat elvesztése hiba" #define D_SOLAX_ERROR_1 "Hálózat elvesztése hiba"
#define D_SOLAX_ERROR_2 "Hálózat feszültség hiba" #define D_SOLAX_ERROR_2 "Hálózat feszültség hiba"

View File

@ -922,10 +922,13 @@
#define D_SOLAR_POWER "Energia solare" #define D_SOLAR_POWER "Energia solare"
#define D_INVERTER_POWER "Potenza inverter" #define D_INVERTER_POWER "Potenza inverter"
#define D_STATUS "Stato" #define D_STATUS "Stato"
#define D_WAITING "In attesa" #define D_SOLAX_MODE_0 "In attesa"
#define D_CHECKING "Controllo" #define D_SOLAX_MODE_1 "Controllo"
#define D_WORKING "Attivo" #define D_SOLAX_MODE_2 "Attivo"
#define D_FAILURE "Errore" #define D_SOLAX_MODE_3 "Errore"
#define D_SOLAX_MODE_4 "Permanent Failure" // to be translated
#define D_SOLAX_MODE_5 "Software Update" // to be translated
#define D_SOLAX_MODE_6 "Selftest" // to be translated
#define D_SOLAX_ERROR_0 "Nessun codice errore" #define D_SOLAX_ERROR_0 "Nessun codice errore"
#define D_SOLAX_ERROR_1 "Griglia errore persa" #define D_SOLAX_ERROR_1 "Griglia errore persa"
#define D_SOLAX_ERROR_2 "Griglia errore tensione" #define D_SOLAX_ERROR_2 "Griglia errore tensione"

View File

@ -922,10 +922,13 @@
#define D_SOLAR_POWER "Solar Power" #define D_SOLAR_POWER "Solar Power"
#define D_INVERTER_POWER "Inverter Power" #define D_INVERTER_POWER "Inverter Power"
#define D_STATUS "Status" #define D_STATUS "Status"
#define D_WAITING "Waiting" #define D_SOLAX_MODE_0 "Waiting"
#define D_CHECKING "Checking" #define D_SOLAX_MODE_1 "Checking"
#define D_WORKING "Working" #define D_SOLAX_MODE_2 "Working"
#define D_FAILURE "Failure" #define D_SOLAX_MODE_3 "Failure"
#define D_SOLAX_MODE_4 "Permanent Failure" // to be translated
#define D_SOLAX_MODE_5 "Software Update" // to be translated
#define D_SOLAX_MODE_6 "Selftest" // to be translated
#define D_SOLAX_ERROR_0 "No Error Code" #define D_SOLAX_ERROR_0 "No Error Code"
#define D_SOLAX_ERROR_1 "Grid Lost Fault" #define D_SOLAX_ERROR_1 "Grid Lost Fault"
#define D_SOLAX_ERROR_2 "Grid Voltage Fault" #define D_SOLAX_ERROR_2 "Grid Voltage Fault"

View File

@ -922,10 +922,13 @@
#define D_SOLAR_POWER "Zon vermogen" #define D_SOLAR_POWER "Zon vermogen"
#define D_INVERTER_POWER "Omvormer vermogen" #define D_INVERTER_POWER "Omvormer vermogen"
#define D_STATUS "Status" #define D_STATUS "Status"
#define D_WAITING "Wacht" #define D_SOLAX_MODE_0 "Wacht"
#define D_CHECKING "Controle" #define D_SOLAX_MODE_1 "Controle"
#define D_WORKING "Actief" #define D_SOLAX_MODE_2 "Actief"
#define D_FAILURE "Fout" #define D_SOLAX_MODE_3 "Fout"
#define D_SOLAX_MODE_4 "Permanent Failure" // to be translated
#define D_SOLAX_MODE_5 "Software Update" // to be translated
#define D_SOLAX_MODE_6 "Selftest" // to be translated
#define D_SOLAX_ERROR_0 "Geen" #define D_SOLAX_ERROR_0 "Geen"
#define D_SOLAX_ERROR_1 "Netverbinding" #define D_SOLAX_ERROR_1 "Netverbinding"
#define D_SOLAX_ERROR_2 "Netspanning" #define D_SOLAX_ERROR_2 "Netspanning"

View File

@ -922,10 +922,13 @@
#define D_SOLAR_POWER "Moc PV" #define D_SOLAR_POWER "Moc PV"
#define D_INVERTER_POWER "Moc invertera" #define D_INVERTER_POWER "Moc invertera"
#define D_STATUS "Status" #define D_STATUS "Status"
#define D_WAITING "Oczekiwanie" #define D_SOLAX_MODE_0 "Oczekiwanie"
#define D_CHECKING "Sprawdzanie" #define D_SOLAX_MODE_1 "Sprawdzanie"
#define D_WORKING "Praca" #define D_SOLAX_MODE_2 "Praca"
#define D_FAILURE "Błąd" #define D_SOLAX_MODE_3 "Błąd"
#define D_SOLAX_MODE_4 "Permanent Failure" // to be translated
#define D_SOLAX_MODE_5 "Software Update" // to be translated
#define D_SOLAX_MODE_6 "Selftest" // to be translated
#define D_SOLAX_ERROR_0 "Błąd - brak kodu" #define D_SOLAX_ERROR_0 "Błąd - brak kodu"
#define D_SOLAX_ERROR_1 "Błąd - utrata sieci" #define D_SOLAX_ERROR_1 "Błąd - utrata sieci"
#define D_SOLAX_ERROR_2 "Błąd - napięcie sieci" #define D_SOLAX_ERROR_2 "Błąd - napięcie sieci"

View File

@ -922,10 +922,13 @@
#define D_SOLAR_POWER "Energia Solar" #define D_SOLAR_POWER "Energia Solar"
#define D_INVERTER_POWER "Potência do Inversor" #define D_INVERTER_POWER "Potência do Inversor"
#define D_STATUS "Status" #define D_STATUS "Status"
#define D_WAITING "Esperando" #define D_SOLAX_MODE_0 "Esperando"
#define D_CHECKING "Verificando" #define D_SOLAX_MODE_1 "Verificando"
#define D_WORKING "Trabalhando" #define D_SOLAX_MODE_2 "Trabalhando"
#define D_FAILURE "Falha" #define D_SOLAX_MODE_3 "Falha"
#define D_SOLAX_MODE_4 "Permanent Failure" // to be translated
#define D_SOLAX_MODE_5 "Software Update" // to be translated
#define D_SOLAX_MODE_6 "Selftest" // to be translated
#define D_SOLAX_ERROR_0 "Nenhum código de erro" #define D_SOLAX_ERROR_0 "Nenhum código de erro"
#define D_SOLAX_ERROR_1 "Erro Grid Perdida" #define D_SOLAX_ERROR_1 "Erro Grid Perdida"
#define D_SOLAX_ERROR_2 "Falha na Tensão da rede" #define D_SOLAX_ERROR_2 "Falha na Tensão da rede"

View File

@ -922,10 +922,13 @@
#define D_SOLAR_POWER "Potência Solar" #define D_SOLAR_POWER "Potência Solar"
#define D_INVERTER_POWER "Potência do Inversor" #define D_INVERTER_POWER "Potência do Inversor"
#define D_STATUS "Estado" #define D_STATUS "Estado"
#define D_WAITING "Esperando" #define D_SOLAX_MODE_0 "Esperando"
#define D_CHECKING "Verificando" #define D_SOLAX_MODE_1 "Verificando"
#define D_WORKING "Trabalhando" #define D_SOLAX_MODE_2 "Trabalhando"
#define D_FAILURE "Falha" #define D_SOLAX_MODE_3 "Falha"
#define D_SOLAX_MODE_4 "Permanent Failure" // to be translated
#define D_SOLAX_MODE_5 "Software Update" // to be translated
#define D_SOLAX_MODE_6 "Selftest" // to be translated
#define D_SOLAX_ERROR_0 "Nenhum código de erro" #define D_SOLAX_ERROR_0 "Nenhum código de erro"
#define D_SOLAX_ERROR_1 "Falha devido a perda de rede" #define D_SOLAX_ERROR_1 "Falha devido a perda de rede"
#define D_SOLAX_ERROR_2 "Falha devido a perda de tensão" #define D_SOLAX_ERROR_2 "Falha devido a perda de tensão"

View File

@ -922,10 +922,13 @@
#define D_SOLAR_POWER "Putere Solară" #define D_SOLAR_POWER "Putere Solară"
#define D_INVERTER_POWER "Invertor Putere" #define D_INVERTER_POWER "Invertor Putere"
#define D_STATUS "Status" #define D_STATUS "Status"
#define D_WAITING "Așteptare" #define D_SOLAX_MODE_0 "Așteptare"
#define D_CHECKING "Verificare" #define D_SOLAX_MODE_1 "Verificare"
#define D_WORKING "Lucrează" #define D_SOLAX_MODE_2 "Lucrează"
#define D_FAILURE "Eroare" #define D_SOLAX_MODE_3 "Eroare"
#define D_SOLAX_MODE_4 "Permanent Failure" // to be translated
#define D_SOLAX_MODE_5 "Software Update" // to be translated
#define D_SOLAX_MODE_6 "Selftest" // to be translated
#define D_SOLAX_ERROR_0 "Fără cod de eroare" #define D_SOLAX_ERROR_0 "Fără cod de eroare"
#define D_SOLAX_ERROR_1 "Eroare zona" #define D_SOLAX_ERROR_1 "Eroare zona"
#define D_SOLAX_ERROR_2 "Eroare zona voltaj" #define D_SOLAX_ERROR_2 "Eroare zona voltaj"

View File

@ -922,10 +922,13 @@
#define D_SOLAR_POWER "Solar Power" #define D_SOLAR_POWER "Solar Power"
#define D_INVERTER_POWER "Inverter Power" #define D_INVERTER_POWER "Inverter Power"
#define D_STATUS "Status" #define D_STATUS "Status"
#define D_WAITING "Waiting" #define D_SOLAX_MODE_0 "Waiting"
#define D_CHECKING "Checking" #define D_SOLAX_MODE_1 "Checking"
#define D_WORKING "Working" #define D_SOLAX_MODE_2 "Working"
#define D_FAILURE "Failure" #define D_SOLAX_MODE_3 "Failure"
#define D_SOLAX_MODE_4 "Permanent Failure" // to be translated
#define D_SOLAX_MODE_5 "Software Update" // to be translated
#define D_SOLAX_MODE_6 "Selftest" // to be translated
#define D_SOLAX_ERROR_0 "No Error Code" #define D_SOLAX_ERROR_0 "No Error Code"
#define D_SOLAX_ERROR_1 "Grid Lost Fault" #define D_SOLAX_ERROR_1 "Grid Lost Fault"
#define D_SOLAX_ERROR_2 "Grid Voltage Fault" #define D_SOLAX_ERROR_2 "Grid Voltage Fault"

View File

@ -922,10 +922,13 @@
#define D_SOLAR_POWER "Solar Power" #define D_SOLAR_POWER "Solar Power"
#define D_INVERTER_POWER "Inverter Power" #define D_INVERTER_POWER "Inverter Power"
#define D_STATUS "Status" #define D_STATUS "Status"
#define D_WAITING "Waiting" #define D_SOLAX_MODE_0 "Waiting"
#define D_CHECKING "Checking" #define D_SOLAX_MODE_1 "Checking"
#define D_WORKING "Working" #define D_SOLAX_MODE_2 "Working"
#define D_FAILURE "Failure" #define D_SOLAX_MODE_3 "Failure"
#define D_SOLAX_MODE_4 "Permanent Failure" // to be translated
#define D_SOLAX_MODE_5 "Software Update" // to be translated
#define D_SOLAX_MODE_6 "Selftest" // to be translated
#define D_SOLAX_ERROR_0 "No Error Code" #define D_SOLAX_ERROR_0 "No Error Code"
#define D_SOLAX_ERROR_1 "Grid Lost Fault" #define D_SOLAX_ERROR_1 "Grid Lost Fault"
#define D_SOLAX_ERROR_2 "Grid Voltage Fault" #define D_SOLAX_ERROR_2 "Grid Voltage Fault"

View File

@ -922,10 +922,13 @@
#define D_SOLAR_POWER "Solar Power" #define D_SOLAR_POWER "Solar Power"
#define D_INVERTER_POWER "Inverter Power" #define D_INVERTER_POWER "Inverter Power"
#define D_STATUS "Status" #define D_STATUS "Status"
#define D_WAITING "Waiting" #define D_SOLAX_MODE_0 "Waiting"
#define D_CHECKING "Checking" #define D_SOLAX_MODE_1 "Checking"
#define D_WORKING "Working" #define D_SOLAX_MODE_2 "Working"
#define D_FAILURE "Failure" #define D_SOLAX_MODE_3 "Failure"
#define D_SOLAX_MODE_4 "Permanent Failure" // to be translated
#define D_SOLAX_MODE_5 "Software Update" // to be translated
#define D_SOLAX_MODE_6 "Selftest" // to be translated
#define D_SOLAX_ERROR_0 "No Error Code" #define D_SOLAX_ERROR_0 "No Error Code"
#define D_SOLAX_ERROR_1 "Grid Lost Fault" #define D_SOLAX_ERROR_1 "Grid Lost Fault"
#define D_SOLAX_ERROR_2 "Grid Voltage Fault" #define D_SOLAX_ERROR_2 "Grid Voltage Fault"

View File

@ -922,10 +922,13 @@
#define D_SOLAR_POWER "Solar Power" #define D_SOLAR_POWER "Solar Power"
#define D_INVERTER_POWER "Inverter Power" #define D_INVERTER_POWER "Inverter Power"
#define D_STATUS "Status" #define D_STATUS "Status"
#define D_WAITING "Waiting" #define D_SOLAX_MODE_0 "Waiting"
#define D_CHECKING "Checking" #define D_SOLAX_MODE_1 "Checking"
#define D_WORKING "Working" #define D_SOLAX_MODE_2 "Working"
#define D_FAILURE "Failure" #define D_SOLAX_MODE_3 "Failure"
#define D_SOLAX_MODE_4 "Permanent Failure" // to be translated
#define D_SOLAX_MODE_5 "Software Update" // to be translated
#define D_SOLAX_MODE_6 "Selftest" // to be translated
#define D_SOLAX_ERROR_0 "No Error Code" #define D_SOLAX_ERROR_0 "No Error Code"
#define D_SOLAX_ERROR_1 "Grid Lost Fault" #define D_SOLAX_ERROR_1 "Grid Lost Fault"
#define D_SOLAX_ERROR_2 "Grid Voltage Fault" #define D_SOLAX_ERROR_2 "Grid Voltage Fault"

View File

@ -922,10 +922,13 @@
#define D_SOLAR_POWER "Solar Потужність" #define D_SOLAR_POWER "Solar Потужність"
#define D_INVERTER_POWER "Inverter Потужність" #define D_INVERTER_POWER "Inverter Потужність"
#define D_STATUS "Стан" #define D_STATUS "Стан"
#define D_WAITING "Очікування" #define D_SOLAX_MODE_0 "Очікування"
#define D_CHECKING "Перевірка" #define D_SOLAX_MODE_1 "Перевірка"
#define D_WORKING "Працює" #define D_SOLAX_MODE_2 "Працює"
#define D_FAILURE "Помилка" #define D_SOLAX_MODE_3 "Помилка"
#define D_SOLAX_MODE_4 "Permanent Failure" // to be translated
#define D_SOLAX_MODE_5 "Software Update" // to be translated
#define D_SOLAX_MODE_6 "Selftest" // to be translated
#define D_SOLAX_ERROR_0 "Немає помилки" #define D_SOLAX_ERROR_0 "Немає помилки"
#define D_SOLAX_ERROR_1 "Втрата мережі" #define D_SOLAX_ERROR_1 "Втрата мережі"
#define D_SOLAX_ERROR_2 "Напруга мережі" #define D_SOLAX_ERROR_2 "Напруга мережі"

View File

@ -922,10 +922,13 @@
#define D_SOLAR_POWER "Nguồn năng lượng mặt trời" #define D_SOLAR_POWER "Nguồn năng lượng mặt trời"
#define D_INVERTER_POWER "Nguồn Inverter" #define D_INVERTER_POWER "Nguồn Inverter"
#define D_STATUS "Trạng thái" #define D_STATUS "Trạng thái"
#define D_WAITING "Đang chờ" #define D_SOLAX_MODE_0 "Đang chờ"
#define D_CHECKING "Đang kiểm tra" #define D_SOLAX_MODE_1 "Đang kiểm tra"
#define D_WORKING "Đang làm việc" #define D_SOLAX_MODE_2 "Đang làm việc"
#define D_FAILURE "Bị lỗi" #define D_SOLAX_MODE_3 "Bị lỗi"
#define D_SOLAX_MODE_4 "Permanent Failure" // to be translated
#define D_SOLAX_MODE_5 "Software Update" // to be translated
#define D_SOLAX_MODE_6 "Selftest" // to be translated
#define D_SOLAX_ERROR_0 "Không có mã lỗi" #define D_SOLAX_ERROR_0 "Không có mã lỗi"
#define D_SOLAX_ERROR_1 "Lỗi mất lưới điện" #define D_SOLAX_ERROR_1 "Lỗi mất lưới điện"
#define D_SOLAX_ERROR_2 "Điện áp điện lưới bị lỗi" #define D_SOLAX_ERROR_2 "Điện áp điện lưới bị lỗi"

View File

@ -922,10 +922,13 @@
#define D_SOLAR_POWER "Solar Power" #define D_SOLAR_POWER "Solar Power"
#define D_INVERTER_POWER "Inverter Power" #define D_INVERTER_POWER "Inverter Power"
#define D_STATUS "Status" #define D_STATUS "Status"
#define D_WAITING "Waiting" #define D_SOLAX_MODE_0 "Waiting"
#define D_CHECKING "Checking" #define D_SOLAX_MODE_1 "Checking"
#define D_WORKING "Working" #define D_SOLAX_MODE_2 "Working"
#define D_FAILURE "Failure" #define D_SOLAX_MODE_3 "Failure"
#define D_SOLAX_MODE_4 "Permanent Failure" // to be translated
#define D_SOLAX_MODE_5 "Software Update" // to be translated
#define D_SOLAX_MODE_6 "Selftest" // to be translated
#define D_SOLAX_ERROR_0 "No Error Code" #define D_SOLAX_ERROR_0 "No Error Code"
#define D_SOLAX_ERROR_1 "Grid Lost Fault" #define D_SOLAX_ERROR_1 "Grid Lost Fault"
#define D_SOLAX_ERROR_2 "Grid Voltage Fault" #define D_SOLAX_ERROR_2 "Grid Voltage Fault"

View File

@ -922,10 +922,13 @@
#define D_SOLAR_POWER "太陽能" #define D_SOLAR_POWER "太陽能"
#define D_INVERTER_POWER "Inverter Power" #define D_INVERTER_POWER "Inverter Power"
#define D_STATUS "狀態" #define D_STATUS "狀態"
#define D_WAITING "等待中" #define D_SOLAX_MODE_0 "等待中"
#define D_CHECKING "確認中" #define D_SOLAX_MODE_1 "確認中"
#define D_WORKING "運作中" #define D_SOLAX_MODE_2 "運作中"
#define D_FAILURE "錯誤" #define D_SOLAX_MODE_3 "錯誤"
#define D_SOLAX_MODE_4 "Permanent Failure" // to be translated
#define D_SOLAX_MODE_5 "Software Update" // to be translated
#define D_SOLAX_MODE_6 "Selftest" // to be translated
#define D_SOLAX_ERROR_0 "無錯誤碼" #define D_SOLAX_ERROR_0 "無錯誤碼"
#define D_SOLAX_ERROR_1 "電網失聯(Grid Lost)錯誤" #define D_SOLAX_ERROR_1 "電網失聯(Grid Lost)錯誤"
#define D_SOLAX_ERROR_2 "電網(Grid)電壓錯誤" #define D_SOLAX_ERROR_2 "電網(Grid)電壓錯誤"

View File

@ -83,7 +83,8 @@ union {
}; };
} ErrCode; } ErrCode;
const char kSolaxMode[] PROGMEM = D_WAITING "|" D_CHECKING "|" D_WORKING "|" D_FAILURE "|" D_OFF; const char kSolaxMode[] PROGMEM = D_OFF "|" D_SOLAX_MODE_0 "|" D_SOLAX_MODE_1 "|" D_SOLAX_MODE_2 "|" D_SOLAX_MODE_3 "|"
D_SOLAX_MODE_4 "|" D_SOLAX_MODE_5 "|" D_SOLAX_MODE_6;
const char kSolaxError[] PROGMEM = const char kSolaxError[] PROGMEM =
D_SOLAX_ERROR_0 "|" D_SOLAX_ERROR_1 "|" D_SOLAX_ERROR_2 "|" D_SOLAX_ERROR_3 "|" D_SOLAX_ERROR_4 "|" D_SOLAX_ERROR_5 "|" D_SOLAX_ERROR_0 "|" D_SOLAX_ERROR_1 "|" D_SOLAX_ERROR_2 "|" D_SOLAX_ERROR_3 "|" D_SOLAX_ERROR_4 "|" D_SOLAX_ERROR_5 "|"
@ -104,7 +105,7 @@ struct SOLAXX1 {
float dc1_power = 0; float dc1_power = 0;
float dc2_power = 0; float dc2_power = 0;
uint8_t status = 0; int16_t runMode = 0;
uint32_t errorCode = 0; uint32_t errorCode = 0;
} solaxX1; } solaxX1;
@ -281,7 +282,7 @@ void solaxX1250MSecond(void) // Every 250 milliseconds
//temporal = (float)((value[29] << 8) | value[30]) * 0.1f; // Not Used //temporal = (float)((value[29] << 8) | value[30]) * 0.1f; // Not Used
Energy.import_active[0] = (float)((value[31] << 24) | (value[32] << 16) | (value[33] << 8) | value[34]) * 0.1f; // Energy Total Energy.import_active[0] = (float)((value[31] << 24) | (value[32] << 16) | (value[33] << 8) | value[34]) * 0.1f; // Energy Total
solaxX1.runtime_total = ((value[35] << 24) | (value[36] << 16) | (value[37] << 8) | value[38]); // Work Time Total solaxX1.runtime_total = ((value[35] << 24) | (value[36] << 16) | (value[37] << 8) | value[38]); // Work Time Total
solaxX1.status = (uint8_t)((value[39] << 8) | value[40]); // Work mode solaxX1.runMode = (value[39] << 8) | value[40]; // Work mode
//temporal = (float)((value[41] << 8) | value[42]); // Grid voltage fault value 0.1V //temporal = (float)((value[41] << 8) | value[42]); // Grid voltage fault value 0.1V
//temporal = (float)((value[43] << 8) | value[44]); // Gird frequency fault value 0.01Hz //temporal = (float)((value[43] << 8) | value[44]); // Gird frequency fault value 0.01Hz
//temporal = (float)((value[45] << 8) | value[46]); // Dc injection fault value 1mA //temporal = (float)((value[45] << 8) | value[46]); // Dc injection fault value 1mA
@ -289,7 +290,7 @@ void solaxX1250MSecond(void) // Every 250 milliseconds
//temporal = (float)((value[49] << 8) | value[50]); // Pv1 voltage fault value 0.1V //temporal = (float)((value[49] << 8) | value[50]); // Pv1 voltage fault value 0.1V
//temporal = (float)((value[51] << 8) | value[52]); // Pv2 voltage fault value 0.1V //temporal = (float)((value[51] << 8) | value[52]); // Pv2 voltage fault value 0.1V
//temporal = (float)((value[53] << 8) | value[54]); // GFC fault value //temporal = (float)((value[53] << 8) | value[54]); // GFC fault value
solaxX1.errorCode = ((value[58] << 24) | (value[57] << 16) | (value[56] << 8) | value[55]); // Error Code solaxX1.errorCode = (value[58] << 24) | (value[57] << 16) | (value[56] << 8) | value[55]; // Error Code
solaxX1.dc1_power = solaxX1.dc1_voltage * solaxX1.dc1_current; solaxX1.dc1_power = solaxX1.dc1_voltage * solaxX1.dc1_current;
solaxX1.dc2_power = solaxX1.dc2_voltage * solaxX1.dc2_current; solaxX1.dc2_power = solaxX1.dc2_voltage * solaxX1.dc2_current;
@ -372,7 +373,7 @@ void solaxX1250MSecond(void) // Every 250 milliseconds
solaxX1.temperature = solaxX1.dc1_voltage = solaxX1.dc2_voltage = solaxX1.dc1_current = solaxX1.dc2_current = solaxX1.dc1_power = 0; solaxX1.temperature = solaxX1.dc1_voltage = solaxX1.dc2_voltage = solaxX1.dc1_current = solaxX1.dc2_current = solaxX1.dc1_power = 0;
solaxX1.dc2_power = Energy.current[0] = Energy.voltage[0] = Energy.frequency[0] = Energy.active_power[0] = 0; solaxX1.dc2_power = Energy.current[0] = Energy.voltage[0] = Energy.frequency[0] = Energy.active_power[0] = 0;
solaxX1.status = 4; // off(line) solaxX1.runMode = -1; // off(line)
} else { } else {
if (protocolStatus.queryOfflineSend) { if (protocolStatus.queryOfflineSend) {
protocolStatus.status = 0b00001000; // queryOffline protocolStatus.status = 0b00001000; // queryOffline
@ -449,7 +450,7 @@ void solaxX1Show(bool json)
char runtime[33]; char runtime[33];
dtostrfd(solaxX1.runtime_total, 0, runtime); dtostrfd(solaxX1.runtime_total, 0, runtime);
char status[33]; char status[33];
GetTextIndexed(status, sizeof(status), solaxX1.status, kSolaxMode); GetTextIndexed(status, sizeof(status), solaxX1.runMode + 1, kSolaxMode);
if (json) if (json)
{ {