Skip to content
X1202 not charging batteries | Geekworm's Forum

X1202 not charging batteries


  • Hi,

    My X1202 stopped charging the batteries. The battery indicator is always 4 bars on the LED. I checked the batteries invidually using a multimeter and they all have 4+ V, however battery volatage is always very low. Here is the output of vcgencmd pmic_read_adc
     3V7_WL_SW_A current(0)=0.10540040A
       3V3_SYS_A current(1)=0.06636324A
       1V8_SYS_A current(2)=0.18249890A
      DDR_VDD2_A current(3)=0.01073523A
      DDR_VDDQ_A current(4)=0.00000000A
       1V1_SYS_A current(5)=0.83442020A
        0V8_SW_A current(6)=0.34059960A
      VDD_CORE_A current(7)=1.35736000A
       3V3_DAC_A current(17)=0.00018315A
       3V3_ADC_A current(18)=0.00036630A
       0V8_AON_A current(16)=0.00439560A
          HDMI_A current(22)=0.01978020A
     3V7_WL_SW_V volt(8)=3.61347600V
       3V3_SYS_V volt(9)=3.31652900V
       1V8_SYS_V volt(10)=1.82124300V
      DDR_VDD2_V volt(11)=1.10622600V
      DDR_VDDQ_V volt(12)=0.60402870V
       1V1_SYS_V volt(13)=1.10036500V
        0V8_SW_V volt(14)=0.79706880V
      VDD_CORE_V volt(15)=0.71936430V
       3V3_DAC_V volt(20)=3.30127900V
       3V3_ADC_V volt(21)=3.29853100V
       0V8_AON_V volt(19)=0.79765500V
          HDMI_V volt(23)=4.99150000V
         EXT5V_V volt(24)=4.99820000V
          BATT_V volt(25)=0.00341880V

    When I try to read the status of the battery using python I get this error -"OSError: [Errno 121] Remote I/O error". Any thoughts on how I can debug this?



  • This is very likely a hardware issue in the battery path, not a software problem.

    Key signs:

    • BATT_V = 0.003V → the PMIC does not see the battery at all, even though each cell measures ~4V

    • Battery LED always shows 4 bars → stuck / false indication

    • Python error OSError: [Errno 121] Remote I/O error → the battery gauge IC is not responding on I2C

    Quick debugging steps:

    1. Check the battery connector, cable, and socket (very common failure point).

    2. Inspect the battery protection circuit / MOSFET / fuse on the X1202 board.

    3. Test with a known-good battery pack (the BMS may have tripped).

    4. If unchanged, the charger or fuel-gauge IC is likely damaged → board replacement needed.

    If the cells are OK but BATT_V ≈ 0V, it almost certainly indicates a hardware fault in the battery circuitry.


    Edited by lovemoney a day ago


  • That BATT_V reading of 0.003V definitely looks wrong if each cell is measuring over 4V individually. Since the LED is stuck at 4 bars and Python throws a Remote I/O error, it sounds like the battery gauge IC or the I2C communication to it may have failed.

    I would first check the battery connector, ribbon cable, and any solder joints between the battery pack and the board. A loose balance lead or damaged trace could make the PMIC think no battery is connected. You could also run i2cdetect on the relevant bus and see if the battery monitor chip still appears. If it does not, that would explain the I/O error. If wiring looks fine, the battery gauge or charging circuit itself may need replacement.

    Edited by basketball stars a day ago


  • Looks like the system isn’t seeing the battery at all. The near-zero BATT_V and I2C “Remote I/O error” suggest the fuel gauge/PMIC isn’t responding. Try a full power reset, check the battery connector/sense lines, and scan the I2C bus (i2cdetect) to confirm the device block blast is present.


Please login to reply this topic!