freakent / dbus-mqtt-devices

A driver for Victron VenusOS GX devices to support use of dbus-mqtt/flashmq-mqtt
MIT License
123 stars 24 forks source link

if off-line the setup-dependencies.sh prevents rc.local to complete ansd create symlink to /service/dbus-mqtt-devices #132

Open kds69 opened 4 weeks ago

kds69 commented 4 weeks ago

Version

0.8.0 (current)

VenusOS version

3.50

Does this issue occur during installation or at runtime ?

Runtime

Is there a Discussion thread for this issue? Please paste a link.

No response

What is the issue you are actually experiencing?

It seems drivers failed to work if GX is offline. Most likely the symlink to latest drivers is not created (rc.local timeout?) Tested by forcing in the command line the symlink creation after reboot: ln -s /data/drivers/dbus-mqtt-devices-0.8.0/bin/service /service/dbus-mqtt-devices

Maybe 10 attempts every minute is too much? this is 10mn... May I suggest to either reduce the number of attempts and time between attempts or add a "&" to let the symlink be created anyway. I believe this is harmless...

If this is not installation related, what does the status payload look like that you are publishing to the driver to register your device?

No response

Relevant log output

No response

freakent commented 4 weeks ago

The setup script does a lot more than just create the symlink. It also installs the dependencies from the internet. If you don't have an internet connection it won't install. I remember thinking that retrying every 10 seconds was a bit brutal but it's such an edge case it's not worth over complicating it any more than that.

kds69 commented 4 weeks ago

sorry I didn't mentioned in the issue detail, only in the title: I am not speaking about the set-up script, speaking about the setup-dependencies.sh, which runs at every reboot/start-up. +I figured out it is in reality a endless loop due to a missing "t" in "atempts"...:

attempts=$((atempts + 1))

to be replaced with

attempts=$((attempts + 1))

Anyway, IMHO a 10mn time-out is far too much, something like 6 attempts every 10s is sufficient and it is already a lot.

freakent commented 4 weeks ago

Ah I see, that is a bug. Well spotted.