vikt0rm / dbus-goecharger

Integrate go-eCharger into Victron Energies Venus OS as a acload
26 stars 15 forks source link

Firmware Version cannot be parsed #11

Open 0xFEEDC0DE64 opened 2 hours ago

0xFEEDC0DE64 commented 2 hours ago

Hi,

go-e Firmware developer here,

I am just trying to get all our go-e products compatible with victron and found your charger integration! Nice!

Just one minor problem I experienced, since all my chargers I work with during firmware development dont have a tagged firmware version but just latetst main branch, the firmware version includes the number of how many commits were added since the last tag. This behavior comes from git describe during the firmware compilation.

Long shory short, I get this exception while booting up:

root@nanopi:/data/dbus-goecharger# bash service/run 
2024-09-20 13:58:23,777 root INFO Start
2024-09-20 13:58:23,804 root INFO registered ourselves on D-Bus as com.victronenergy.evcharger.http_43
2024-09-20 13:58:23,879 root CRITICAL Error at main
Traceback (most recent call last):
  File "/data/dbus-goecharger/dbus-goecharger.py", line 277, in main
    pvac_output = DbusGoeChargerService(
  File "/data/dbus-goecharger/dbus-goecharger.py", line 53, in __init__
    self._dbusservice.add_path('/FirmwareVersion', int(data['fwv'].replace('.', '')))
ValueError: invalid literal for int() with base 10: '568-27-g6509393bb'

I don't know if we should assume that every firmware we ever publish is int parseable. With the go-e Controllers for example with have versions like 1.2.3

Thank you so much for providing your work on github :)

0xFEEDC0DE64 commented 2 hours ago

image