Bloated Battery in Tablet - Fire Hazard

The device reduces the current it’s drawing from the charger as it approaches 100%. The voltage never changes at all, so this isn’t something I’d worry about. The danger with cheap chargers is less that they’ll harm your battery and more that they’ll be a fire hazard themselves (due to bad quality control).

Hi,

I had this with my previous tablet as well - as it was constantly charged.

After I bought a new one, I changed to HABPanel - there you nicely have a property you can use to read the charging level of your table.
I used this to create a rule that discharges the table to 10% and then only loads it again to 95% - using a smart-plug.

With this so far it all looks good :slight_smile:

1 Like

@Schrott.Micha For maximum lifespan charging should stop at 80% and start at 40% or 50%. Deep discharging and full charging reduces the lifespan of lithium-ion batteries. The sheer number of charging cycles is not relevant but the equivalent of full charges.

Hello @Larsen,

sorry for the late response - I was busy - and thanks for the hint.

I changed my “logic” - and hope for another 5 years of battery lifetime :slight_smile:.

For anyone who is interrested:

BATTERY_MAX_CHARGE = 80
BATTERY_MIN_CHARGE = 40


@rule("HABPanel: Charge state",
      description="start or stop charging of the HABPanel",
      tags=["itemchange", "habpanel"])
@when("Item HABPanel_Battery_Level changed")
@when("Time cron 15 2/5 * 1/1 * ? *")
def check_charging_state(event):
    """check if HABPanel needs charging"""

    if event:
        check_charging_state.log.info(
            "rule fired because of %s", event.itemName)

    batteryLevel = 0
    chargingState = False

    if items["HABPanel_Battery_Level"] != "NULL":
        batteryLevel = items["HABPanel_Battery_Level"]
    if items["HABPanelLadung_Betrieb"] != "NULL":
        chargingState = items["HABPanelLadung_Betrieb"] == "ON"

    check_charging_state.log.debug(
        "HABPanel_Battery_Level = %s", batteryLevel)

    check_charging_state.log.debug(
        "HABPanelLadung_Betrieb = %s", chargingState)

    if ((batteryLevel < BATTERY_MIN_CHARGE) and not chargingState):
        events.sendCommand("HABPanelLadung_Betrieb", "ON")
        check_charging_state.log.info("start charging")
    elif ((batteryLevel > BATTERY_MAX_CHARGE) and chargingState):
        events.sendCommand("HABPanelLadung_Betrieb", "OFF")
        check_charging_state.log.info("stop charging")
    else:
        check_charging_state.log.info(
            "No change: ChargeState=" + str(chargingState) + " ChargeLevel=" + str(batteryLevel))

This topic was automatically closed 41 days after the last reply. New replies are no longer allowed.