TapHome

SolaX Inverter (Cloud API)

Packet Parser → HTTP
Autor
Posljednje ažuriranje: 03. 2026
SolaX Inverter (Cloud API)

Predložak SolaX Cloud API povezuje TapHome s bilo kojim izmjenjivačem (inverterom) SolaX preko platforme za nadzor SolaxCloud. Za razliku od predloška SolaX Hybrid X1/X3 Gen 4, koji koristi Modbus RTU na RS-485, ova integracija preko oblaka ne zahtijeva fizičko ožičenje do izmjenjivača. TapHome šalje upite poslužiteljima SolaX Cloud preko HTTPS-a i prima podatke u stvarnom vremenu u formatu JSON.

Predložak podržava sve vrste izmjenjivača SolaX (23 modela iz serija X1, X3, A1 i J1) i nudi 11 uređaja za praćenje AC izlaza, stanja baterije, toka snage mreže i fotonaponske proizvodnje po MPPT ulazu. Potrebni su samo račun SolaxCloud, komunikacijski dongl spojen na internet (Pocket WiFi, LAN ili 4G) i API token.

Konfiguracija

Postavljanje računa SolaxCloud

Izmjenjivač mora biti registriran i dostupan (online) na SolaxCloud. Na izmjenjivaču mora biti ugrađen komunikacijski modul (dongl Pocket WiFi, LAN ili 4G) spojen na internet.

Dobivanje API tokena (tokenID)
  1. Prijavite se na SolaxCloud na www.solaxcloud.com
  2. U lijevoj bočnoj traci otvorite Service > Third-party ecosystem (ili odjeljak API)
  3. Kopirajte tokenID prikazan na stranici: to je niz od 23 ili 24 znaka

Token je besplatan za sve registrirane korisnike platforme SolaxCloud.

Pronalaženje registracijskog broja (sn)

Parametar sn je registracijski broj (Registration Number) komunikacijskog dongla, a ne serijski broj izmjenjivača. Ta se dva broja često zamjenjuju.

Gdje ga pronaći:

  • Na donglu — otisnut je na naljepnici modula Pocket WiFi / LAN / 4G (crtični kod ili QR kod)
  • Na platformi SolaxCloud — otvorite Device > Inverter i u tablici potražite stupac Registration No.
Parametri uvoza

Pri uvozu predloška u TapHome unesite:

  • Token ID — tokenID s platforme SolaxCloud
  • Registration No. — serijski broj komunikacijskog dongla od 10 znakova
Ovisnost o internetu

Ovo je integracija isključivo preko oblaka. Svi podaci prolaze kroz poslužitelje SolaX Cloud (www.solaxcloud.com:9443). Predložak ne radi bez aktivne internetske veze i na centralnoj jedinici TapHome (CCU) i na komunikacijskom donglu izmjenjivača.

Za korisnike koji žele lokalnu komunikaciju bez ovisnosti o oblaku, predložak SolaX Hybrid X1/X3 Gen 4 (Modbus RTU) omogućuje izravnu komunikaciju RS-485 s hibridnim izmjenjivačima Gen 4.

Mogućnosti uređaja

AC izlaz i proizvodnja energije

Brojilo AC izlaz očitava ukupnu proizvodnju AC energije (yieldtotal u kWh) i trenutačnu izlaznu AC snagu (acpower u W, pretvoreno u kW). Servisni atribut javlja dnevni prinos (yieldtoday u kWh), koji se poništava u ponoć.

Praćenje baterije
  • SOC baterije — očitava stanje napunjenosti baterije u postocima iz polja soc. Vrijednost se dijeli sa 100 za raspon analognog ulaza 0–1 u sustavu TapHome (npr. 85 % postaje 0,85). Ovo je uređaj s najčešćim očitavanjem, svakih 2,5 sekunde
  • Snaga baterije — trenutačna snaga punjenja/pražnjenja baterije u vatima. Pozitivne vrijednosti znače punjenje (iz fotonaponskih panela ili mreže), negativne pražnjenje prema trošilima
Mjerenje snage i energije mreže

Tok snage mreže pokrivaju tri uređaja:

  • Snaga mreže — neobrađena dvosmjerna snaga mreže u vatima. Pozitivno = predaja u mrežu, negativno = preuzimanje iz mreže
  • Preuzimanje iz mreže — brojilo koje prati energiju preuzetu iz mreže. Ukupna potrošnja (consumeenergy u kWh) i trenutačna snaga preuzimanja (izdvojena iz feedinpower kada je negativna, pretvorena u kW)
  • Predaja u mrežu — brojilo koje prati energiju predanu u mrežu. Ukupna predana energija (feedinenergy u kWh) i trenutačna snaga predaje (izdvojena iz feedinpower kada je pozitivna, pretvorena u kW)
Praćenje fotonaponske proizvodnje

Predložak nudi pet uređaja za fotonaponsku proizvodnju:

  • Fotonaponska proizvodnja (ukupno) — izračunati senzor koji zbraja DC snagu sva 4 MPPT ulaza. Ispravno obrađuje vrijednosti null: izmjenjivači s manje od 4 stringa za nekorištene MPPT ulaze vraćaju null, a formula ih tretira kao nulu
  • Fotonaponska proizvodnja (MPPT 1–4) — pojedinačna očitanja DC snage za svaki ulaz fotonaponskog stringa u vatima
Dijagnostika na razini modula

ReadScript modula u svakom ciklusu očitavanja provjerava stanje izmjenjivača i javlja probleme:

  • Stanja 100 (Wait Mode) i 110 (Standby) pokreću upozorenja u sustavu TapHome
  • Stanja 103 (Fault Mode) i 104 (Permanent Fault Mode) pokreću pogreške
  • Ako odgovor API-ja javlja neuspjeh, prikazuje se poruka o pogrešci iz polja exception

Na modulu su dostupna dva servisna atributa:

  • Stanje izmjenjivača — pretvara kodove stanja 100–113 u čitljive nazive (Wait Mode, Check Mode, Normal Mode, Fault Mode, Permanent Fault Mode, Update Mode, EPS Check Mode, EPS Mode, Self-Test Mode, Idle Mode, Standby Mode, Pv Wake Up Bat Mode, Gen Check Mode, Gen Run Mode)
  • Vrsta izmjenjivača — pretvara kodove vrste 1–23 u nazive modela (X1-LX, X-Hybrid, X1-Boost/Air/Mini, X3-Hybrid-G4 itd.)
Dodatne mogućnosti

SolaX Cloud API nudi i AC snagu brojila 2 (feedinpowerM2), snagu EPS (Emergency Power Supply, napajanje u nuždi) za tri faze (peps1–peps3), vremensku oznaku prijenosa podataka, serijski broj izmjenjivača i stanje baterije. Mogu se dodati u nekom budućem ažuriranju predloška.

Rješavanje problema

API vraća pogrešku ili nema podataka
  1. Provjerite je li izmjenjivač dostupan na SolaxCloud: prijavite se na web portal i provjerite stanje uređaja
  2. Provjerite je li tokenID ispravan i nije li ponovno generiran (stari tokeni postaju nevažeći)
  3. Provjerite je li parametar sn registracijski broj komunikacijskog dongla, a ne serijski broj izmjenjivača
  4. Provjerite ima li komunikacijski dongl aktivnu internetsku vezu
Zastarjela ili zakašnjela očitanja

SolaX Cloud API vraća najnovije podatke koje je prenio komunikacijski dongl. Svježina podataka ovisi o intervalu prijenosa dongla (obično svakih 5 minuta). Predložak šalje upit API-ju svakih 20 sekundi, ali se podaci u pozadini mogu ažurirati rjeđe.

Pogreške zbog ograničenja broja zahtjeva

API dopušta najviše 10 zahtjeva u minuti i 10 000 zahtjeva dnevno. Predložak šalje upite u razmacima od 20 sekundi (približno 3 zahtjeva u minuti), što je unutar ograničenja. Ako isti tokenID dijeli više sustava (TapHome, Home Assistant, drugi alati), ukupan broj zahtjeva može prijeći ograničenje.

SolaX Cloud API zahtijeva aktivnu internetsku vezu i ovisi o dostupnosti poslužitelja SolaX Cloud. Tijekom prekida rada oblaka ili interneta predložak neće primati nove podatke. Za instalacije kojima je potrebno zajamčeno lokalno upravljanje razmotrite predložak Modbus RTU.

Dostupni uređaji

SolaX Inverter Modul
Servisni atributi
Stanje izmjenjivačaTrenutačni način rada — Wait, Check, Normal, Fault, Permanent Fault, Update, EPS Check, EPS, Self-Test, Idle, Standby, Pv Wake Up Bat, Gen Check, Gen Run
Vrsta izmjenjivačaModel spojenog izmjenjivača — označava seriju SolaX (X1, X3, A1, J1) i generaciju ugrađenog izmjenjivača
Prilagođene varijable
tokenID (string)Token ID za SolaX Cloud API (dobiva se na stranici za API u vašem računu SolaX Cloud)
sn (string)Serijski broj komunikacijskog modula SolaX (Registration No.)

Solax Inverter

Čitanje (modul)
var response := sendhttprequest("/proxy/api/getRealtimeInfo.do?tokenId="+tokenID+"&sn="+sn);

if parsejson(response.Content, "success")
	json := parsejson(response.Content, "result", 1);
	
	var statusCode := parsejson(json,"inverterStatus");
	if statusCode = "100"
	  addwarning("Inverter in waiting - Check DC");
	end
	if statusCode =  "103"
	  adderror("Inverter in fault mode");
	end
	if statusCode = "104"
	  adderror("Inverter in permanent fault mode");
	end
	if statusCode = "110"
	  addwarning("Inverter in standby mode");
	end
else
 	adderror(parsejson(response.Content, "exception"));
end
Servisni atributi
Inverter status
var statusCode := parsejson(json,"inverterStatus");

IF(statusCode = "100",return("Wait Mode"));
IF(statusCode = "101",return("Check Mode"));
IF(statusCode = "102",return("Normal Mode"));
IF(statusCode = "103",return("Fault Mode"));
IF(statusCode = "104",return("Permanent Fault Mode"));
IF(statusCode = "105",return("Update Mode"));
IF(statusCode = "106",return("EPS Check Mode"));
IF(statusCode = "107",return("EPS Mode"));
IF(statusCode = "108",return("Self-Test Mode"));
IF(statusCode = "109",return("Idle Mode"));
IF(statusCode = "110",return("Standby Mode"));
IF(statusCode = "111",return("Pv Wake Up Bat Mode"));
IF(statusCode = "112",return("Gen Check Mode"));
IF(statusCode = "113",return("Gen Run Mode"));
Inverter type
var type := parsejson(json,"inverterType");

IF(type = "1",return("X1-LX"));
IF(type = "2",return("X-Hybrid"));
IF(type = "3",return("X1-Hybiyd/Fit"));
IF(type = "4",return("X1-Boost/Air/Mini"));
IF(type = "5",return("X3-Hybiyd/Fit"));
IF(type = "6",return("X3-20K/30K"));
IF(type = "7",return("X3-MIC/PRO"));
IF(type = "8",return("X1-Smart"));
IF(type = "9",return("X1-AC"));
IF(type = "10",return("A1-Hybrid"));
IF(type = "11",return("A1-Fit"));
IF(type = "12",return("A1-Grid"));
IF(type = "13",return("J1-ESS"));
IF(type = "14",return("X3-Hybrid-G4"));
IF(type = "15",return("X1-Hybrid-G4"));
IF(type = "16",return("X3-MIC/PRO-G2"));
IF(type = "17",return("X1-SPT"));
IF(type = "18",return("X1-Boost/Mini-G4"));
IF(type = "19",return("A1-HYB-G2"));
IF(type = "20",return("A1-AC-G2"));
IF(type = "21",return("A1-SMT-G2"));
IF(type = "22",return("X3-FTH"));
IF(type = "23",return("X3-MGA-G2"));
AC izlaz Brojilo električne energije Samo za čitanje

Ukupna i dnevna proizvodnja AC energije (kWh) s trenutačnom izlaznom snagom (kW)

numeric Jedinica: kWh / kW JSON parsejson()
Servisni atributi
Inverter.AC.energy.out.daily [kWh]Dnevni prinos AC energije — poništava se u ponoć

AC izlaz

Čitanje ukupne potrošnje
parsejson(json, "yieldtotal", 1)
Čitanje zahtjeva
parsejson(json, "acpower", 1) / 1000
Servisni atributi
Inverter.AC.energy.out.daily [kWh]
parsejson(json, "yieldtoday", 1)
SOC baterije Analogni ulaz Samo za čitanje

Stanje napunjenosti baterije u postocima — od 0 % (prazna) do 100 % (puna)

numeric Jedinica: % JSON parsejson()

SOC baterije

Čitanje razine ulaza
parsejson(json, "soc", 1) / 100
Snaga baterije Varijabla Samo za čitanje

Trenutačna snaga baterije u vatima — pozitivna pri punjenju, negativna pri pražnjenju

numeric Jedinica: W JSON parsejson()

Snaga baterije

Čitanje
parsejson(json,"batPower",1)
Preuzimanje iz mreže Brojilo električne energije Samo za čitanje

Energija preuzeta iz mreže — ukupna potrošnja (kWh) i trenutačna snaga preuzimanja (kW)

numeric Jedinica: kWh / kW JSON parsejson()

Preuzimanje iz mreže

Čitanje ukupne potrošnje
parsejson(json, "consumeenergy", 1)
Čitanje zahtjeva
var power := parsejson(json, "feedinpower", 1);
if(power < 0, power * -1, 0) / 1000
Snaga mreže Varijabla Samo za čitanje

Dvosmjerna snaga mreže u vatima — pozitivna pri predaji u mrežu, negativna pri preuzimanju iz mreže

numeric Jedinica: W JSON parsejson()

Snaga mreže

Čitanje
parsejson(json, "feedinpower", 1)
Fotonaponska proizvodnja (ukupno) Varijabla Samo za čitanje

Zbirna DC snaga svih MPPT ulaza — automatski zbraja dostupne stringove

numeric Jedinica: W JSON parsejson()

Fotonaponska proizvodnja (ukupno)

Čitanje
var PV1 := parsejson(json,"powerdc1",1);
var PV2 := parsejson(json,"powerdc2",1);
var PV3 := parsejson(json,"powerdc3",1);
var PV4 := parsejson(json,"powerdc4",1);

if(isnull(PV1), 0, PV1) +
if(isnull(PV2), 0, PV2) +
if(isnull(PV3), 0, PV3) +
if(isnull(PV4), 0, PV4)
Fotonaponska proizvodnja (MPPT 1) Varijabla Samo za čitanje
numeric Jedinica: W JSON parsejson()

Fotonaponska proizvodnja (MPPT 1)

Čitanje
parsejson(json,"powerdc1",1)
Fotonaponska proizvodnja (MPPT 2) Varijabla Samo za čitanje
numeric Jedinica: W JSON parsejson()

Fotonaponska proizvodnja (MPPT 2)

Čitanje
parsejson(json,"powerdc2",1)
Fotonaponska proizvodnja (MPPT 3) Varijabla Samo za čitanje
numeric Jedinica: W JSON parsejson()

Fotonaponska proizvodnja (MPPT 3)

Čitanje (modul)
parsejson(json,"powerdc3",1)
Fotonaponska proizvodnja (MPPT 4) Varijabla Samo za čitanje
numeric Jedinica: W JSON parsejson()

Fotonaponska proizvodnja (MPPT 4)

Čitanje (modul)
parsejson(json,"powerdc4",1)
Predaja u mrežu Brojilo električne energije Samo za čitanje

Energija predana u mrežu — ukupna predana energija (kWh) i trenutačna snaga predaje (kW)

numeric Jedinica: kWh / kW JSON parsejson()

Predaja u mrežu

Čitanje ukupne potrošnje
parsejson(json, "feedinenergy", 1)
Čitanje zahtjeva
var power := parsejson(json, "feedinpower", 1);
if(power > 0, power, 0) / 1000
Povezivanje: Packet Parser → HTTP
Moguća poboljšanja (7)
  • Meter 2 AC Power — Inverter.Meter2.AC.power.total, 1 W. Secondary meter power reading — available for dual-meter setups
  • EPS Phase 1 Power — Inverter.AC.EPS.power.R, 1 W. Emergency Power Supply output phase R
  • EPS Phase 2 Power — Inverter.AC.EPS.power.S, 1 W. Emergency Power Supply output phase S
  • EPS Phase 3 Power — Inverter.AC.EPS.power.T, 1 W. Emergency Power Supply output phase T
  • Upload Time — Last data upload timestamp from inverter to SolaX Cloud. Useful for stale-data detection
  • Inverter Serial Number — Serial number of the inverter hardware (different from communication module SN)
  • Battery Status — Battery status code with mapped states. Documented in HA integration but not in official API V6.1 PDF

Izvori

Pronašli ste problem s ovim predloškom uređaja?

Recite nam što ne radi, što nedostaje ili kako bi se predložak trebao ponašati. Vaše povratne informacije pomažu nam da katalog bude točan.

Provjerio TapHome

Želite ovo koristiti u svojoj centralnoj jedinici TapHome Core?

Otvorite ovaj predložak na portalu Customer Portal kako biste ga primijenili na jedan od svojih domova ili predložili poboljšanje i poslali ga natrag u katalog.

Otvorite na portalu