diy solar

diy solar

The Venusian: running Victron/Venus on top of Debian

MatthiasU

New Member
Joined
Apr 28, 2022
Messages
8
TL;DR: Running Venus on any Debian system is possible. Without a "chroot" jail or a container. On Intel laptops or servers, a Raspberry Pi, or (almost) whatever.

Disclaimer: yes this is a hack, and in no way endorsed or supported by Victron Energy, or anybody else (other than me) for that matter. It's also preliminary work and probably not yet suited for production use.

*****************

I'd like to introduce:

The Venusian. https://github.com/M-o-a-T/venusian/

This repository contains an installer script (plus some support files) that convince the Venus system to run on a normal Debian system, as the user "venus". No root. No access to the system dbus.

Its programs are managed with "systemd --user". No more daemontools.

A monitor process watches udev directly and starts tasks in parallel; no venus-specific udev rules are necessary (except for adding permissions). Logging and all other debug output goes to the systemd journal.

The Venusian doesn't do serial port probing. (Probing is fragile, takes time, and spams the port with garbage.) Instead, a simple YAML config file tells the udev monitor which unit to start and with which parameters. Modbus-RTU probing still happens, but not with multiple baud rates.

The Venusian also includes support for several Modbus-capable energy meters which basic Venus doesn't recognize.

Cleanly restarting the whole Venus system takes just a few seconds and doesn't require a reboot.

Tested on a Raspberry Pi 3 running Debian (not Raspbian), as well as on Intel, so should work anywhere with a working `qemu-user-arm` binary. Here's a little screenshot from my laptop. It's an Intel Macbook Mini, running Debian (of course ...). Note the VNC server's network address.

1707566975482.png

I haven't connected my batteries yet because my controller is somewhat special. That's for next week.

I do plan to use this in production soon(ish).
 
As a Linux nerd, technically cool. But, I suspect the user base will be close to '1'. :). systemd would be nice though.

One thing, I did try to get VenusOS to boot on my Ubuntu system with qemu for development purposes. I could get the kernel to boot, but then it panic'ed. Can you tell me (or point me to) the command line args for qemu?
 
I'm not using qemu to run the Venus kernel. I don't need (or want) it.

The Venus binaries can run natively on a standard Debian arm64 kernel (you only need to hack modified paths into the ELF loader at /lib/ld-linux-armhf.so.3), or with the qemu-user-armhf emulator on Intel/AMD.
 
Back
Top