Jump to content

I made a little Victron Dashboard


deapsquatter

Recommended Posts

I really love the Victron suite of software. The VRM portal really sold me on going for Victron for my home.

Not one to pass up the opportunity to fiddle with it I thought it would be nice to make a kind of "realtime" dashboard for display inside the house using an old phone/tablet. For me the requirements are:

  • Show the information I am interested in seeing at a glance (kitchen tablet).
  • Full screen optimised for landscape viewing.
  • Less data use than the VNC animation but more realtime than VRM (when out and about on mobile data).

Think of it as the Marine App https://github.com/victronenergy/venus-html5-app but for home use. I'm not a UI person so its not nearly as pretty as that but I'll improve it with time. I'll also add more information relevant for a home that makes sense for a dashboard type display.

I'd thought I'd share it for anyone who wants to give a go. DISCLAIMER - I've put it together for MY system so your milage will vary. For instance the battery display shows nothing for lead acids right now. Only tested on Chrome. I know the Full Screen option will not necessarily work on other browsers.

Getting Started: Go to http://housealarm.io/victron. Click "Configure" and enter you Venus IP address. With a bit of luck it will work.

EDIT: Copy Right Infringement - It may be a bad idea to include the Victron badge. I'm more than happy to remove that.

 

configure.png

dashboard.png

Edited by deapsquatter
Link to comment
Share on other sites

2 minutes ago, plonkster said:

Uuuh, you really shouldn't put a Venus device on the internet completely unprotected. Especially with MQTT open 🙂

Thanks - yes of course. This App doesn't assume or require any specific network setup - its just after an IP address. Mine is internal and only reachable via VPN 👍.

Link to comment
Share on other sites

Just now, deapsquatter said:

Thanks - yes of course. This App doesn't assume or require any specific network setup - its just after an IP address. Mine is internal and only reachable via VPN 👍.

Aaah good. But then this is most likely not going to work when others go there and fill in "192.168..." 🙂

On that topic, whenever I pay by card I look at the screen of the terminal and 9 out of 10 times it is connecting to a private ip address, ie these things run on VPNs most of the time.

Link to comment
Share on other sites

6 minutes ago, plonkster said:

Aaah good. But then this is most likely not going to work when others go there and fill in "192.168..." 🙂

Yes it will work 😎 Browser -> MQTT -> Venus (All over your own network). Which reminds me - you will need to have MQTT Turned On at the Venus for this to work.

Edited by deapsquatter
Link to comment
Share on other sites

11 minutes ago, deapsquatter said:

Yes it will work 😎 Browser -> MQTT -> Venus (All over your own network). Which reminds me - you will need to have MQTT Turned On at the Venus for this to work.

Aaah, okay I get it. How do you get past the Same Origin Policy? Well this might be a dumb question, I recall vaguely that the way to do it is for the service to reply with the right headers upon a preflight request, so it is quite possible that it will "just work" (tm) 🙂

What would be neat is if you could build it into a venus device. You get technically just copy it to /var/www/venus/ and hit it directly on the venus device after that.

Link to comment
Share on other sites

1 minute ago, plonkster said:

Aaah, okay I get it. How do you get past the Same Origin Policy? Well this might be a dumb question, I recall vaguely that the way to do it is for the service to reply with the right headers upon a preflight request, so it is quite possible that it will "just work" (tm) 🙂

What would be neat is if you could build it into a venus device. You get technically just copy it to /var/www/venus/ and hit it directly on the venus device after that.

No hoops to jump through it "Just Worked" 

Yes I wanted to ask you about running it directly. Cool I'll try that 👍

Link to comment
Share on other sites

4 hours ago, The Terrible Triplett said:

Even on Chrome

What do you mean "even". Chrome is likely the most standard compliant browser there is, though I think newer versions of Mozilla is slightly less memory hungry. The very first thing I do on a new Windows system is install Chrome 🙂

 

Link to comment
Share on other sites

1 hour ago, plonkster said:

The very first thing I do on a new Windows system is install Chrome

Dude, have you noticed how resource hungry Chrome has become? It is worse than the old IE.

Edge on the other hand is - for now - much "lighter" on resources.

But yea, we all install it.

Link to comment
Share on other sites

3 hours ago, The Terrible Triplett said:

resource hungry Chrome has become?

It was worse a few versions ago. When I was a web developer I used chrome a lot, because it had the better debugger. It stuck, so to this day I run chrome and firefox side by side. Firefox allows me to have a bazillion tabs open, so that is used for general browsing.

Link to comment
Share on other sites

Just now, The Terrible Triplett said:

Memory usage?

top says 5.5%... of my 8GB. Or around 500Mb.

But it is hard to say. Linux uses large amounts of shared library loading (similar to DLLs) to reduce memory use, so a comparison to windows is not really feasible. What I can tell you is that Chrome also uses 5.5% at the moment, and I have 32 tabs open there. About half.

Even that is not the whole story. A tab in chrome that's reading gmail is considerably heavier than one that is doing plain text 🙂

Link to comment
Share on other sites

5 minutes ago, plonkster said:

top says 5.5%... of my 8GB. Or around 500Mb.

Hang on, that is wrong. The total virtual memory space includes the swap space. I also have 8GB swap space. So it's more like 1GB.

Link to comment
Share on other sites

12 minutes ago, plonkster said:

Hang on, that is wrong. The total virtual memory space includes the swap space. I also have 8GB swap space. So it's more like 1GB.

Still way less than Chrome.

Link to comment
Share on other sites

On 2019/08/30 at 8:14 PM, deapsquatter said:

An alert sound now plays when the Grid goes down. The sound is currently set to an oncoming train. Will change it when I find something more suitable :)

Are you using com.victronenergy.system/Ac/Alarms/GridLost ?

Link to comment
Share on other sites

Edge, Chrome and Firefox, tit for tat ito resources on Windows 10 PC.
I find Chrome the most stable one as FF has small teeny issues on PF and Edge "feels" "loose".

Lets see what M$ does when they replace Edge with Chrome or some such.

Link to comment
Share on other sites

27 minutes ago, deapsquatter said:

 what does this path look like as an MQTT topic ? com.victronenergy.system/Ac/Alarms/GridLost 

Oh it's the dbus path, but it translates directly to mqtt, it will likely be something like N/{portalID}/system/0/Ac/Alarm/GridLost.

The 0 is the DeviceInstance, but for things like system, settings, etc it will be zero. Also, it's a 2.40 feature, it's not available in 2.3x. What it does however is watch /Ac/ActiveIn/ActiveInput on the vebus service (ie something like N/{portalID}/vebus/257/Ac/ActiveIn/ActiveInput), and if that shows 0xF0 (240) it means there is no active input. But that is again consolidated onto N/{portalID}/system/0/Ac/ActiveIn/Source, which will show 0 for unavailable, 1 for grid, 2 for generator, 3 for shore, and 0xF0 (240) for disconnected. And this does work in 2.3x.

So the best production implementation right now would be to watch N/{portalID}/system/0/Ac/ActiveIn/Source and raise an alarm if that is 240.

The GridLost alarm does a bit more than that. It also raises an alarm if the input is a generator (anything other than grid or shore), because a generator running still means the grid is lost 🙂

 

Edited by plonkster
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...