Closed JurgenDaniel closed 9 months ago
Here is a screenshot of the 100 degree battery. . . little to high.
This looks like a int16 register being seen as uint16 (or the other way round as its confusing ;) ).
So temps of -1.5 and -1.3 are seen as 6552.1 and 6552.3 when all are divided by 10
This tool allows you to see conversions
https://cryptii.com/pipes/integer-converter as seen in the screenshot
Thanks for your quick response! It helped me a lot, i have looked into the code a little bit but couldn't find the self.translate function. Today its alittle above 0 degrees where i live and right now it works fine. so it has probably something to do with the freezing temperature. Does anyone else have 100 degree battery temps in their history when its freezing?
Nearest I get to programming is Node-red but within Node-red I have to do a lot of int32 to int16 plus int16 to uint16 conversions inside nodes feeding modbus servers so I recognised the numbers. There will be code that is misreading 16623 and 16621 as above 100 instead of them actually being negative numbers. As modbus registers cannot contain either negative numbers or decimal points you have to know what type of number they are and apply a signed to unsigned conversion and apply a multiplier ie 01 /10 becomes 0.1.
What model and hardware version is your BMS?
I have a JK BMS, JK-B2A8S20P, connected via Bluetooth and also getting 100°C for the temps when it's below zero.
Hardware version JKBMS 11.XW 8 cells (20231009)
Serial Battery version 1.0.20231126dev
Also tried Serial Battery version 1.0.20240112dev
- same result
You can see the temp dropping to zero and then jump to 100 as it goes negative.
It's currently reporting ~50°C as 1 temp sensor is 3°C and the other is -0.5°C, but it's doing the average of 3 and 100.
The issue should be fixed with the nightly
of the dev
branch from my repo. Could you please try?
wget -O /tmp/install.sh https://raw.githubusercontent.com/Louisvdw/dbus-serialbattery/master/etc/dbus-serialbattery/install.sh
bash /tmp/install.sh
Select nightly build
and then dev (mr-manuel's repo)
.
Thanks, I'll give it a try tonight. The air temps have gone up a lot since but I'll stick one of the sensors in some frozen peas 😁
Select
nightly build
and thendev (mr-manuel's repo)
.
Hiya, sorry for the delay.
The air temp is currently 8°C and the both battery probes read 8°C. I put one of the probes in the frozen peas and it slowly crept down... 6, 4, 3, 2, 1... then jumped to -20°C. It didn't budge on the -20. Average battery temp was showing -6.
Should the -20 have been -2?
I found the error. Please install the latest nightly and report back.
Describe the problem
Hi, just installed a JK bms and connect it through bluetooth to my cerbo gx. Unfortunately i have a problem with the battery temp, the cerbo shows a temp of 100 degrees, while the Jk bms shows the correct temp in the Jk app. (see screenshot below) In the log i see that the temperature is 6552.1 & 6552.3 (The screenshot and log is not from the same time and temperature.) Is this a bug that can be fixed by software? I have already tried somethings, like using different versions and also de nightly dev. Could someone help me?
Screenshot JK BMS (Please note that the temps are below 0)
Driver version
1.1.20231224dev
Venus OS device type
Cerbo GX
Venus OS version
v3.13
BMS type
JKBMS / Heltec BMS
Cell count
15
Battery count
1
Connection type
Bluetooth
Config file
Relevant log output
Any other information that may be helpful
No response