diff --git a/bootloaders/zero/board_driver_i2c.c b/bootloaders/zero/board_driver_i2c.c
index f706db9424d49f48499a9b2ea2cbe512b2c7f0d6..d58d2b65ca27e4207e9f2c203eacff8fbba08774 100644
--- a/bootloaders/zero/board_driver_i2c.c
+++ b/bootloaders/zero/board_driver_i2c.c
@@ -613,11 +613,22 @@ bool setChargeVoltage(uint16_t voltage) {
     return 1; // value was written successfully
 }
 
+bool disableCharge()
+{
+  uint8_t DATA = readRegister(POWERON_CONFIG_REGISTER);
+  uint8_t mask = DATA & 0b11001111;
+
+  writeRegister(POWERON_CONFIG_REGISTER, mask);
+
+  return 1;
+}
+
 void apply_pmic_newdefaults()
 {
   disableWatchdog();
 
   //disableDPDM();
+  disableCharge();
   setInputVoltageLimit(4360); // default
   setInputCurrentLimit(900);     // 900mA
   setChargeCurrent(0,0,0,0,0,0); // 512mA