JBD BMS - po 2 letech problémová komunikace BT/UART/RS-485

Home Assistant, Arduino, SDS, Raspberry, Linux, vzdálený dohled, automatizace, měření, opensource, closedsource, hotová řešení, DIY, stavebnice, komponenty, software, postupy, návody, schémata, rady, zkušenosti ...
zmi
Příspěvky: 9
Registrován: pát bře 02, 2018 7:47 pm

JBD BMS - po 2 letech problémová komunikace BT/UART/RS-485

Příspěvek od zmi »

Ahoj, mám JBD BMS 50A (mivvy) za Epever MPPT měničem s 300Wp panelem cca 2 roky a vše jelo. Nyní jsem si všiml při přidání druhého panelu, že BT komunikace začala značně haprovat (v logu vidím, že již minimálně v dubnu posílala BMS nesmysly). Myslel jsem si, že je zarušené BT od Wifi, nakonec jsem zjistil, že při odpojení panelu či vypnutí zátěže jede komunikace z BMS zcela bez problému. Chtěl jsem se tedy optat nemáte/neměl jste někdo podobný problém?
Díky za jakoukoliv radu.
(snad jsem to dal do vhodného tématu)
FíraD
Příspěvky: 171
Registrován: pon dub 16, 2018 7:46 pm

Re: JBD BMS - po 2 letech problémová komunikace BT/UART/RS-485

Příspěvek od FíraD »

Taky jsem s tím začal mít problémy.
Už tak dva měsíce. Mám ty bms dvě, jedna je v elektrárně a druhá v elektro skútru. Vysledoval jsem že pokud se baterie nabíjí, komunikace nefunguje. Nevím čím to je, možná je problém v aplikaci. Kolegovi jsem tuto bms dál do elektrokoloběžky a problém s tím má taky. Existuje novější verze aplikace, mě ale moc nefungovala, proto používám starší. K tomu vyzkoušet tu druhou aplikaci jsem se ještě nedokopal.
zmi
Příspěvky: 9
Registrován: pát bře 02, 2018 7:47 pm

Re: JBD BMS - po 2 letech problémová komunikace BT/UART/RS-485

Příspěvek od zmi »

Zkoušel jsem novou aplikaci xiaoxiang-3.2.042 i starší xiaoxiang_3.1.1026. Taky jsem zkoušel přes USB-UART převodník komunikovat z JBD Tools 4.3 z Tablet PC (žádné spojení se zemí) a v momentě, kdy zapnu na Epever zátěž se komunikace zadrhne - vidím to na LEDkách na tom převodníku. Takže to vypadá, že chyba bude v BMS, samozřejmě těsně po záruce :-(.
zmi
Příspěvky: 9
Registrován: pát bře 02, 2018 7:47 pm

[SOLVED] Re: JBD BMS - po 2 letech problémová komunikace BT/UART/RS-485

Příspěvek od zmi »

Záhada VYŘEŠENA-jde o nastavení BMS (JBD-SP10S020-L8S-50A-B-U), pravděpodobně o dobu vyhodnocování - "Delay", změnil jsem hodnotu z 2s na 5s (u všech parametrů skrze JBD tools) a BMS komunikuje bez výpadku, tím jsem hnul při přidání panelu. BMS řídí STM8S207C8T6 (8bit STM8 24MHz) a holt to asi nestíhá, když se příliš "utáhnou" podmínky.
BTW1 což už se mi kdysi v práci taky stalo, že jsem odstavil měřák tím, že jsem po něm chtěl data příliš rychle, ale ten aspoň zahlásil CPU errror3 a člověk věděl, že je něco špatně. Teď samozřejmě přemýšlím nad tím, jakou hodnotu delay tedy dát, aby BMS byla schopna komunikovat, ale hlavně dělat svoji hlavní funkci...
BTW2 Zatím jsem se na BMS nepřipojoval pomocí aplikace xiaoxiang.
BTW3 Asi to úplně nevysvětluje kom. chyby v logu, např.:

Kód: Vybrat vše

  File "/usr/lib/python3.9/asyncio/events.py", line 80, in _run
    self._context.run(self._callback, *self._args)
  File "/usr/local/lib/python3.9/dist-packages/serial_asyncio/__init__.py", line 120, in _read_ready
    self._protocol.data_received(data)
  File "/usr/share/bms/./bms-main/jbdbms-8-mqtt-2temps-serial.py", line 179, in data_received
    cellinfo1(data)
  File "/usr/share/bms/./bms-main/jbdbms-8-mqtt-2temps-serial.py", line 38, in cellinfo1
    volts, amps, remain, capacity, cycles, mdate, balance1, balance2 = struct.unpack_from('>HhHHHHHH', infodata, i)
struct.error: unpack_from requires a buffer of at least 20 bytes for unpacking 16 bytes at offset 4 (actual buffer size is 2)
Income data: b'\x00\x1b\n,\xff\\\rE\x0e\xa6\x00\xe2,\x9b\x00\x00\x00\x00\x00\x00([\x03\x08\x02\x0b\xad\x0b\xad'
Income data: b'\xf9\xa5w'
Income data: b'\xdd\x04\x00\x10\x0c\xb9\x0c\xf7\x0c\xa5\x0c\xa5\x0c\x97\x0c\xf5\x0c\x8b\x0c\xa1\xf9\xdew'
Income data: b'\xdd\x03\x00\x1b\n,\xff_\rD\x0e\xa6\x00\xe2,\x9b\x00\x00\x00\x00\x00\x00([\x03\x08\x02'
Income data: b'\x0b\xad\x0b\xad\xf9\xa3w'
Income data: b'\xdd\x04\x00'
Exception in callback SerialTransport._read_ready()
handle: <Handle SerialTransport._read_ready()>
Traceback (most recent call last):
  File "/usr/lib/python3.9/asyncio/events.py", line 80, in _run
    self._context.run(self._callback, *self._args)
  File "/usr/local/lib/python3.9/dist-packages/serial_asyncio/__init__.py", line 120, in _read_ready
    self._protocol.data_received(data)
  File "/usr/share/bms/./bms-main/jbdbms-8-mqtt-2temps-serial.py", line 177, in data_received
    cellvolts1(data)
  File "/usr/share/bms/./bms-main/jbdbms-8-mqtt-2temps-serial.py", line 119, in cellvolts1
    cell1, cell2, cell3, cell4, cell5, cell6, cell7, cell8 = struct.unpack_from('>HHHHHHHH', celldata, i)
struct.error: unpack_from requires a buffer of at least 20 bytes for unpacking 16 bytes at offset 4 (actual buffer size is 3)
Obrázek

  • Podobná témata
    Odpovědi
    Zobrazení
    Poslední příspěvek