iwanovich schreef op dinsdag 13 mei 2025 @ 18:29:
[...]
Kan (en wil) je delen hoe je dat gedaan hebt via modbus? Ik probeer nu met mbpoll (linux cli tool) om het juiste register te beschrijven (40189), maar helaas nog zonder succes.
mbpoll -p502 -o3 -t4 -r40188 -a2 -1 <IP-adres ECU-R> 258 0
[Afbeelding]
Die uiteg van die adressen vind ik extreem vaag gedocumenteerd. Het is/was dus een kwestie van uitproberen en goed kijken wat er gebeurd.
Ook had ik zo veel issues gehad met de verbinding naar mijn omvormers, wat is pas laat ondekte, dat ik het schrijven (en het echt begrijpen wat er gebeurd) voor een andere keer heb gelaten. Je moet goed kijken welke waardes je verstuurd en in welk formaat. Komt allemaal heel erg nauw. Uiteindelijk heb ik dus wel een limit weten te activeren en weer uit kunnen zetten maar welk commando dat is geweest kan ik je helaas niet zeggen.
Uit mijn notities heb ik wel het volgende gevonden (op eigen risico):
code:
1
2
3
4
5
| echo "40189 WMAXLIMPCT"
mbpoll -o 10 -1 -a 1,2,3,4,5,6 -q -0 -r 40189 192.168.1.115
echo "40193: WMAXLIM_ENA"
mbpoll -o 10 -1 -a 1,2,3,4,5,6 -q -0 -r 40193 192.168.1.115 |
Ook heb ik uiteindelijk nog een Windows tool gebruikt voor de communicatie via modbus, vond ik toch wat makkelijker werken dan mbpoll.
Ik heb nog geen tijd gehad om er eens rustig voor het schrijven te gaan zitten. Dat wil ik gaan doen als ik mijn eigen home assistent heb draaien.
Edit: het stukje "Basic information table:" in de sunspec modbus PDF van Apsystems legt het protocol wel aardig uit volgens mij. Je kunt met zo'n windows tool (kan misschien ook met mbpoll) het verkeer op byte/hex niveau zien dus het is een kwestie van een beetje hacken.
Als ik commando's heb die 100% werken zal ik ze sowieso even posten.
[
Voor 9% gewijzigd door
Y0ur1 op 13-05-2025 20:04
]