Fix PinePhone Pro when unable to boot due to drained battery
#1
Information 
I just wanted to share how I got my PPPro booting after the battery was fully drained (just after I received my phone). I saw there are already some Threads (e.g. #15896) which describe this issue. However, I wanted to share some additional debugging instructions for reference. These instructions will help ascertaining if the phone enters Maskrom mode correctly (precondition for charging the drained battery). The actual instructions that helped me solving my issue are described in the blue box of the Installation instructions in the PPPro wiki.


Behavior: The phone does not boot (neither does it charge)

Fix: Instructions how to charge the PPPro if the battery is fully drained (quoted from the wiki):


Quote:If the battery is fully drained U-Boot might fail to boot any installed operating system on the eMMC and microSD card due to a bug.
If that's the case please start your phone in Maskrom mode and let it charge in that for a few hours. To do that:
  • Remove any microSD card from the phone
  • Hold the "RE" button underneath the back cover of your Explorer Edition (or shorting the bypass contact points on the Developer Edition)
  • Connect the phone to an USB port of a computer, while still holding the button
  • Check if the phone in Maskrom mode appears in the output of the Linux command lsusb on the computer (if the device disappears again please use a different cable)
  • Let the phone charge for multiple hours
Note: If that didn't work, try to remove the battery and the USB cable and hold the power button for a few seconds and then insert the battery again, before retrying the procedure.



In addition to these instructions, I observed the lsusb and dmesg outputs when connecting the PPPro to the USB port of my laptop. I opened two terminal windows:

  1. In the first terminal window I watched the lsusb output, while connecting the PPPro with the RE button pressed. The device showed up on the USB bus:
    Code:
    $ watch lsusb
    ...
    Bus 001 Device 011: ID 2207:330c
    ...
  2. In a second terminal window I concurrently observed the dmesg output, while connecting the PPPro. Here, the PPPro was showing up on the USB port as well:
    Code:
    $ tail -f /var/log/{messages,kernel,dmesg,syslog}
    ...
    Feb  2 13:19:15 <HOSTNAME> kernel: [148427.240994] usb 1-1.2: new high-speed USB device number 11 using ehci-pci
    Feb  2 13:19:15 <HOSTNAME> kernel: [148427.350785] usb 1-1.2: New USB device found, idVendor=2207, idProduct=330c
    Feb  2 13:19:15 <HOSTNAME> kernel: [148427.350791] usb 1-1.2: New USB device strings: Mfr=0, Product=0, SerialNumber=0
    Feb  2 13:19:15 <HOSTNAME> mtp-probe: checking bus 1, device 11: "/sys/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.2"
    Feb  2 13:19:15 <HOSTNAME> mtp-probe: bus: 1, device: 11 was not an MTP device
    Feb  2 13:19:15 <HOSTNAME> upowerd[2113]: unhandled action 'bind' on /sys/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.2
    ...



After charging the phone for several hours (~2-3h), I was able to boot the PPPro. However, the phone was still almost drained. I finished the initial setup and re-plugged the phone into my USB charger and finally my PPPro is charging as expected.
  Reply
#2
You can also use a bench power supply with CC CV if you're careful.

Set voltage to 3.8v and current to 0.5A, then attach it to the + - pads of the battery. That'll give you enough capacity to boot and charge normally.

Be sure to:
- Not leave unattended, it should be in visual range and close to you at all times.
- Feel the battery occasionally for heat, if it's noticeably warmer than ambient at a 0.5A charge the battery is dangerously damaged.
- Occasionally check the voltage, if it isn't rising either the contacts are bad or the battery is bad.
  Reply
#3
(02-02-2022, 09:24 AM)butjar Wrote: If the battery is fully drained U-Boot might fail to boot any installed operating system on the eMMC and microSD card due to a bug.

Does anybody know if there is a way to fix that bug permanently? Flashing a new U-Boot maybe?
  Reply
#4
(02-28-2022, 10:02 AM)gerrit Wrote: Does anybody know if there is a way to fix that bug permanently? Flashing a new U-Boot maybe?

I am sure that the best people are working on it.
Cheers,
TRS-80

What is Free Software and why is it so important for society?

Protocols, not Platforms

For the most Linux-y experience on your Linux phone, try SXMO!

I am (nominally) the Armbian Maintainer for PineBook Pro (although severely lacking in time these days).
  Reply
#5
Another option is to use a dedicated USB--> li-ion charger, they are commonly available for charging cheap vape-cigarettes, I see them for about 1-5 euros. Easy to crack open and connect the correct polarities, it charges enough to boot in a few minutes or safely use it to fully charge your battery should the charging system be damaged or inoperable.
If you are in a dire situation where you NEED to get a booted phone you can cut any USB cable and connect the correct polarity to the poles of a li-ion battery for a minute or so and have enough to boot if not another 60 sec until you can get normal internal charging. 5v is just outside the spec but I have never had it be a problem as 5v should be within the engineering reserve for a standard Li-ion battery <<<but can overcharge and damage the battery>>> if used to do a real full charge and not just get the V high enough to boot the bootloader and enable the phone's internal charger.
None of this is specific to Pinephone but is general for nearly all ~3.6v Li-ion batteries and devices which require sufficient voltage in the battery to get start up a bootloader to get charging started.
Again the emergency hack uding a stripped USB cable is bad practice but should get you back to charging voltage in nearly all cases without damage though some batteries and devices are non-standard conforming so do at your own risk in an emergency when you REALLY NEED to get communications restored and need to take a small risk.
  Reply
#6
(02-02-2022, 09:24 AM)butjar Wrote: I just wanted to share how I got my PPPro booting after the battery was fully drained (just after I received my phone). I saw there are already some Threads (e.g. #15896) which describe this issue. However, I wanted to share some additional debugging instructions for reference. These instructions will help ascertaining if the phone enters Maskrom mode correctly (precondition for charging the drained battery). The actual instructions that helped me solving my issue are described in the blue box of the Installation instructions in the PPPro wiki.


Behavior: The phone does not boot (neither does it charge)

Fix: Instructions how to charge the PPPro if the battery is fully drained (quoted from the wiki):


Quote:If the battery is fully drained U-Boot might fail to boot any installed operating system on the eMMC and microSD card due to a bug.
If that's the case please start your phone in Maskrom mode and let it charge in that for a few hours. To do that:
  • Remove any microSD card from the phone
  • Hold the "RE" button underneath the back cover of your Explorer Edition (or shorting the bypass contact points on the Developer Edition)
  • Connect the phone to an USB port of a computer, while still holding the button
  • Check if the phone in Maskrom mode appears in the output of the Linux command lsusb on the computer (if the device disappears again please use a different cable)
  • Let the phone charge for multiple hours
Note: If that didn't work, try to remove the battery and the USB cable and hold the power button for a few seconds and then insert the battery again, before retrying the procedure.



In addition to these instructions, I observed the lsusb and dmesg outputs when connecting the PPPro to the USB port of my laptop. I opened two terminal windows:

  1. In the first terminal window I watched the lsusb output, while connecting the PPPro with the RE button pressed. The device showed up on the USB bus:
    Code:
    $ watch lsusb
    ...
    Bus 001 Device 011: ID 2207:330c
    ...
  2. In a second terminal window I concurrently observed the dmesg output, while connecting the PPPro. Here, the PPPro was showing up on the USB port as well:
    Code:
    $ tail -f /var/log/{messages,kernel,dmesg,syslog}
    ...
    Feb  2 13:19:15 <HOSTNAME> kernel: [148427.240994] usb 1-1.2: new high-speed USB device number 11 using ehci-pci
    Feb  2 13:19:15 <HOSTNAME> kernel: [148427.350785] usb 1-1.2: New USB device found, idVendor=2207, idProduct=330c
    Feb  2 13:19:15 <HOSTNAME> kernel: [148427.350791] usb 1-1.2: New USB device strings: Mfr=0, Product=0, SerialNumber=0
    Feb  2 13:19:15 <HOSTNAME> mtp-probe: checking bus 1, device 11: "/sys/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.2"
    Feb  2 13:19:15 <HOSTNAME> mtp-probe: bus: 1, device: 11 was not an MTP device
    Feb  2 13:19:15 <HOSTNAME> upowerd[2113]: unhandled action 'bind' on /sys/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.2
    ...



After charging the phone for several hours (~2-3h), I was able to boot the PPPro. However, the phone was still almost drained. I finished the initial setup and re-plugged the phone into my USB charger and finally my PPPro is charging as expected.

I was following the instructions but it still wasnt seeing any rockchip devices in lsusb, so what worked for me was TO ALSO REMOVE THE BATTERY, then press the reset button while connecting the cable.  Once rockchip reappeared , I then reattached the battery and released the reset button and continued charging
  Reply
#7
(03-24-2022, 08:14 AM)mrnobody Wrote: After charging the phone for several hours (~2-3h), I was able to boot the PPPro. However, the phone was still almost drained. I finished the initial setup and re-plugged the phone into my USB charger and finally my PPPro is charging as expected.


I was following the instructions but it still wasnt seeing any rockchip devices in lsusb, so what worked for me was TO ALSO REMOVE THE BATTERY, then press the reset button while connecting the cable.  Once rockchip reappeared , I then reattached the battery and released the reset button and continued charging

Removing the battery is actually part of the wiki instructions, would recommend to have an eye on the wiki whenever there is an issue, see https://wiki.pine64.org/wiki/PinePhone_P...structions.
  Reply
#8
during the "watch lsusb" I see it pop in the list for a sec and then disappear. I assume this means it tried and failed to enter said mode.
  Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  PinePhone Pro silver lining, it’s fast, real damn fast ashoka232 6 2,184 12-23-2024, 02:42 PM
Last Post: biketool
  suggestions for power/battery consumption data logger for community to compare? dchang0 0 84 12-22-2024, 04:48 PM
Last Post: dchang0
  PinePhone Pro Black Screen CrimsenRaven 3 1,714 11-13-2024, 09:33 PM
Last Post: twentyslimy
  PinePhone Pro/IMX258 Camera Debugging problem jasperji 2 998 10-20-2024, 03:59 AM
Last Post: Jite
  Having difficulty installing PostmarketOS on Pinephone Convergence Beta edition spazz 13 1,619 10-17-2024, 03:28 PM
Last Post: fhilliard41
  PinePhone doesn't boot anymore lapin 3 776 09-13-2024, 10:09 AM
Last Post: lapin
  How to boot from SD card in PPP joespodie 2 985 08-02-2024, 02:49 PM
Last Post: mikehenson
  New PinePhone Pro fails... P. Siera 5 1,524 08-01-2024, 04:56 AM
Last Post: P. Siera
  A way to view or log the splash screen on Pinephone Pro running ArchLinux (Danctnix) PHLEMON 4 1,336 07-30-2024, 11:03 PM
Last Post: PHLEMON
  Is my PinePhone Pro dead? jlioret 2 2,306 07-28-2024, 04:12 PM
Last Post: dchang0

Forum Jump:


Users browsing this thread: 1 Guest(s)