I have a python service reading aurora pv inverter stats from rs232 over tcpip and updating a dbus service which is published via mqtt to home assistant. It has its origins and runs as a service similar to dbusdummyservice.
It is working fine, except for a high level of read failures, timeouts, on the rs232.
At the end of day I detect inverter shutdown by five failing retries on reading the energy produced.
About this time I notice the service disappearing, and reappearing on the dbus-spy display, and when it reappears, it nolonger has most of the paths, just the one/s most recently updated. It seems to be when the GLIB update runs for more than 30 seconds, due to the read timeouts, but I'm not sure about that. I can write to all of the service paths and they reappear so they dont seem to being dropped from the actual dbus object. Purhaps it is a dbus-spy feature.
The data is still available on the mqtt server as it is published with retain, and no update has been pushed invalidating the data.
In testing, run from the console, I can delay the GLIB update for several minutes, and the dbus paths remain intact, until I kill the main process.
Any ideas of what may be happenning?
Thanks in advance,