question

Héctor D. Rguez. avatar image
Héctor D. Rguez. asked

Driver for adding another service to show in the console

I would like to add the temperature and status of my water heating system to the local console of the VRM.

I don't know if I can create a new service of my own and it get displayed or i have to emulate a existant service, like a tank, with a service driver using dummyservice.py

I've been trying to modify this program andit seems to work, but I can't get my console shows anything apart from the normal devices.

I don't know if I have to make some changes in the configuration of the system to it shows the new service.

I've tryed to put servicename='com.victronenergy.tank' and add /Capacity to the path and put in the ProductID 3000 but when the program runs I don't see any tank in the console.

I known how to get the status and temp from my system through MQTT or directly through http.

But I'm totally lost at the time to show them in the console.

Thanks in advance.

driver
2 |3000

Up to 8 attachments (including images) can be used with a maximum of 190.8 MiB each and 286.6 MiB total.

2 Answers
bathnm avatar image
bathnm answered ·

@Héctor D. Rguez.

Have you had a read off the VenusOS wiki site and specifically this page.

Services publish data into the dBus and the GUI then extracts data from the dBus and presents it. This would mean that you need to write not only a driver to take data and push it into the dBus, but also write GUI screen in QML to present the data.

Why not connect a temperature probe to the hot water tank and use the existing temperature sensor capability?

What status information about the hot water system do you want to display?

2 |3000

Up to 8 attachments (including images) can be used with a maximum of 190.8 MiB each and 286.6 MiB total.

Héctor D. Rguez. avatar image
Héctor D. Rguez. answered ·

My venus is three floor beneath the hot water tank, so it is not easy to connect directly to the Venus.

I have a Sonoff TH with Tasmota firmaware installed in my solar hot water system to control the activation of the support resistance and to take the water temperature. I control it through MQTT.

I was thinking about simulate to have a tank and put the temperature as capacity of the tank and use the status to know if the resistance is connected or not.

In this way, I have no need to write the GUI screen to present the data.

I think that the less i have to modify the system, more easy to implement and mantain.

So my target is to emulate a tank and publish this data to the dbus like it was a tank, but i don't know exactly the parameters to use at the time of creaating the service to make that.

Thanks for the reference to the wiki. I'll study it to see if I can get the information neededto complete my task.

1 comment
2 |3000

Up to 8 attachments (including images) can be used with a maximum of 190.8 MiB each and 286.6 MiB total.

Hi,

The dbus paths can be found at this link.

A useful tool is dbus-spy to see what is published for things that are active. You will need to enumerate the com.victronenergy.tank for your particular need. Creating a driver should be as easy as reading from the MQTT and writing to dbus.

Enjoy.

0 Likes 0 ·