I was very excited to rebuild my Voltec with the 30A kit this weekend and I had some ESP8266 chips and wired one up and things actually worked! Mostly, after some debugging of course.
I have my inputs and feeds but I can't figure out the units or scaling for the data:
For current the data is about 3500 for 14 amps shown in the LCD. I could try to scale it myself but it seems like I am missing something obvious.
Temperature I have no idea. I know the chip reads out 10 bit signed with 2 bits of fraction but that doesn't seem to make sense. I haven't seen it go negative and I did get the "over temperature" bug today.
Looks like only Temp1 has real data. Pilot makes sense in amps and doesn't change (unless I change the setting). I see voltage but it was reading -1 but did have data being generated.
Can anyone explain what the data means or share a link to docs? I suppose I could RTFSC but easier to ask on here...
Sounds good. It is difficult to access for new firmware but when the fix is ready I will get that and maybe bring out the connections for updating to make it easier in the future. At the same time I will calibrate with an external amp clamp meter.
It still doesn't explain the difference between the displayed Amps and the data feed Amps unless the displayed one is already calibrated and the feed is "raw"?
My install uses the Voltec case and the LCD is outside of the case and mostly exposed to ambient so I thought it would be more accurate to prevailing conditions. But in this case I can't see it displayed or have an accurate thermometer near for comparison. And the temperature could be hovering close to 0C in the garage and charger so it's hard to tell for sure until it warms up.
The current readings can be calibrated with a external meter and a serial adapter. RAPI commands can be sent to adjust the scale factor and offset to increase the accuracy of both low and higher values.
Temperature is the internal enclosure temperature, not outside air temperature, so it will be warmed by the power supplies, test resistors, charging resistance, etc. It will run about 15C - 30C above ambient while charging.
If you wish to see internal temperature while charging instead of watts added and total Kwh you can modify this line in to source code from 0 to 1:
#define TEMPERATURE_DISPLAY_ALWAYS 1
The firmware to fix the negative temperature is almost ready, I tested a fix by Lincomatic yesterday for the sensor in the RGB LCD. He posted a fix for the other sensor today for the Mono LCD and LED.
I found the discussion on google groups and figured out where the scaling in the feeds was coming from. I removed the volts estimate from the calculation and got a more meaningful result.
I do notice that it seems to about half an amp high compared to what is shown on the LCD. I haven't verified with an external meter but I would like to believe the LCD as it shows a little under my target of 14 amps while the data feed shows about 14.5.
Also after charging and while it is cold in the garage the Volt does whir a little at time to keep the batteries happy. I can see it drawing about 1.5 amps on the data feed but the LCD always shows 0 at this time. Is it rounding the 1.5 down to 0 or not actively updating the display even though it is in "charging" mode?
Temperature still seems to hover a little above 0. It does go down with opening the garage and up a little when charging. I don't see it going below 0 and it has been teens here in NH lately. Maybe the garage is a little warmer and the LCD self heats some? Or is something else going on as the car thermometer shows much colder temperatures when I first start in the morning. I also had to disable temperature check as it was triggering with cold temperatures (presumably -C).
Is there a place I can see the temperature displayed on the LCD? (sorry only had this for a week and not too familiar but I didn't see it when I played with the menus).
The default for power/current is displayed in watts, so it is milliamps x 0.240. you can adjust 0.240 to whatever your voltage is under load.
Temperature is displayed as C. you can convert to F by multiplying by 1.8 then adding 32.