Xperia 10iii suddenly stopped charging while in kernel

REPRODUCIBILITY: 100% once the problem starts, even after a full shutdown.
OS VERSION: 4.4.0.68 (latest at time of writing)
HARDWARE: Xperia 10iii - xqbt52
UI LANGUAGE: English
REGRESSION: No point of comparison (well, it’s the first version running here)

DESCRIPTION:

My Xperia 10iii was hit with the same problem as in this other post and will only charge while running the bootloader, not while running the Sailfish OS Linux Kernel.

PRECONDITIONS:

Note that, it didn’t happen out of the box, it only started happening since last night.
Charger is out of question because it works with multiple other devices, and charging fails with any of the other devices that have worked in the past (see details at end of this post).
Only thing of notice in the past is that the Xperia 10iii specifically seems unable to negotiate USB-PD with the first charger, I don’t if that past “no USB-PD” bug of the charging circuit is linked to current “not charging at all” bug, of it the current bug has happened independently.

STEPS TO REPRODUCE:

  1. Turn phone on
  2. Wait for Linux kernel to boot (either regular Sailfish OS or “play dead” mode)
  3. Plug cable
  4. Pop-up say “Charging…”, status icon shows plugged-in an charging.

EXPECTED RESULT:

Battery should charge.

ACTUAL RESULT:

Battery not charging.
(Reported in both Chargemon and Battery Buddy, confirmed with Watt-meter of Pirl charger)

MODIFICATIONS:

Battery buddy’s background service isn’t running (so it’s not its charging limitation going wrong).
Chargemon self installed (so I can get status directly from the UI, instead of probing /sys/ from the console.
I don’t know which other could be relevant.

ADDITIONAL INFORMATION:

  • I plugged it to the same USB-C charger as usual.
    • which mostly works except that the phone fails to properly negotiate USB-PD 9V over it, same cycling like XA2 over USB QC3
    • that charger’s USB-C PD has worked flawlessly with a Pinecil soldering pen in the past, so it’s definitely not a charger problem (its USB-C PD works with other devices).
    • that charger just before was successfully charging my Pinebook Pro (USB-C 5V ~@2.5 A), so it’s still known good.
  • noticed the “charging” icon, before going to sleep.
  • this morning I worke up and noticed that the battery has dropped to ~50% percent.
    • probing with more advanced tools (e.g.: as self compiled kimoli’s chargemon) shows the phone going from “Discharging” to “Not Charging” instead of “Charging”, and 0amp pulled from the charger.
  • trouble has persisted:
    • despite trying multiple chargers where it has previously worked (car charger, USB port of car onboard computer, Pirl charger), battery has dropped to 30% instead.
    • even trying “play dead mode” (booting in charging only mode) battery doesn’t charge when the “plugged in” animation shows.
    • it survives even a full power down (holding VolUp + Power until 3x vibration)
  • further investigation with the Pirl charger (has a Watts monitor)
    • while booting (during “phone unlocked” message), Smartphone pulls 2.3W (charging 5V ~@450mA)
    • as soon as the Linux kernel boots, power usage goes to 0.
    • further re-plugging, power usage stays at 0.4W (5 <@100mA)
  • Work around of staying in bootloader (e.g.: going to fastboot mode “blue LED” with VolUp + cable) keeps charging at 2.3W

To me, it seems that the kernel driver of the charging circuit has hit some weird corner case / error code.

I’m currently waiting to top up the battery in boot-loader “blue LED” mode, I’ll try investigating further after than.

1 Like

Journal log doesn’t reveal anything critical while plugging the cable in, except for the status switching from “Discharging” to “Not Charging” (confirmed on the Watt meter of the Pirl):

# journalctl --follow
-- Logs begin at Mon 2022-08-08 21:09:21 CEST. --
Aug 08 21:23:39 Xperia10III kernel: binder: 4847:4847 transaction failed 29189/-22, size 32-0 line 3099
Aug 08 21:23:40 Xperia10III kernel: binder: 4847:4847 transaction failed 29189/-22, size 32-0 line 3099
Aug 08 21:23:40 Xperia10III kernel: rpmh_rsc_send_data: 3 callbacks suppressed
Aug 08 21:23:40 Xperia10III kernel: qcom_rpmh DRV:apps_rsc TCS Busy, retrying RPMH message send: addr=0x30010
Aug 08 21:23:41 Xperia10III kernel: binder: 4847:4847 transaction failed 29189/-22, size 32-0 line 3099
Aug 08 21:23:41 Xperia10III kernel: qcom_rpmh DRV:apps_rsc TCS Busy, retrying RPMH message send: addr=0x30010
Aug 08 21:23:42 Xperia10III kernel: qcom_rpmh DRV:apps_rsc TCS Busy, retrying RPMH message send: addr=0x30010
Aug 08 21:23:42 Xperia10III kernel: binder: 4847:4847 transaction failed 29189/-22, size 32-0 line 3099
Aug 08 21:23:43 Xperia10III kernel: binder: 4847:4847 transaction failed 29189/-22, size 32-0 line 3099
Aug 08 21:23:44 Xperia10III kernel: binder: 4847:4847 transaction failed 29189/-22, size 32-0 line 3099
Aug 08 21:23:45 Xperia10III kernel: binder: 4847:4847 transaction failed 29189/-22, size 32-0 line 3099
Aug 08 21:23:45 Xperia10III kernel: qcom_rpmh DRV:apps_rsc TCS Busy, retrying RPMH message send: addr=0x30010
Aug 08 21:23:45 Xperia10III kernel: qcom_rpmh DRV:apps_rsc TCS Busy, retrying RPMH message send: addr=0x30010
Aug 08 21:23:45 Xperia10III kernel: qcom_rpmh DRV:apps_rsc TCS Busy, retrying RPMH message send: addr=0x30010
Aug 08 21:23:45 Xperia10III kernel: qcom_rpmh DRV:apps_rsc TCS Busy, retrying RPMH message send: addr=0x30010
Aug 08 21:23:45 Xperia10III kernel: qcom_rpmh DRV:apps_rsc TCS Busy, retrying RPMH message send: addr=0x30010
Aug 08 21:23:45 Xperia10III kernel: qcom_rpmh DRV:apps_rsc TCS Busy, retrying RPMH message send: addr=0x30010
Aug 08 21:23:45 Xperia10III kernel: qcom_rpmh DRV:apps_rsc TCS Busy, retrying RPMH message send: addr=0x30010
Aug 08 21:23:45 Xperia10III kernel: qcom_rpmh DRV:apps_rsc TCS Busy, retrying RPMH message send: addr=0x30010
Aug 08 21:23:46 Xperia10III kernel: qcom_rpmh DRV:apps_rsc TCS Busy, retrying RPMH message send: addr=0x30010
Aug 08 21:23:46 Xperia10III kernel: qcom_rpmh DRV:apps_rsc TCS Busy, retrying RPMH message send: addr=0x30010
Aug 08 21:23:46 Xperia10III kernel: binder: 4847:4847 transaction failed 29189/-22, size 32-0 line 3099
Aug 08 21:23:47 Xperia10III kernel: sec_ts 1-0048: [sec_input] sec_ts_read_event: STATUS 1d 69 1 0 0 0 0 0
Aug 08 21:23:47 Xperia10III kernel: sec_ts 1-0048: [sec_input] sec_ts_read_event: STATUS 1d 69 0 0 0 0 0 0
Aug 08 21:23:47 Xperia10III kernel: sec_ts 1-0048: [sec_input] sec_ts_read_event: STATUS 1d 69 1 0 0 0 0 0
Aug 08 21:23:47 Xperia10III kernel: sec_ts 1-0048: [sec_input] sec_ts_read_event: STATUS 1d 69 0 0 0 0 0 0
Aug 08 21:23:47 Xperia10III kernel: sec_ts 1-0048: [sec_input] sec_ts_read_event: STATUS 1d 69 1 0 0 0 0 0
Aug 08 21:23:47 Xperia10III kernel: sec_ts 1-0048: [sec_input] sec_ts_read_event: STATUS 1d 69 0 0 0 0 0 0
Aug 08 21:23:47 Xperia10III kernel: pm7250b_charger: default_irq_handler: IRQ: usbin-vashdn
Aug 08 21:23:47 Xperia10III kernel: pm7250b_charger: usbin_uv_irq_handler: IRQ: usbin-uv
Aug 08 21:23:47 Xperia10III kernel: pm7250b_charger: smblib_usb_plugin_locked: IRQ: usbin-plugin attached
Aug 08 21:23:47 Xperia10III kernel: QG-K: get_batt_id_ohm: batt_id_mv=243, batt_id_ohm=15000
Aug 08 21:23:47 Xperia10III healthd: battery l=39 v=3790 t=28.8 h=2 st=4 c=-179748 fc=0 cc=0 chg=
Aug 08 21:23:47 Xperia10III usb_moded[10951]: unknown connection type reported, assuming disconnected
Aug 08 21:23:47 Xperia10III kernel: binder: 4847:4847 transaction failed 29189/-22, size 32-0 line 3099
Aug 08 21:23:47 Xperia10III mce[2269]: modules/battery-udev.c: mcebat_update(): charger_state: off -> on
Aug 08 21:23:47 Xperia10III mce[2269]: tklock.c: tklock_datapipe_uiexception_type_cb(): uiexception_type = none -> notif
Aug 08 21:23:47 Xperia10III mce[2269]: tklock.c: tklock_dbus_notification_beg_cb(): notification begin from name=:1.77 owner=:1.77 pid=7326 uid=100000 gid=996 priv=1 cmd=/usr/bin/lipstick -plugin evdevtouch -plugin evdevmous
Aug 08 21:23:48 Xperia10III mce[2269]: modules/proximity.c: mp_datapipe_set_proximity_sensor_actual(): state: UNDEF -> CLOSED
Aug 08 21:23:48 Xperia10III mce[2269]: modules/proximity.c: mp_datapipe_set_proximity_sensor_actual(): state: CLOSED -> OPEN
Aug 08 21:23:48 Xperia10III kernel: binder: 4847:4847 transaction failed 29189/-22, size 32-0 line 3099
Aug 08 21:23:49 Xperia10III kernel: binder: 4847:4847 transaction failed 29189/-22, size 32-0 line 3099
Aug 08 21:23:50 Xperia10III kernel: [schedu][0x59a87cb6c][19:23:50.079012] wlan: [8934:I:OSIF] scan start scan id 41004
Aug 08 21:23:50 Xperia10III kernel: binder: 4847:4847 transaction failed 29189/-22, size 32-0 line 3099
Aug 08 21:23:50 Xperia10III kernel: rpmh_rsc_send_data: 293 callbacks suppressed
Aug 08 21:23:50 Xperia10III kernel: qcom_rpmh DRV:apps_rsc TCS Busy, retrying RPMH message send: addr=0x30010
Aug 08 21:23:50 Xperia10III kernel: qcom_rpmh DRV:apps_rsc TCS Busy, retrying RPMH message send: addr=0x30010
Aug 08 21:23:50 Xperia10III kernel: qcom_rpmh DRV:apps_rsc TCS Busy, retrying RPMH message send: addr=0x30010
Aug 08 21:23:50 Xperia10III kernel: qcom_rpmh DRV:apps_rsc TCS Busy, retrying RPMH message send: addr=0x30010
Aug 08 21:23:50 Xperia10III kernel: qcom_rpmh DRV:apps_rsc TCS Busy, retrying RPMH message send: addr=0x30010
Aug 08 21:23:50 Xperia10III kernel: qcom_rpmh DRV:apps_rsc TCS Busy, retrying RPMH message send: addr=0x30010
Aug 08 21:23:51 Xperia10III kernel: binder: 4847:4847 transaction failed 29189/-22, size 32-0 line 3099
Aug 08 21:23:51 Xperia10III kernel: qcom_rpmh DRV:apps_rsc TCS Busy, retrying RPMH message send: addr=0x50000
Aug 08 21:23:52 Xperia10III kernel: binder: 4847:4847 transaction failed 29189/-22, size 32-0 line 3099
Aug 08 21:23:52 Xperia10III mce[2269]: modules/battery-udev.c: mcebat_update(): battery_state: discharging -> not_charging
Aug 08 21:23:53 Xperia10III kernel: qcom_rpmh DRV:apps_rsc TCS Busy, retrying RPMH message send: addr=0x30010
Aug 08 21:23:53 Xperia10III kernel: qcom_rpmh DRV:apps_rsc TCS Busy, retrying RPMH message send: addr=0x30010
Aug 08 21:23:53 Xperia10III kernel: qcom_rpmh DRV:apps_rsc TCS Busy, retrying RPMH message send: addr=0x30010
Aug 08 21:23:53 Xperia10III kernel: binder: 4847:4847 transaction failed 29189/-22, size 32-0 line 3099
Aug 08 21:23:53 Xperia10III mce[2269]: tklock.c: tklock_datapipe_uiexception_type_cb(): uiexception_type = notif -> none
Aug 08 21:23:54 Xperia10III kernel: binder: 4847:4847 transaction failed 29189/-22, size 32-0 line 3099
Aug 08 21:23:54 Xperia10III kernel: [schedu][0x59fd63109][19:23:54.715674] wlan: [8934:I:OSIF] vdev 0, scan id 41004 type COMPLETED(1) reason COMPLETED(1) scan found 4 bss
Aug 08 21:23:55 Xperia10III kernel: binder: 4847:4847 transaction failed 29189/-22, size 32-0 line 3099
Aug 08 21:23:56 Xperia10III kernel: rpmh_rsc_send_data: 7 callbacks suppressed
Aug 08 21:23:56 Xperia10III kernel: qcom_rpmh DRV:apps_rsc TCS Busy, retrying RPMH message send: addr=0x30010
Aug 08 21:23:56 Xperia10III kernel: qcom_rpmh DRV:apps_rsc TCS Busy, retrying RPMH message send: addr=0x30010
Aug 08 21:23:56 Xperia10III kernel: qcom_rpmh DRV:apps_rsc TCS Busy, retrying RPMH message send: addr=0x30010
Aug 08 21:23:56 Xperia10III kernel: qcom_rpmh DRV:apps_rsc TCS Busy, retrying RPMH message send: addr=0x30010
Aug 08 21:23:56 Xperia10III kernel: qcom_rpmh DRV:apps_rsc TCS Busy, retrying RPMH message send: addr=0x30010
Aug 08 21:23:56 Xperia10III kernel: qcom_rpmh DRV:apps_rsc TCS Busy, retrying RPMH message send: addr=0x30010
Aug 08 21:23:56 Xperia10III kernel: binder: 4847:4847 transaction failed 29189/-22, size 32-0 line 3099
Aug 08 21:23:57 Xperia10III kernel: binder: 4847:4847 transaction failed 29189/-22, size 32-0 line 3099
Aug 08 21:23:58 Xperia10III connmand[6857]: ntp: adjust (slew): +0.007645 sec
Aug 08 21:23:58 Xperia10III kernel: binder: 4847:4847 transaction failed 29189/-22, size 32-0 line 3099
Aug 08 21:23:58 Xperia10III mce[2269]: modules/proximity.c: mp_datapipe_set_proximity_sensor_actual(): state: OPEN -> UNDEF
Aug 08 21:23:59 Xperia10III kernel: binder: 4847:4847 transaction failed 29189/-22, size 32-0 line 3099
Aug 08 21:24:00 Xperia10III kernel: qcom_rpmh DRV:apps_rsc TCS Busy, retrying RPMH message send: addr=0x30010
Aug 08 21:24:00 Xperia10III kernel: qcom_rpmh DRV:apps_rsc TCS Busy, retrying RPMH message send: addr=0x30010
Aug 08 21:24:00 Xperia10III kernel: qcom_rpmh DRV:apps_rsc TCS Busy, retrying RPMH message send: addr=0x30010
Aug 08 21:24:00 Xperia10III kernel: qcom_rpmh DRV:apps_rsc TCS Busy, retrying RPMH message send: addr=0x30010
Aug 08 21:24:00 Xperia10III kernel: binder: 4847:4847 transaction failed 29189/-22, size 32-0 line 3099

Further investigation:

  • phone doesn’t show on USB bus, neither in developer mode (despite making sure that the usb-moded.service is working correctly) nor in any of the boot-loader modes (neither fastboot “blue LED” VolUp+cable nor Emma/newflasher “green LED” VolDown+cable).
  • Found a different charger whose USB-PD works with the smartphone, phone successfully negociates and charges at ~6V @ 3Amps.

So it might not necessarily be a charging circuit driver, I cannot exclude that the USB 2.0 data traces on the USB-C connector got somehow damaged (premature wear ?)

  • data traces are obviously used to communicate over the USB bus, hence not showing up.
  • USB 2.0 data traces are used to negotiate quick charge and other faster mode on chargers with USB-A connectors.
  • USB-C on the other hand use different dedicated pins to negotiate USB-PD (so the lone USB-PD charger that I have around and which can successfully negotiate with the smartphone still works).

(That still doesn’t explain why it doesn’t charge in “dumb 500mA mode” when plugged in the Pirl, while in kernel mode)

1 Like

I have the same problem. But:
the phone wont charge as long as im logged in.
if i turn rhe phone off, wait until its completely done with that and then plug in the charger. It boots up into the charging screen, and everything works fine

1 Like