Tool to manage openinverter via CAN

Discussion about various user interfaces such as web interface, displays and apps
davefiddes
Posts: 375
Joined: Mon Jan 18, 2021 12:39 pm
Location: Edinburgh, Scotland, UK
Has thanked: 149 times
Been thanked: 195 times

Re: Tool to manage openinverter via CAN

Post by davefiddes »

I've just released v0.3.3 of the tool:

What's New
  • Fix logging of bitfield parameters with a zero value.
  • Remove python 3.8 support which hasn't worked for some time.
  • Fix validation of node id. Nodes need to be between 1 and 127.
Just tidying up some minor nits that were annoying me.
User avatar
Bigpie
Posts: 1845
Joined: Wed Apr 10, 2019 8:11 pm
Location: South Yorkshire, UK
Has thanked: 89 times
Been thanked: 481 times

Re: Tool to manage openinverter via CAN

Post by Bigpie »

I've done a PR to add an initial GUI to the tool
Screenshot 2025-07-28 at 10.32.42.png
BMW E91 2006
ZombieVerter
GS450h
Outlander Charger DC/DC
Outlander Compressor
Renault Kangoo 36kWh battery
FOCCCI CCS
davefiddes
Posts: 375
Joined: Mon Jan 18, 2021 12:39 pm
Location: Edinburgh, Scotland, UK
Has thanked: 149 times
Been thanked: 195 times

Re: Tool to manage openinverter via CAN

Post by davefiddes »

I've just released v0.4.0 of the tool:

What's New
  • Experimental GUI allowing parameter viewing, modification, firmware upgrade and device control
  • Rebrand to OpenInverter CAN Tool
  • Document and recommend usage of pipx for installation
  • Document using canable-fw based CAN adapters on MacOS
  • Stop extraneous python stack back-trace information being displayed on common CAN bus errors
Thank you to @Bigpie for their contribution.
evMacGyver
Posts: 160
Joined: Tue Jun 15, 2021 5:44 pm
Location: Finland
Has thanked: 59 times
Been thanked: 11 times

Re: Tool to manage openinverter via CAN

Post by evMacGyver »

OpenInverter CAN tool has been absolutely great, beside normal usage I update Zombieverter firmware quite often and there has been no problems at all.

Using Innomaker USB2CAN adapter with Linux and kernel buildin drivers and no need to compile driver like with some adapters. One nice feature is to set CAN network automatically when plugging adapter, like this:
/etc/systemd/network/80-can.network

[Match]
Name=can*

[CAN]
BitRate=500K
# sudo systemctl restart systemd-networkd ; sudo networkctl reload


Not sure is this generic library error which sometimes happen mostly while reading values:
Transfer aborted by client with code 0x05040000 ... 0x05040000: "Timeout of transfer communication detected"
Repeating command does the trick, just has others seen this or something to do with my setup? Same happens sometimes with other adapter too
davefiddes
Posts: 375
Joined: Mon Jan 18, 2021 12:39 pm
Location: Edinburgh, Scotland, UK
Has thanked: 149 times
Been thanked: 195 times

Re: Tool to manage openinverter via CAN

Post by davefiddes »

Great! Glad it's proving useful to you.

The systemd-networkd support is great. It makes CAN busses plug and play just like Ethernet. I had a bad experience when I tried it on my machine (it refused to boot) and haven't investigated what I did wrong enough to document it properly.
evMacGyver wrote: Sun Aug 03, 2025 1:07 pm Not sure is this generic library error which sometimes happen mostly while reading values:
Transfer aborted by client with code 0x05040000 ... 0x05040000: "Timeout of transfer communication detected"
Repeating command does the trick, just has others seen this or something to do with my setup? Same happens sometimes with other adapter too
I hope this was with versions prior to v0.4.0. I found a silly bug when fixing up the GUI code to save parameters that would reliably trigger this problem. It could have happened at any time with any function on earlier versions. It should be fixed now. Please let me know if you see failures like this again.
davefiddes
Posts: 375
Joined: Mon Jan 18, 2021 12:39 pm
Location: Edinburgh, Scotland, UK
Has thanked: 149 times
Been thanked: 195 times

Re: Tool to manage openinverter via CAN

Post by davefiddes »

I've just released v0.4.1 of the tool:

What's New
  • Fix clearing and importing CAN maps. The canopen library used by the tool has been updated and this has exposed a protocol error in the way the tool and OpenInverter projects remove CAN map entries. Updating is required to work with upcoming firmware releases.
ChrisBPI
Posts: 1
Joined: Mon Sep 15, 2025 8:01 am

Re: Tool to manage openinverter via CAN

Post by ChrisBPI »

Hi Dave,

Thank you very much for sharing the latest version of the OpenInverter CAN tool.

I am currently testing it with Foccci and have run into an issue. I am able to map a CAN message ID with a parameter successfully, but when I try to add a second parameter, I receive the message “Command or parameter not supported.”

PS C:\Users\ChrisK\Desktop> oic -n 22 can list
uptime library not available, timestamps are relative to boot time and not to Epoch UTC
0x109:
tx.0.0 param='EvseVoltage' pos=8 length=16 gain=1.0 offset=0
tx.0.1 param='EvseCurrent' pos=24 length=8 gain=1.0 offset=0
tx.0.2 param='opmode' pos=40 length=8 gain=1.0 offset=0
0x108:
tx.1.0 param='EvseMaxVoltage' pos=8 length=16 gain=1.0 offset=0
tx.1.1 param='EvseMaxCurrent' pos=24 length=8 gain=1.0 offset=0
0x309:
rx.0.0 param='soc' pos=8 length=8 gain=1.0 offset=0

PS C:\Users\ChrisK\Desktop> oic -n22 can add rx 0x309 BatteryVoltage 16 16 1
uptime library not available, timestamps are relative to boot time and not to Epoch UTC
Adding CAN rx mapping with can_id=0x309 param='BatteryVoltage' position=16 length=16 gain=1.0 offset=0
Command or parameter not supported


At first, I thought this might be related to my Windows 11 setup, but I later tested on Ubuntu 24.04.3 LTS and the issue persisted.

I also attempted to load my CAN mapping using the JSON file import feature of the tool, but it didn’t work.

Am I perhaps missing a step?
User avatar
johu
Site Admin
Posts: 6968
Joined: Thu Nov 08, 2018 10:52 pm
Location: Kassel/Germany
Has thanked: 454 times
Been thanked: 1771 times
Contact:

Re: Tool to manage openinverter via CAN

Post by johu »

Can you record the SDO CAN messages while doing the mapping? So 0x622 and 0x5A2
Support R/D and forum on Patreon: https://patreon.com/openinverter - Subscribe on odysee: https://odysee.com/@openinverter:9
davefiddes
Posts: 375
Joined: Mon Jan 18, 2021 12:39 pm
Location: Edinburgh, Scotland, UK
Has thanked: 149 times
Been thanked: 195 times

Re: Tool to manage openinverter via CAN

Post by davefiddes »

Sorry that you're having problems Chris. The easiest way to capture what's going wrong is to enable debug tracing. You can do this by adding "--debug" to the command, so something like:

Code: Select all

oic --debug -n22 can add rx 0x309 BatteryVoltage 16 16 1
I wonder if the canopen library that the tool uses may be out of date. Are you using pip or pipx to install the software? I recommend using pipx these days as it guaranteed a clean isolated set of libraries.

If you are using pip you should get something like this:

Code: Select all

$ pip list | grep canopen
canopen                       2.4.1
davefiddes
Posts: 375
Joined: Mon Jan 18, 2021 12:39 pm
Location: Edinburgh, Scotland, UK
Has thanked: 149 times
Been thanked: 195 times

Re: Tool to manage openinverter via CAN

Post by davefiddes »

I've just released v0.5.0 of the tool:

What's New
  • Add the ability to display a device's error log in the CLI and GUI
  • Improve firmware upgrade to detect and reject attempts to upgrade with ELF (for debuggers) or Intel HEX (for serial upgrade) files.
  • Add documentation on how to automatically start socketcan interfaces on Linux (thanks @evMacGyver)
  • Expand the list of known working adapters to include PCAN-USB (thanks @Jack Bauer)
The error log display needs updated firmware support. So far Stm32-vcu Vehicle_Testing and M3_DU stm32-sine have this but @johu's Flying ADC BMS and ccs32clara both need updating.

To give a flavour this is what an inverter having bad hair day looks like:
Screenshot From 2025-10-13 11-36-13.png
User avatar
johu
Site Admin
Posts: 6968
Joined: Thu Nov 08, 2018 10:52 pm
Location: Kassel/Germany
Has thanked: 454 times
Been thanked: 1771 times
Contact:

Re: Tool to manage openinverter via CAN

Post by johu »

Clara updated https://github.com/uhi22/ccs32clara/com ... b48018e46f

BMS will come next. Both need real world testing. Currently away from hardware
Support R/D and forum on Patreon: https://patreon.com/openinverter - Subscribe on odysee: https://odysee.com/@openinverter:9
User avatar
johu
Site Admin
Posts: 6968
Joined: Thu Nov 08, 2018 10:52 pm
Location: Kassel/Germany
Has thanked: 454 times
Been thanked: 1771 times
Contact:

Re: Tool to manage openinverter via CAN

Post by johu »

offtopic Foccci question now here viewtopic.php?p=86864#p86864
Support R/D and forum on Patreon: https://patreon.com/openinverter - Subscribe on odysee: https://odysee.com/@openinverter:9
davefiddes
Posts: 375
Joined: Mon Jan 18, 2021 12:39 pm
Location: Edinburgh, Scotland, UK
Has thanked: 149 times
Been thanked: 195 times

Re: Tool to manage openinverter via CAN

Post by davefiddes »

I've just released v0.5.1 of the tool:

What's New
  • Allow fractional logging steps down to 0.1 second
  • Add python 3.14 support
Just a minor maintenance release.
Post Reply