dj-nitehawk / hybrid-inverter-monitor Goto Github PK
View Code? Open in Web Editor NEWMonitoring application for hybrid inverters using the Voltronic communication protocol & JK BMS via USB port.
License: MIT License
Monitoring application for hybrid inverters using the Voltronic communication protocol & JK BMS via USB port.
License: MIT License
sorry, I'am a rip3 user, and installed Debian Bullseye no desktop on it.
how install your program with a terminal ?
I have Voltronic and jkbms
I couldn't access server from local ip. localhost works fine. When scanned from nmap (windows) "80/tcp open http Kestrel". But browser end up with "This site can’t be reached192.168.8.201 refused to connect.". Slimier old post were found in following two links.
https://stackoverflow.com/questions/34212765/how-do-i-get-the-kestrel-web-server-to-listen-to-non-localhost-requests
https://stackoverflow.com/questions/33975949/asp-net-5-kestrel-connect-within-lan/34092934#34092934
Please consider for future developments.
Hy, i have a litle problem - after i type the status comand, it shows me -> main pid:2410 (code=exited, status=200/CHDIR). What seems to be the problem ? I'm using Ubuntu 20.4.
Hi!
Will there be any option for paralell inverter monitoring and support for JBD bms?
Reagrds Žiga
Is it possible to remove all unused code generated on page loading
analyze say that 1.2 megabyte of 1.5 megabytes is useless
Lighthouse
some network errors
Source | Description
-- | --
/_framework/blazor.webassembly.js:1:35648(192.168.1.222) | Error: Failed to start platform. Reason: TypeError: Failed to fetch at At (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:59595)
http://192.168.1.222:82:1:0 | Failed to find a valid digest in the 'integrity' attribute for resource 'http://192.168.1.222:82/_framework/dotnet.timezones.blat' with computed SHA-256 integrity '44J/Hf/X8VbgiBAazDB8c0FaVrAFYOb4BbGyQwuzNyk='. The resource has been blocked.
http://192.168.1.222:82:1:0 | Failed to find a valid digest in the 'integrity' attribute for resource 'http://192.168.1.222:82/_framework/InverterMon.Client.dll' with computed SHA-256 integrity 'jq7dKK2/5MUQjuEfqhcC1e9ibP2drv354cz4WZwQJzg='. The resource has been blocked.
http://192.168.1.222:82:1:0 | Failed to find a valid digest in the 'integrity' attribute for resource 'http://192.168.1.222:82/_framework/System.Collections.Concurrent.dll' with computed SHA-256 integrity 'ZoTknMQdjeVkJIgG3ythn+PYiqRKWYWzXsF7SfQ+BXc='. The resource has been blocked.
http://192.168.1.222:82:1:0 | Failed to find a valid digest in the 'integrity' attribute for resource 'http://192.168.1.222:82/_framework/System.Collections.dll' with computed SHA-256 integrity 'LgbUHqNC/fifkbXFHaUO5c3HdzIZojCv9kMK1O0RRaE='. The resource has been blocked.
http://192.168.1.222:82:1:0 | Failed to find a valid digest in the 'integrity' attribute for resource 'http://192.168.1.222:82/_framework/System.ComponentModel.dll' with computed SHA-256 integrity 'NT26TVIOw6H4IVm61vfKvg922vBHU7A5mGYW194SBCA='. The resource has been blocked.
http://192.168.1.222:82:1:0 | Failed to find a valid digest in the 'integrity' attribute for resource 'http://192.168.1.222:82/_framework/System.Memory.dll' with computed SHA-256 integrity 'R0peGsRutQr4Sy4Ix3P78P9NdXSAt9ABjOVa3k2xQwE='. The resource has been blocked.
http://192.168.1.222:82:1:0 | Failed to find a valid digest in the 'integrity' attribute for resource 'http://192.168.1.222:82/_framework/System.Net.Http.dll' with computed SHA-256 integrity 'DU7Ni9uxqvyDktz/wxnDvK/6b4K2HEK1MHAEA144Nx0='. The resource has been blocked.
http://192.168.1.222:82:1:0 | Failed to find a valid digest in the 'integrity' attribute for resource 'http://192.168.1.222:82/_framework/System.Net.Http.Json.dll' with computed SHA-256 integrity 'HeX23s9OlZxnOkQn/gp6tE8ZUfGBOJ8MMYvB7EWYbyg='. The resource has been blocked.
http://192.168.1.222:82:1:0 | Failed to find a valid digest in the 'integrity' attribute for resource 'http://192.168.1.222:82/_framework/System.Net.Primitives.dll' with computed SHA-256 integrity 'UW5cFFWj7qLu38Qk8xKbG/uIL3HUhTSTrYuJ2zlFHYw='. The resource has been blocked.
http://192.168.1.222:82:1:0 | Failed to find a valid digest in the 'integrity' attribute for resource 'http://192.168.1.222:82/_framework/System.Private.CoreLib.dll' with computed SHA-256 integrity 'ToPtM2qQwmXyx5AdY9kkqm5NgcYo0eBkGdMdS8ngeCc='. The resource has been blocked.
http://192.168.1.222:82:1:0 | Failed to find a valid digest in the 'integrity' attribute for resource 'http://192.168.1.222:82/_framework/System.Private.Runtime.InteropServices.JavaScript.dll' with computed SHA-256 integrity '/XNr9MDVSIp3KJWoHPS//Ds+4D3dXSgHdXXB/GKNGME='. The resource has been blocked.
http://192.168.1.222:82:1:0 | Failed to find a valid digest in the 'integrity' attribute for resource 'http://192.168.1.222:82/_framework/System.Private.Uri.dll' with computed SHA-256 integrity 'MceulV6fhfba0AjShEycCaLmNX9+VwwHipsmCWpdrYs='. The resource has been blocked.
http://192.168.1.222:82:1:0 | Failed to find a valid digest in the 'integrity' attribute for resource 'http://192.168.1.222:82/_framework/System.Runtime.CompilerServices.Unsafe.dll' with computed SHA-256 integrity '7/+WbgL/5vxkD9YDf/GxlzydOhe0VXY0ljzLewYRAe0='. The resource has been blocked.
http://192.168.1.222:82:1:0 | Failed to find a valid digest in the 'integrity' attribute for resource 'http://192.168.1.222:82/_framework/System.Runtime.dll' with computed SHA-256 integrity 'XtmlEgVpUYr/A4F+b8K64Gd5bxnk3dGUThY7bpx2+mA='. The resource has been blocked.
http://192.168.1.222:82:1:0 | Failed to find a valid digest in the 'integrity' attribute for resource 'http://192.168.1.222:82/_framework/System.Text.Encodings.Web.dll' with computed SHA-256 integrity 'KG0o1aa3RlYVwiLWu9TKy6cfjk+/xF6LZPUYL7ElRb8='. The resource has been blocked.
http://192.168.1.222:82:1:0 | Failed to find a valid digest in the 'integrity' attribute for resource 'http://192.168.1.222:82/_framework/System.Text.Json.dll' with computed SHA-256 integrity 'CqavYGMM3xlul92sEOTLQVDATUlpY5hSfSX6DopDHi8='. The resource has been blocked.
/_framework/blazor.webassembly.js:1:49764(192.168.1.222) | TypeError: Failed to fetch at ut.loadResourceWithoutCaching (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:49765) at ut.loadResource (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:48209) at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:36070 at window.__wasmmodulecallback__ (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:42668) at <anonymous>:1:20 at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:43463 at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:43478 at new Promise (<anonymous>) at Object.start (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:34639) at At (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:59571)
/_framework/blazor.webassembly.js:1:49764(192.168.1.222) | TypeError: Failed to fetch at ut.loadResourceWithoutCaching (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:49765) at ut.loadResource (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:48209) at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:36070 at window.__wasmmodulecallback__ (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:42668) at <anonymous>:1:20 at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:43463 at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:43478 at new Promise (<anonymous>) at Object.start (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:34639) at At (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:59571)
/_framework/blazor.webassembly.js:1:49764(192.168.1.222) | TypeError: Failed to fetch at ut.loadResourceWithoutCaching (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:49765) at ut.loadResource (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:48209) at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:48051 at Array.map (<anonymous>) at ut.loadResources (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:48038) at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:35756 at window.__wasmmodulecallback__ (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:42668) at <anonymous>:1:20 at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:43463 at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:43478
/_framework/blazor.webassembly.js:1:49764(192.168.1.222) | TypeError: Failed to fetch at ut.loadResourceWithoutCaching (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:49765) at ut.loadResource (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:48209) at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:48051 at Array.map (<anonymous>) at ut.loadResources (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:48038) at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:35756 at window.__wasmmodulecallback__ (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:42668) at <anonymous>:1:20 at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:43463 at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:43478
/_framework/blazor.webassembly.js:1:49764(192.168.1.222) | TypeError: Failed to fetch at ut.loadResourceWithoutCaching (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:49765) at ut.loadResource (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:48209) at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:48051 at Array.map (<anonymous>) at ut.loadResources (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:48038) at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:35756 at window.__wasmmodulecallback__ (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:42668) at <anonymous>:1:20 at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:43463 at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:43478
/_framework/blazor.webassembly.js:1:49764(192.168.1.222) | TypeError: Failed to fetch at ut.loadResourceWithoutCaching (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:49765) at ut.loadResource (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:48209) at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:48051 at Array.map (<anonymous>) at ut.loadResources (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:48038) at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:35756 at window.__wasmmodulecallback__ (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:42668) at <anonymous>:1:20 at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:43463 at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:43478
/_framework/blazor.webassembly.js:1:49764(192.168.1.222) | TypeError: Failed to fetch at ut.loadResourceWithoutCaching (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:49765) at ut.loadResource (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:48209) at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:48051 at Array.map (<anonymous>) at ut.loadResources (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:48038) at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:35756 at window.__wasmmodulecallback__ (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:42668) at <anonymous>:1:20 at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:43463 at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:43478
/_framework/blazor.webassembly.js:1:49764(192.168.1.222) | TypeError: Failed to fetch at ut.loadResourceWithoutCaching (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:49765) at ut.loadResource (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:48209) at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:48051 at Array.map (<anonymous>) at ut.loadResources (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:48038) at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:35756 at window.__wasmmodulecallback__ (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:42668) at <anonymous>:1:20 at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:43463 at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:43478
/_framework/blazor.webassembly.js:1:49764(192.168.1.222) | TypeError: Failed to fetch at ut.loadResourceWithoutCaching (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:49765) at ut.loadResource (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:48209) at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:48051 at Array.map (<anonymous>) at ut.loadResources (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:48038) at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:35756 at window.__wasmmodulecallback__ (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:42668) at <anonymous>:1:20 at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:43463 at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:43478
/_framework/blazor.webassembly.js:1:49764(192.168.1.222) | TypeError: Failed to fetch at ut.loadResourceWithoutCaching (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:49765) at ut.loadResource (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:48209) at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:48051 at Array.map (<anonymous>) at ut.loadResources (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:48038) at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:35756 at window.__wasmmodulecallback__ (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:42668) at <anonymous>:1:20 at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:43463 at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:43478
/_framework/blazor.webassembly.js:1:49764(192.168.1.222) | TypeError: Failed to fetch at ut.loadResourceWithoutCaching (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:49765) at ut.loadResource (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:48209) at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:48051 at Array.map (<anonymous>) at ut.loadResources (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:48038) at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:35756 at window.__wasmmodulecallback__ (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:42668) at <anonymous>:1:20 at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:43463 at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:43478
/_framework/blazor.webassembly.js:1:49764(192.168.1.222) | TypeError: Failed to fetch at ut.loadResourceWithoutCaching (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:49765) at ut.loadResource (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:48209) at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:48051 at Array.map (<anonymous>) at ut.loadResources (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:48038) at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:35756 at window.__wasmmodulecallback__ (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:42668) at <anonymous>:1:20 at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:43463 at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:43478
/_framework/blazor.webassembly.js:1:49764(192.168.1.222) | TypeError: Failed to fetch at ut.loadResourceWithoutCaching (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:49765) at ut.loadResource (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:48209) at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:48051 at Array.map (<anonymous>) at ut.loadResources (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:48038) at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:35756 at window.__wasmmodulecallback__ (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:42668) at <anonymous>:1:20 at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:43463 at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:43478
/_framework/blazor.webassembly.js:1:49764(192.168.1.222) | TypeError: Failed to fetch at ut.loadResourceWithoutCaching (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:49765) at ut.loadResource (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:48209) at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:48051 at Array.map (<anonymous>) at ut.loadResources (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:48038) at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:35756 at window.__wasmmodulecallback__ (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:42668) at <anonymous>:1:20 at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:43463 at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:43478
/_framework/blazor.webassembly.js:1:49764(192.168.1.222) | TypeError: Failed to fetch at ut.loadResourceWithoutCaching (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:49765) at ut.loadResource (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:48209) at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:48051 at Array.map (<anonymous>) at ut.loadResources (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:48038) at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:35756 at window.__wasmmodulecallback__ (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:42668) at <anonymous>:1:20 at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:43463 at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:43478
/_framework/blazor.webassembly.js:1:49764(192.168.1.222) | TypeError: Failed to fetch at ut.loadResourceWithoutCaching (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:49765) at ut.loadResource (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:48209) at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:48051 at Array.map (<anonymous>) at ut.loadResources (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:48038) at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:35756 at window.__wasmmodulecallback__ (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:42668) at <anonymous>:1:20 at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:43463 at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:43478
/_framework/blazor.webassembly.js:1:49764(192.168.1.222) | TypeError: Failed to fetch at ut.loadResourceWithoutCaching (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:49765) at ut.loadResource (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:48209) at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:48051 at Array.map (<anonymous>) at ut.loadResources (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:48038) at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:35756 at window.__wasmmodulecallback__ (http://192.168.1.222:82/_framework/blazor.webassembly.js:1:42668) at <anonymous>:1:20 at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:43463 at http://192.168.1.222:82/_framework/blazor.webassembly.js:1:43478
http://192.168.1.222:82:1:0 | Unknown error occurred while trying to verify integrity.
http://192.168.1.222:82:1:0 | Unknown error occurred while trying to verify integrity.
http://192.168.1.222:82:1:0 | Unknown error occurred while trying to verify integrity.
http://192.168.1.222:82:1:0 | Unknown error occurred while trying to verify integrity.
http://192.168.1.222:82:1:0 | Unknown error occurred while trying to verify integrity.
http://192.168.1.222:82:1:0 | Unknown error occurred while trying to verify integrity.
http://192.168.1.222:82:1:0 | Unknown error occurred while trying to verify integrity.
http://192.168.1.222:82:1:0 | Unknown error occurred while trying to verify integrity.
http://192.168.1.222:82:1:0 | Unknown error occurred while trying to verify integrity.
http://192.168.1.222:82:1:0 | Unknown error occurred while trying to verify integrity.
http://192.168.1.222:82:1:0 | Unknown error occurred while trying to verify integrity.
http://192.168.1.222:82:1:0 | Unknown error occurred while trying to verify integrity.
http://192.168.1.222:82:1:0 | Unknown error occurred while trying to verify integrity.
http://192.168.1.222:82:1:0 | Unknown error occurred while trying to verify integrity.
http://192.168.1.222:82:1:0 | Unknown error occurred while trying to verify integrity.
http://192.168.1.222:82:1:0 | Unknown error occurred while trying to verify integrity.
Hi - I just installed my Voltronic Power VMIII5000-48. All runs well. Now I wanted to have a good way to monitor the solar system and found this script.
I got it up and running - but when opening the web browser, the website is empty. on my raspberry, I am getting this:
any idea?
warn: InverterMon.Server.BatteryService.JkBms[0]
trying to open bms port at: /dev/ttyUSB0
info: FastEndpoints.StartupTimer[0]
Registered 7 endpoints in 3206 milliseconds.
info: InverterMon.Server.InverterService.CommandExecutor[0]
connecting to the inverter...
info: InverterMon.Server.InverterService.CommandExecutor[0]
connected to inverter at: [/dev/hidraw0]
info: Microsoft.Hosting.Lifetime[14]
Now listening on: http://0.0.0.0:80
info: Microsoft.Hosting.Lifetime[0]
Application started. Press Ctrl+C to shut down.
info: Microsoft.Hosting.Lifetime[0]
Hosting environment: Production
info: Microsoft.Hosting.Lifetime[0]
Content root path: /home/pi
info: Microsoft.AspNetCore.Hosting.Diagnostics[1]
Request starting HTTP/1.1 GET http://192.168.1.48/ - -
info: Microsoft.AspNetCore.Routing.EndpointMiddleware[0]
Executing endpoint 'Fallback {*path:nonfile}'
info: Microsoft.AspNetCore.Routing.EndpointMiddleware[1]
Executed endpoint 'Fallback {*path:nonfile}'
info: Microsoft.AspNetCore.Hosting.Diagnostics[2]
Request finished HTTP/1.1 GET http://192.168.1.48/ - - - 404 0 - 1101.8171ms
warn: InverterMon.Server.BatteryService.JkBms[0]
trying to open bms port at: /dev/ttyUSB0
Hello i have downloaded all files to /inverter library in root and when trying to start with command ./InverterMon.Server i
get a fault illegal instruction!? Does anybody else have this problem?
The Zero does not seem to find a Hidraw0 but a USB0...
I Used the normal Linux arm release..
Hello I am using a MPP solar LVX6048WP connected to a raspberry pi running this software
things seem to connect ok but I repeatedly get
./InverterMon.Server info: FastEndpoints.StartupTimer[0] Registered 6 endpoints in 2326 milliseconds. info: InverterMon.Server.InverterService.CommandExecutor[0] inverter connected! info: Microsoft.Hosting.Lifetime[14] Now listening on: http://0.0.0.0:80 info: Microsoft.Hosting.Lifetime[0] Application started. Press Ctrl+C to shut down. info: Microsoft.Hosting.Lifetime[0] Hosting environment: Production info: Microsoft.Hosting.Lifetime[0] Content root path: /home/pi/solar/ fail: InverterMon.Server.InverterService.CommandExecutor[0] execution error: Format_InvalidString fail: InverterMon.Server.InverterService.CommandExecutor[0] execution error: Format_InvalidString fail: InverterMon.Server.InverterService.CommandExecutor[0] execution error: Format_InvalidString fail: InverterMon.Server.InverterService.CommandExecutor[0] execution error: Format_InvalidString fail: InverterMon.Server.InverterService.CommandExecutor[0] execution error: Format_InvalidString fail: InverterMon.Server.InverterService.CommandExecutor[0] execution error: Format_InvalidString fail: InverterMon.Server.InverterService.CommandExecutor[0] execution error: Format_InvalidString fail: InverterMon.Server.InverterService.CommandExecutor[0] execution error: Format_InvalidString fail: InverterMon.Server.InverterService.CommandExecutor[0] execution error: Format_InvalidString fail: InverterMon.Server.InverterService.CommandExecutor[0] execution error: Format_InvalidString fail: InverterMon.Server.InverterService.CommandExecutor[0] execution error: Format_InvalidString fail: InverterMon.Server.InverterService.CommandExecutor[0] execution error: Format_InvalidString ^Cinfo: Microsoft.Hosting.Lifetime[0] Application is shutting down... fail: InverterMon.Server.InverterService.CommandExecutor[0] execution error: Format_InvalidString
Thanks
Hi,
with this tool is possibile to read data from inverter and send it to a remote server for emoncms?
like solpiplog but for i386 :)
thanks
It will be very easy for regular user to have configuration file,
where can be set some basic settings.
ex.
web_port : 8080
dev : hiddev1
I have tried using your software but I have a challenge. Every time i try to query inverter settings the device communication freezes and the values on the Live stats tab change to zero . Even when I leave the system idle a few hours later I find the inverter part frozen with some values or all values are zero . I have tried your software on raspberry pi 3b running Debian and also trying the same with an x86 pc running latest Ubuntu server Lts.Help me identify what the problem might be.
FYI i even tried a different USB cable .
Hello,
Great project! I'm new to this so please excuse my lack of knowledge.
Is it possible to use this to add MPP Solar inverter and JKBMS compatibility to Victron VenusOS and/or Home Assistant running on RPI? This would be very useful if possible!
Thanks Paul
I'm trying to tweak this to match my inverter. How do I compile the server portion? I'm not familiar with c# or DOTNET. I'm using dotnet build -o out InverterMon.Server.csproj but I need all the support dlls for it to run so I test run it out of the out dir and the web page doesn't fully load.
Hallo
Ich habe alles in das root Verzeichnis kopiert und den Server gestartet er zeigt mir unter Status auch alles grün aber ich komme nicht auf die weboberfläche.
Es kommt nur apache seite.
when I run the program on a raspberry pi zero it gives the error illegal instruction.
This SSE example Endpoint GetStatus , I wonder when there are more than two browser clients subsribed "status", the code is seemed to be the CommandQueue.GetCommand() method will just Peek one comand for the one client to comsume, yet others won't get response ?
This may be a dum feature, but please consider this as a request of new feature.
This may need some work on the app, and finding sources likewise.
The suggestion is:
I would like to if the program itself can look into the weather in the area selected by the user, and if the PI is connected to the internet, then it reads the weather data, and try to keep the battery at a certain percentage or pre definded V value, and change to grid (if that is availble) so user does not need to manually do that. Because should be possible because you have shared the source code avialble to everyone
I am not much into c#, appriciate if there is any way I cant get Inverter Current mode. ie, if it is currently on 'By Pass mode'
as per the protocol guilde, Computer: QMOD should do this. but what I don't understand here is, why it does not work ?
any config to be changed to get that ?
Appreciate If someone experienced can provide me a guide here.
Thank you
I try connecting to sumry hybrid inverter but it is not working. sumry hybrid inverter is supported? Thanks,
Hi,
thanks for all the work that has been made !
Do you have a binary that is supported by i686 32-bit ?
Best regards
Any chance this could be built/modded to support ARMv6? I have an older Raspberry Pi and get an Illegal Instruction error trying to run the ARM build, so assume it's built for v7 or later.
In some cases hidraw[n] is not accessible
is there a chance to be implemented tty interface
https://docs.microsoft.com/en-us/dotnet/api/system.io.ports.serialport?view=dotnet-plat-ext-6.0
# dmesg -T |grep raw
[su jul 17 11:23:59 2022] hid-generic 0003:0665:5161.000C: hiddev2,hidraw2: USB HID v1.11 Device [STMicroelectronics HID in FS Mode] on usb-0000:00:1d.2-1/input0
it appear as ttyUSB0
howdy. I accidentally found this job doing research and it seems to me to be my case. I would like some information if possible. The application allows you to control Voltronic inverters via MQTT or just monitor?. I should use it on RPI4 with Openhab home automation server, and I would like to send commands to the inverter. Thanks for any answers. Joseph
Is it possible to be added simple steps for building binary
needed dependencies etc.
I try to build it on AlpinLinux 32bit without success.
Matching /dev/hidraw* devices with physical devices
#!/bin/bash
FILES=/dev/hidraw*
for f in $FILES
do
FILE=${f##*/}
DEVICE="$(cat /sys/class/hidraw/${FILE}/device/uevent | grep HID_NAME | cut -d '=' -f2)"
printf "%s \t %s\n" $FILE "$DEVICE"
done
Hi there,
I have a EASUN inverter SMP-5k, 5kw hybrid Chinese. The code is working (latest release - but was similar on older ones as well), on live stats and on PV Generation I can see the data from /hidraw1, but if I go in Settings page, is not loading and I have an error: "An error has occurred... Reload".
If I check the service status I can see only this:
Apr 02 21:24:01 linux InverterMon.Server[1011]: info: Microsoft.Hosting.Lifetime[14]
Apr 02 21:24:01 linux InverterMon.Server[1011]: Now listening on: http://0.0.0.0:80
Apr 02 21:24:01 linux InverterMon.Server[1011]: info: Microsoft.Hosting.Lifetime[0]
Apr 02 21:24:01 linux InverterMon.Server[1011]: Application started. Press Ctrl+C to shut down.
Apr 02 21:24:01 linux InverterMon.Server[1011]: info: Microsoft.Hosting.Lifetime[0]
Apr 02 21:24:01 linux InverterMon.Server[1011]: Hosting environment: Production
Apr 02 21:24:01 linux InverterMon.Server[1011]: info: Microsoft.Hosting.Lifetime[0]
Apr 02 21:24:01 linux InverterMon.Server[1011]: Content root path: /inverter
Apr 02 21:24:01 linux InverterMon.Server[1011]: fail: InverterMon.Server.InverterService.CommandExecutor[0]
Apr 02 21:24:01 linux InverterMon.Server[1011]: execution error: Format_InvalidStringWithValue, NAKs
Any idea what is wrong?
This is a debug option for getting extra info from inverter.
Predefined list of commands send with protocol
ex:
drop-down list with commands + drop-down list with protocol and "SEND" button
/possibly custom command for commands out of list/
Protocols
pi16 PI16 protocol handler
pi17 PI17 protocol handler
pi17infini PI17INFINI protocol handler
pi18 PI18 protocol handler
pi30 PI30 protocol handler
pi30max PI30 protocol handler for LV6048MAX and similar inverters
pi30revo PI30 protocol handler for REVO and similar inverters
pi41 PI41 protocol handler
Hi,
When calling api/settings/get-charge-ampere-values
I get the following response
{"statusCode":400,"message":"One or more errors occured!","errors":{"GeneralErrors":["Unable to read settings in a timely manner!"]}}
I have a Mecer 3Kva inverter, I am not sure if there is an error with getting the specific information but the api/status call seems to work.
I believe this because there is no specific error handling the whole site's JS crashes as a first point.
secondly, I am quite familiar with c# and would like to debug, can I connect my pc straight to the inverter to debug?
Not idea what this error is
browser show only this
./InverterMon.Server
info: FastEndpoints.StartupTimer[0]
Registered 6 endpoints in 6549 milliseconds.
info: InverterMon.Server.InverterService.CommandExecutor[0]
inverter connected!
info: Microsoft.Hosting.Lifetime[14]
Now listening on: http://0.0.0.0:82
info: Microsoft.Hosting.Lifetime[0]
Application started. Press Ctrl+C to shut down.
info: Microsoft.Hosting.Lifetime[0]
Hosting environment: Production
info: Microsoft.Hosting.Lifetime[0]
Content root path: /opt/INV/INV-MON/
fail: InverterMon.Server.InverterService.CommandExecutor[0]
execution error: Input string was not in a correct format.
fail: InverterMon.Server.InverterService.CommandExecutor[0]
execution error: Input string was not in a correct format.
fail: InverterMon.Server.InverterService.CommandExecutor[0]
execution error: Input string was not in a correct format.
fail: InverterMon.Server.InverterService.CommandExecutor[0]
execution error: Input string was not in a correct format.
fail: InverterMon.Server.InverterService.CommandExecutor[0]
execution error: Input string was not in a correct format.
^Cinfo: Microsoft.Hosting.Lifetime[0]
Application is shutting down...
fail: InverterMon.Server.InverterService.CommandExecutor[0]
execution error: Input string was not in a correct format.
I can see data from the inverter for about 2sec and then this error shows
InverterMon.Server.InverterService.CommandExecutor[0]
execution error: Connection timed out : '/dev/hidraw0'
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.