iam using the newest software on esp32 so 2-09-21. the controller keeps rebooting so i hooked it up to arduino to see the output and this is what i got, can u help me ? i dont know what to do. i reflashed all the 4.2 modules with the controler. when it does boot up i get all the modules to display and no fault messages in the web interface.
with the older firmware it worked like a charme, with this newest not so much
I was goin to make some small tests with cable length and so on and ended up completely relocating the controller and changing the communication cables and a power supply for the controller.
Initially it was so:
powered with a cell phone charger
located near inverter power cables
communication cable going in the came cable trace with power cable
communication cable 2 twisted pairs in the same cable around 2,5m from controller to the battery compartment and there 1,5 m on the tx side and 15cm on rx side
After relocation:
powered with a dc-dc convertor
installed way further from power cables
communication cables traced separately from power cables
tx and rx cables a separate twisted pairs 1,5m and 30 cm respectively
Almost one hour from turning it back on and no errors so far. Previously they were appearing every 5-10 minutes.
this is the output of serial debug.
i had influx running all night with the server running and no problems. this morning i shut down the server and the controller started it`s reboots again until it got stuck. i am happy i know the problem now. i hope u can find the solution.
Rebooting...
ets Jun 8 2016 00:22:57
rst:0xc (SW_CPU_RESET),boot:0x12 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:2
load:0x3fff0018,len:4
load:0x3fff001c,len:1044
load:0x40078000,len:10124
load:0x40080400,len:5828
entry 0x400806a8
_ __
_| o |_) |\/| (_
(_| | \/ |_) | | __)
/
[I][main.cpp:3286] setup(): CONTROLLER - ver:e2d28321e674484243ec1320f295843dbb2d07dc compiled 2021-09-02T11:28:48.112Z
[I][main.cpp:3291] setup(): ESP32 Chip model = 1, Rev 1, Cores=2, Features=50
[I][HAL_ESP32.cpp:232] ConfigureI2C(): Configure I2C
[I][HAL_ESP32.cpp:291] ConfigureI2C(): Found TCA9534A
[I][HAL_ESP32.cpp:321] ConfigureI2C(): Found TCA6408
[D][HAL_ESP32.h:288] TouchScreenUpdate(): Touch = touch=0 pressure=128 x=0 y=3244
[I][main.cpp:3306] setup(): TFT screen is INSTALLED
[I][main.cpp:934] SetControllerState(): ** Controller changed state from Unknown to PowerUp **
[I][main.cpp:3328] setup(): LITTLEFS mounted, totalBytes=589824, usedBytes=81920
[I][main.cpp:241] mountSDCard(): Mounting SD card
[W][sd_diskio.cpp:169] sdCommand(): no token received
[W][sd_diskio.cpp:169] sdCommand(): no token received
[W][sd_diskio.cpp:169] sdCommand(): no token received
[E][sd_diskio.cpp:194] sdCommand(): Card Failed! cmd: 0x00
[W][sd_diskio.cpp:505] ff_sd_initialize(): GO_IDLE_STATE failed
[E][sd_diskio.cpp:775] sdcard_mount(): f_mount failed: (3) The physical drive cannot work
[W][sd_diskio.cpp:169] sdCommand(): no token received
[W][sd_diskio.cpp:169] sdCommand(): no token received
[W][sd_diskio.cpp:169] sdCommand(): no token received
[E][sd_diskio.cpp:194] sdCommand(): Card Failed! cmd: 0x00
[E][main.cpp:260] mountSDCard(): Card Mount Failed
[I][HAL_ESP32.cpp:140] ConfigureCAN(): CAN driver installed. Filter=1621098496 Mask=6291455
[I][HAL_ESP32.cpp:150] ConfigureCAN(): CAN driver started
[D][settings.cpp:20] ReadConfig(): ReadConfig diybms
[D][settings.cpp:42] ReadConfig(): checksum verified
[I][main.cpp:3352] setup():
[D][main.cpp:200] SetupRS485(): Setup RS485
[D][main.cpp:187] ConfigureRS485(): Configure RS485
[D][HAL_ESP32.cpp:86] SetOutputState(): SetOutputState 0=153
[D][HAL_ESP32.cpp:86] SetOutputState(): SetOutputState 1=153
[D][HAL_ESP32.cpp:86] SetOutputState(): SetOutputState 2=153
[D][HAL_ESP32.cpp:86] SetOutputState(): SetOutputState 3=153
Press SPACE BAR to enter terminal based configuration................skipped
[D][settings.cpp:20] ReadConfig(): ReadConfig diybmswifi
[D][settings.cpp:42] ReadConfig(): checksum verified
[I][main.cpp:934] SetControllerState(): ** Controller changed state from PowerUp to Stabilizing **
[D][tft.cpp:62] TFTScreenTouchInterrupt(): Touch
[D][main.cpp:757] tca6408_isr_task(): tca6408_isr
[I][tft.cpp:388] tftwakeup_task(): Wake up screen
[D][WiFiGeneric.cpp:374] _eventCallback(): Event: 0 - WIFI_READY
[D][WiFiGeneric.cpp:374] _eventCallback(): Event: 2 - STA_START
[I][main.cpp:1422] connectToWifi(): Hostname: DIYBMS-001704B9, current state 255
[D][WiFiGeneric.cpp:374] _eventCallback(): Event: 4 - STA_CONNECTED
[I][Rules.cpp:142] SetError(): Set error 4
[D][WiFiGeneric.cpp:374] _eventCallback(): Event: 7 - STA_GOT_IP
[D][WiFiGeneric.cpp:419] _eventCallback(): STA IP: 192.168.178.76, MASK: 255.255.255.0, GW: 192.168.178.1
[I][main.cpp:1511] onWifiConnect(): Wi-Fi status=3
[I][main.cpp:1513] onWifiConnect(): Request NTP from time.google.com
[I][DIYBMSServer.cpp:2595] StartServer(): Start Web Server complete
[I][ArduinoOTA.cpp:141] begin(): OTA server at: DIYBMS-001704B9.local:3232
[I][main.cpp:1547] onWifiConnect(): mDNS responder started
[I][main.cpp:1552] onWifiConnect(): You can access DIYBMS interface at http://DIYBMS-001704B9.local or http://192.168.178.76
[I][tft.cpp:388] tftwakeup_task(): Wake up screen
[I][Rules.cpp:142] SetError(): Set error 4
[W][AsyncTCP.cpp:969] _poll(): rx timeout 4
[I][main.cpp:934] SetControllerState(): ** Controller changed state from Stabilizing to Running **
[I][main.cpp:1459] influxdb_task(): Influx task
[D][influxdb.cpp:130] influx_task_action(): Create new client
[I][influxdb.cpp:167] influx_task_action(): Influx host 192.168.178.108 port 8086
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[I][main.cpp:1459] influxdb_task(): Influx task
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[E][influxdb.cpp:58] influxdb_onError(): Influx connect error
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[E][AsyncTCP.cpp:953] _poll(): 0x3ffed4c0 != 0x4cb2a8c0
[I][main.cpp:1459] influxdb_task(): Influx task
[D][influxdb.cpp:130] influx_task_action(): Create new client
[I][influxdb.cpp:167] influx_task_action(): Influx host 192.168.178.108 port 8086
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[E][influxdb.cpp:58] influxdb_onError(): Influx connect error
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[I][main.cpp:1459] influxdb_task(): Influx task
[D][influxdb.cpp:130] influx_task_action(): Create new client
[I][influxdb.cpp:167] influx_task_action(): Influx host 192.168.178.108 port 8086
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[E][AsyncTCP.cpp:953] _poll(): 0x3ffed3ec != 0x4cb2a8c0
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[E][AsyncTCP.cpp:953] _poll(): 0x3ffed3ec != 0x4cb2a8c0
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[E][AsyncTCP.cpp:953] _poll(): 0x3ffed3ec != 0x4cb2a8c0
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[E][AsyncTCP.cpp:953] _poll(): 0x3ffed3ec != 0x4cb2a8c0
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[E][AsyncTCP.cpp:953] _poll(): 0x3ffed3ec != 0x4cb2a8c0
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[E][AsyncTCP.cpp:953] _poll(): 0x3ffed3ec != 0x4cb2a8c0
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[E][AsyncTCP.cpp:953] _poll(): 0x3ffed3ec != 0x4cb2a8c0
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[E][AsyncTCP.cpp:953] _poll(): 0x3ffed3ec != 0x4cb2a8c0
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[E][AsyncTCP.cpp:953] _poll(): 0x3ffed3ec != 0x4cb2a8c0
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[E][AsyncTCP.cpp:953] _poll(): 0x3ffed3ec != 0x4cb2a8c0
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[E][AsyncTCP.cpp:953] _poll(): 0x3ffed3ec != 0x4cb2a8c0
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[E][AsyncTCP.cpp:953] _poll(): 0x3ffed3ec != 0x4cb2a8c0
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[E][AsyncTCP.cpp:953] _poll(): 0x3ffed3ec != 0x4cb2a8c0
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[E][AsyncTCP.cpp:953] _poll(): 0x3ffed3ec != 0x4cb2a8c0
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[E][AsyncTCP.cpp:953] _poll(): 0x3ffed3ec != 0x4cb2a8c0
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
[E][AsyncTCP.cpp:953] _poll(): 0x3ffed3ec != 0x4cb2a8c0
[W][AsyncTCP.cpp:949] _poll(): pcb is NULL
Guru Meditation Error: Core 1 panic'ed (InstrFetchProhibited). Exception was unhandled.
Core 1 register dump:
PC : 0x00001670 PS : 0x00060430 A0 : 0x800e630e A1 : 0x3ffe9eb0
A2 : 0x3ffec1a0 A3 : 0x000000f3 A4 : 0x00000001 A5 : 0x00000000
A6 : 0x3ffe5f10 A7 : 0x00060223 A8 : 0x800e605f A9 : 0x3ffe9e90
A10 : 0x3ffec1e4 A11 : 0x3ffe9eb8 A12 : 0x3ffe9ebc A13 : 0x3ffe9eb7
A14 : 0x00060420 A15 : 0x00000000 SAR : 0x00000004 EXCCAUSE: 0x00000014
EXCVADDR: 0x00001670 LBEG : 0x4000c2e0 LEND : 0x4000c2f6 LCOUNT : 0xffffffff
ELF file SHA256: 0000000000000000
Backtrace: 0x00001670:0x3ffe9eb0 0x400e630b:0x3ffe9ee0 0x40092cf6:0x3ffe9f10
Rebooting...
ets Jun 8 2016 00:22:57
rst:0xc (SW_CPU_RESET),boot:0x12 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:2
load:0x3fff0018,len:4
load:0x3fff001c,len:1044
load:0x40078000,len:10124
load:0x40080400,len:5828
entry 0x400806a8
Dear Stuart, I have a question. If you see in the DIYBMS data I have cell 5 of the second group, with a much lower voltage, however the data I receive from Influx is not the same. What could be the cause of this difference in values?
Related to this, I have seen that in influs data arrives from cells 1_0 to 1_15 but they are identical to the values 0_0 to 0_15 and on the other hand the fields 0_16 to 0_31 appear but without data
unfortunately it is not so. I don’t know what I could do
ah, I understand why the records 0_16 to 0_31 were generated and they have no data. When I was setting up for a while I had 32S 1P instead of 16S2P, this has generated the fields 0_16 to 0_31 with no data. What I am going to try is to update to the new version of the driver. Although since the influx I have is 1.8 I imagine that I have to update it too.
By the way Stuart, I have managed with the ventilation of my plate to place 16 modules and ventilate them to be burned for more than 5 continuous minutes without exceeding 61º
I have my OPENVPN Server where the remote systems (Victron Cerbo / Raspberry …) are connecting to. On this sites, a diybms is connected to the same network or even to the local wifi hotspot.
Then I make a “ssh -L 1080:ip.of.DIYBMS:80 remotehost” and tunnel my traffic to my browser. Here things are getting nasty.
The response is the correct dark theme of the diybms managing screen, but no data.
only the blue ring running in circles.
I tried different options on SSH, but the results are not getting better.
Redid all bms comunication wiring, rerouted all the cables, shortened cable 3 from 7m to 4m and cable 2 from 5m to 4m, removed all common grounds to each of the 3 packs, using now a different superseal conector for rx and tx, grounded all long comunication cables to the RX of the module that recieves the signal and now it works no voltage fluctuation on any cell while charging at 20A.