| eliafino
| Inviato il: 05/07/2020 08:12:52
|
Aspetto risposta, grazie!
--------------- Impianto Fotovoltaico "eliafino" in Tempo Reale. http://www.eliafino.it:3000/d/solare/impianto-fotovoltaico-eliafino
| | | | eliafino
| Inviato il: 11/07/2020 10:37:31
|
Ho appena scoperto che il mio inverter accetta comandi via USB senza CRC.
Vado a vedermi a quale protocollo risponde, cerco il comando per metterlo in bypass o poi riportarlo a batteria
--------------- Impianto Fotovoltaico "eliafino" in Tempo Reale. http://www.eliafino.it:3000/d/solare/impianto-fotovoltaico-eliafino
| | | | emuland
| Inviato il: 11/07/2020 12:07:42
|
Linux?
--------------- 4A per mmq per Legge Rane Fritte, cavallette, bagarozzi e cotillon! Venite fuori alla festa!
| | | | eliafino
| Inviato il: 11/07/2020 12:16:39
|
CITAZIONE (emuland, 11/07/2020 12:07:42 )
Linux?
Sì sì, python su Linux. La connessione USB viene vista come /dev/hidraw0
root@raspberrypi:~# dmesg | grep -B 3 hidraw0
[ 2.087051] usb 1-1.2: new low-speed USB device number 4 using dwc_otg
[ 2.256451] usb 1-1.2: New USB device found, idVendor=0665, idProduct=5161, bcdDevice= 0.02
[ 2.261221] usb 1-1.2: New USB device strings: Mfr=3, Product=1, SerialNumber=0
[ 2.279684] hid-generic 0003:0665:5161.0001: hiddev96,hidraw0: USB HID v1.11 Device [HID 0665:5161] on usb-3f980000.usb-1.2/input0
Modificato da eliafino - 11/07/2020, 12:21:59
--------------- Impianto Fotovoltaico "eliafino" in Tempo Reale. http://www.eliafino.it:3000/d/solare/impianto-fotovoltaico-eliafino
| | | | emuland
| Inviato il: 11/07/2020 12:53:56
|
Su win devo capire come mai non mi vada il modulo per leggere da usb...ne ho provati diversi ma non carica mai tutto il pyusb quindi non riescono leggere la periferica.
Lo sniffer legge in tutto e per tutto i comandi e c'è però il crc alla fine...
--------------- 4A per mmq per Legge Rane Fritte, cavallette, bagarozzi e cotillon! Venite fuori alla festa!
| | | | maxsemp
| Inviato il: 11/07/2020 15:08:27
|
Anche il mio inverter (GENIUS50)
root@raspberrypi:/# dmesg | grep -B 3 hidraw0
[955260.764703] usb 1-1.4.4: new low-speed USB device number 87 using dwc_otg
[955260.933336] usb 1-1.4.4: New USB device found, idVendor=0665, idProduct=5161, bcdDevi ce= 0.02
[955260.933346] usb 1-1.4.4: New USB device strings: Mfr=3, Product=1, SerialNumber=0
[955260.953879] hid-generic 0003:0665:5161.0001: hiddev96,hidraw0: USB HID v1.11 Device [ HID 0665:5161] on usb-3f980000.usb-1.4.4/input0
--------------- Impianto fotovoltaico Off-Grid 3 kWp 10 moduli 300 W SUNERG inverter Genius 50 - fw 32.40 8 batterie 200 Ah 12 V
| | | | emuland
| Inviato il: 11/07/2020 15:14:13
|
Lo script vi gira? Avete fatto modifiche?
--------------- 4A per mmq per Legge Rane Fritte, cavallette, bagarozzi e cotillon! Venite fuori alla festa!
| | | | eliafino
| Inviato il: 11/07/2020 15:20:25
|
CITAZIONE (emuland, 11/07/2020 12:53:56 )
Su win devo capire come mai non mi vada il modulo per leggere da usb...ne ho provati diversi ma non carica mai tutto il pyusb quindi non riescono leggere la periferica.
Se ti può essere utile la porta USB usa il protocollo 'cypress'
--------------- Impianto Fotovoltaico "eliafino" in Tempo Reale. http://www.eliafino.it:3000/d/solare/impianto-fotovoltaico-eliafino
| | | | eliafino
| Inviato il: 12/07/2020 17:43:39
|
CITAZIONE (emuland, 11/07/2020 15:20:25 )
Su win devo capire come mai non mi vada il modulo per leggere da usb...ne ho provati diversi ma non carica mai tutto il pyusb quindi non riescono leggere la periferica.
Trovato, leggi qui
--------------- Impianto Fotovoltaico "eliafino" in Tempo Reale. http://www.eliafino.it:3000/d/solare/impianto-fotovoltaico-eliafino
| | | | emuland
| Inviato il: 12/07/2020 21:37:13
|
Dove trattano win?
Vedo tanti linux
--------------- 4A per mmq per Legge Rane Fritte, cavallette, bagarozzi e cotillon! Venite fuori alla festa!
| | | | eliafino
| Inviato il: 12/07/2020 22:43:15
|
CITAZIONE
If you want cross-platform however (eg. Windows/*BSD/Mac/Linux/etc.), it is worth looking into HIDApi. It is a C library but both Python and Ruby using FFI makes it really easy to use. Or just use C++
CITAZIONE
You can also use https://github.com/trezor/cython-hidapi for cross platform USB.
--------------- Impianto Fotovoltaico "eliafino" in Tempo Reale. http://www.eliafino.it:3000/d/solare/impianto-fotovoltaico-eliafino
| | | | emuland
| Inviato il: 13/07/2020 07:26:37
|
CITAZIONE (eliafino, 12/07/2020 22:43:15 )
CITAZIONEIf you want cross-platform however (eg. Windows/*BSD/Mac/Linux/etc.), it is worth looking into HIDApi. It is a C library but both Python and Ruby using FFI makes it really easy to use. Or just use C++
CITAZIONEYou can also use https://github.com/trezor/cython-hidapi for cross platform USB.
butterò un paio di occhi
forse ho trovato un altro modo.
vediamo se al rientro collegando usb ottengo qualcosa
Modificato da emuland - 13/07/2020, 08:31:43
--------------- 4A per mmq per Legge Rane Fritte, cavallette, bagarozzi e cotillon! Venite fuori alla festa!
| | | | maxsemp
| Inviato il: 13/07/2020 17:40:22
|
CITAZIONE (emuland, 11/07/2020 15:14:13 )
Lo script vi gira? Avete fatto modifiche?
A me il tuo script non gira. Ho provato anche questo sotto, ma neanche questo gira. Infatti mi da un sacco di errori.
#!/usr/bin/python
# -*- coding: utf-8 -*-
import sys
import crcmod
import time
comando = 'QPIGS'
xmodem_crc_func = crcmod.mkCrcFun(0x11021, rev=False, initCrc=0x0000, xorOut=0x0000)
def calc_crc(comando):
global crc
crc = hex(xmodem_crc_func(comando))
return crc
# calcular crc
comando = raw_input("Enter command (qflag, qid, qmod, qpi, qpigs): ")
comando = comando.upper()
if comando == 'QPIGS':
nbytes = 110
elif comando == 'QID':
nbytes = 18
elif comando == 'QFLAG':
nbytes = 15
elif comando == 'QPI':
nbytes = 8
elif comando == 'QMOD':
nbytes = 5
else:
print ('Command not found')
sys.exit(0)
calc_crc(comando)
print('Command='), comando
print('CRC='),crc
crc1=crc[0:4]
crc2=crc[0:2]+crc[4:6]
crc1=int(crc1, base=16)
crc2=int(crc2, base=16)
fd = open('/dev/hidraw0', 'r+')
fd.write(comando+chr(crc1)+chr(crc2)+'\r')
r = fd.read(nbytes).encode('string-escape')
s = r.split("")
print (s)
i = s[0][1:].split(" ")
print (i)
fd.close()
--------------- Impianto fotovoltaico Off-Grid 3 kWp 10 moduli 300 W SUNERG inverter Genius 50 - fw 32.40 8 batterie 200 Ah 12 V
| | | | emuland
| Inviato il: 13/07/2020 18:10:17
|
CITAZIONE (maxsemp, 13/07/2020 17:40:22 )
A me il tuo script non gira. Ho provato anche questo sotto, ma neanche questo gira. Infatti mi da un sacco di errori.
versione python?
che errore ti da?
senza almeno questi dati è difficile capire l'errore.
--------------- 4A per mmq per Legge Rane Fritte, cavallette, bagarozzi e cotillon! Venite fuori alla festa!
| | | | eliafino
| Inviato il: 13/07/2020 18:11:17
|
CITAZIONE (maxsemp, 13/07/2020 17:40:22 )
A me il tuo script non gira. Ho provato anche questo sotto, ma neanche questo gira. Infatti mi da un sacco di errori.
Ciao, forse anche tu hai un inverter con protocollo P16. Hai porta USB? Hai Linux?
--------------- Impianto Fotovoltaico "eliafino" in Tempo Reale. http://www.eliafino.it:3000/d/solare/impianto-fotovoltaico-eliafino
| |
| | |
|
Versione Mobile!
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|