gch1p / isv

Linux utility for controlling Voltronic hybrid solar inverters that use P18 protocol
7 stars 1 forks source link

Invalid response given #1

Closed ensimek closed 3 years ago

ensimek commented 3 years ago

Hi, I have a problem firing it up. I have SKYMAX Inverter, same as Infinisolar, only case is orange not green. Downloaded software, and when i try to run it: pi@raspberrypi:~/isv $ sudo ./isv --get-protocol-id error: invalid response

Device hidraw0 is present, and something gets detected: pi@raspberrypi:~/isv $ lsusb -t /: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 5000M /: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/1p, 480M | Port 1: Dev 2, If 0, Class=Hub, Driver=hub/4p, 480M | Port 1: Dev 3, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M

Dmesg: [ 2.333374] usb 1-1.1: new low-speed USB device number 3 using xhci_hcd [ 2.483687] usb 1-1.1: New USB device found, idVendor=0665, idProduct=5161, bcdDevice= 0.02 [ 2.483729] usb 1-1.1: New USB device strings: Mfr=3, Product=1, SerialNumber=0 [ 2.493444] hid-generic 0003:0665:5161.0001: hiddev96,hidraw0: USB HID v1.11 Device [HID 0665:5161] on usb-0000:01:00.0-1.1/input0

Any idea why it throws invalid response?. Thanks!

gch1p commented 3 years ago

Hi. Well, it's not the same then :) it definitely uses different protocol. There are at least few of them known.

Can you tell the exact inverter model? Also please add the --verbose option and paste an output here.

P.S. I already started a work to make this utility modular in order to support different protocols and different inverters. If we'll figure out which protocol your unit uses, I'll support it too.

ensimek commented 3 years ago

Great stuff.

Verbose output: pi@raspberrypi:~/isv $ sudo ./isv --verbose --get-total-generated voltronic_send_data: writing 10 bytes: 0x000000: 5e 50 30 30 35 45 54 4e ^P005ETN 0x000008: 91 0d .. voltronic_receive_data: got 7 bytes: 0x000000: 28 4e 41 4b 73 73 0d (NAKss. error: invalid response

It's SKYMAX 3kW https://www.sklep.asat.pl/pl/p/Inwerter-Hybrydowy-SKYMAX-HYBRID-3kW/435 Works OK when i connect it to Windows + SolarPower .... so cable is OK, and USB connection works....

gch1p commented 3 years ago

SolarPower finds the right protocol by trial and error. It sends different commands until it gets the valid response. (I once sniffed the USB traffic between laptop and inverter while using SolarPower.) I suppose it supports them all, but, well, it's proprietary, they have all the documentation, etc etc.

So, your inverter uses different protocol, maybe this one RS232 communication Protocol for InfiniSolar 3K.pdf

It's not supported by isv yet (simply because I don't have such inverter for tests) but I think there are already other utils that may work with your inverter, maybe this https://github.com/JosefKrieglstein/AxpertControl or just try searching github like this https://github.com/search?q=axpert

Eventually I want to support this protocol too though.

ensimek commented 3 years ago

Thanks, It didnt work, but eventually after sniffing USB i found out its P16 protocol, so mpp-solar did it's job :)