Undervoltage protection

markor

Member
I was reading last night the schematics, wikis, etc and there seems to be C12 Undervoltage protection 22uF / 63V, some TSS0230LU diodes d12-d15 and JP8 for always on / automatic, and actually bunch of other components. And you can set "off" with pin 4 which goes tho JP8/automatic. I have JP8 set on automatic.

But as I just wrote in sensors area gy-801 chip with MMC5883MA compass is somehow able to freeze the I2C bus completely. Everything else like bluetooth etc seems to work ok even when it's frozen. Can connect to due also with usb. Before I still didn't realize the MMC5883MA can freeze the bus in just 15minutes, I left the robot mowing, but when I came out to check it hours later it was totally unresposive. I took it inside, put it apart and found out that the problem is battery with less than 15 volts.

How is this possible. Is the undervoltage protection not hardware based? And if the software puts the robot "off" through pin 4, does it actually disconnect the battery out of everything else (no power to even one component or periperal on the board). The mower would not start charching the battery anymore even if I changed the software not to shutdown robot if under 21volts. I had to make temporary connections to put the batteries directly on the charger. Luckily the batteries recovered pretty well and seem to be working fine. I think the undervoltage protection (just like the official emergency stop connect) are not cutting the power off totally and there can be still components eating the the batteries out.

Why is this and could I try some relay on pin 4 or anywhere else that would actually physically totally disconnect the battery, if voltage drops below the set threshold (20+v or something)?
 
Normaly the soft cut all the PCB power if bat is below or after idle.
Need a correct config into battery setting.
But if the Due freeze ,the soft never check battery monitor.
It's why the watchdog is Something good in this case.
It's Strange that your battery pack is also not undervoltage protected.
 
I have "watchdog" systems in place, but it could obviously not recover from loosing the I2C bus. Anyways I have disabled the MMC5883MA and everything is running normally. I have no idea how it could drain the batteries so fast so low, just like it had ignored all the code for "off" when under the 21v or whatever the limit is.

And it's not weird for not having undervoltage protection in the battery when u buy them as cheap as possible and say that the thing you are building has the undervoltage protection in place. :) Now that I know(??) there actually is no hardware undervoltage protection, I may have to get the batteries chipped or find a way to put in a real undervoltage protection. It's too bad it is very much advertized as good thing in PCB 1.3.

Anyways, this must have been a very very special case. I just always assumed it was on hardware level, not dependant on the software.. Or that the software at least would power everything off when needed.
 
Now that I think of it I have always also had the trouble with readSensor(SEN_BAT_VOLTAGE); and readSensor(SEN_CHG_VOLTAGE); having the same values. My robot fails to autostart charging about 70% of time, because as soon as it enter the charging station the battery voltage will equal to charger voltage. I really don't want it to ever start charging if the battery is over 28V or something, to prolong the life on those lith ions. Can battery voltage = charger voltage be connected to undervoltage protection. Current "leaking" through somewhere it shouldn't. Or is it just a design issue. (Very easy to circumwent with few lines of code though to get it charging everytime, done that already)..
 
Oben