[solved] Mx4 - Installer blocked at "waiting for recovery mode"



  • Thanks.

    I looked a bit around, and if recovery mode seems broken, fastboot mode works perferctly.

    I found an old topic with another way to install ubports : this one

    This command line seems interesting :
    sudo ubuntu-device-flash --server=http://system-image.ubports.com touch --device=arale --channel=15.04/stable --bootstrap --wipe

    But i cant find any recovery image from ubports for device mx4 arale (all links are dead, although its only 6 months old).
    If anydoby has a link for a recovery img, i'll take it !



  • @slayne Was just looking at something similar

    sudo ubuntu-device-flash --server=http://system-image.ubports.com touch --device=arale --channel=15.04/stable --revision=version_3

    But this is not something I yet know much about @advocatux might know or be able to give advice on this.
    Edit Have changed the script to what I think is correct. You could just try running it and see what happens



  • Thats what i got :

    slayne@slayne-PcAsus:~$ sudo ubuntu-device-flash --server=http://system-image.ubports.com touch --device=arale --channel=15.04/stable --revision=version_3
    invalid argument for flag `--revision' (expected int): strconv.ParseInt: parsing "version_3": invalid syntax

    I tried without the 'revision' :

    slayne@slayne-PcAsus:~$ sudo ubuntu-device-flash --server=http://system-image.ubports.com touch --device=arale --channel=15.04/stable
    2018/08/20 09:23:39 Device is |arale|
    2018/08/20 09:23:39 Flashing version 3 from 15.04/stable channel and server http://system-image.ubports.com to device arale
    2018/08/20 09:23:39 Cannot cleanup tree to ensure clean deploymentexit status 1

    Hope that helps.



  • @slayne Ok you got as far as that should so something else is up. I'll try and get someone over to you.



  • @Slayne the proper revision number format is 3 not version_3 (in that example)

    I think it's better to go directly to 16.04 RC than to 15.04 stable now.

    Put your phone in fastboot mode, plug it to your computer, and run ubuntu-device-flash --server=https://system-image.ubports.com touch --device=arale --channel=ubports-touch/16.04/rc --revision=9 --bootstrap --wipe

    Let's see if that works, and if it doesn't, report back πŸ™‚

    Edit to fix the revision number format. Sorry πŸ™‚



  • This is just for general information: the recovery images are here http://cdimage.ubports.com/devices/



  • Ok, thx for your time, i report back.

    1. When i copy/paste your last command line, i got the response :
      invalid argument for flag `--revision' (expected int): strconv.ParseInt: parsing "version-9": invalid syntax

    2. I tried without the "--revision=version-9". I got this :
      sudo ubuntu-device-flash --server=https://system-image.ubports.com touch --device=arale --channel=ubports-touch/16.04/rc --bootstrap --wipe
      2018/08/20 12:25:59 Device is |arale|
      2018/08/20 12:26:00 Flashing version 9 from ubports-touch/16.04/rc channel and server https://system-image.ubports.com to device arale
      376.66 MB / 376.66 MB [====================================] 100.00 % 1.70 MB/s
      /home/slayne/.cache/ubuntuimages/pool/keyring-4c4e7ef380ebcfa2c31084efa199138e93bfed8fc58aa3eb06bdf75a78af9b57.tar.xz
      /home/slayne/.cache/ubuntuimages/pool/device-c746103f205781974a7b89aff29cdf3dd450879f119f672d3a6f62b67ed783c5.tar.xz
      2018/08/20 12:29:55 Can't flash recovery image

    I went pretty well until the last line !
    On the phone on recovery mode, i read "image is not a boot image".

    We're getting close, i hope.



  • @slayne about point 1, yes my bad, I thought that's the proper number format (as seeing here http://system-image.ubports.com/ubports-touch/16.04/rc/arale/) but it's just the number! Anyway, without any version number it should default to the latest version available.

    About point 2, I've never tried to play with recovery images directly so maybe we should wait to someone with more experience with it

    @UniSuperBox are you there? πŸ™‚



  • Well, no luck this afternoon.

    I flashed 3 differents recovery.img for Arale found on the web, with none i could access to a functionnal recovery mode.

    I tried to push files with fastboot mode, every time it ends with "image is not a boot image", 15.04 or 16.04, the same.

    To try different recovery : sudo fastboot flash recovery recovery.img
    Phone verified with : adb devices
    I tried:
    sudo ubuntu-device-flash --server https://system-image.ubports.com touch --channel ubports-touch/15.04/stable --bootstrap
    sudo ubuntu-device-flash --server=https://system-image.ubports.com touch --device=arale --channel=ubports-touch/16.04/rc --bootstrap --wipe
    sudo ubuntu-device-flash --server=http://system-image.ubports.com touch --device=arale --channel=15.04/stable --wipe

    Well, im stucked... So frustrating !



  • @slayne I've found a cached page [*] with "old" Ubuntu Touch instructions and it seems you need to run the command twice, one with --bootstrap and then without that option

    [*] https://webcache.googleusercontent.com/search?q=cache:A95HHIsDW_YJ:https://docs.ubuntu.com/phone/en/devices/installing-ubuntu-for-devices+&cd=1&hl=en&ct=clnk&gl=es



  • @advocatux said in Mx4 - Installer blocked at "waiting for recovery mode":

    it seems you need to run the command twice, one with --bootstrap and then without that option

    I guess so are referring to this part of the instructions:

    "Tip: The --bootstrap option is normally only used when installing Ubuntu the first time. It requires that the device is booted to the bootloader. After Ubuntu is installed, one uses the ubuntu-device-flash command (without the --bootstrap option) while the device is booted to Ubuntu."

    What the above means is that the --bootstrap is only necessary to install to a device booted into the bootloader the first time that Ubuntu Touch is installed on said device. When there is already a version of Ubuntu Touch on the device and the device is booted normally, then the --bootloader option should no longer be used.

    If the --bootloader option succeeded, then there is no need to run the command again without the option.



  • Here's the main part, adapted to UBports.

    • Power the device off with the Power button.
    • Reboot into the bootloader by pressing the correct physical button combination for your device
    • Install Ubuntu using your selected channel. (I'm going to use 16.04 RC for this example, but anyone can change rc for other option)
    • Run ubuntu-device-flash touch --channel=ubports-touch/16.04/rc --bootstrap
      Interesting [*]: the original command in that cached page doesn't add the device model or the server, it should be auto-detected hmm you could try that and if it doesn't work, add the device & server parameters
    • Tip: The --bootstrap option is normally only used when installing Ubuntu the first time. It requires that the device is booted to the bootloader. After Ubuntu is installed, one uses the ubuntu-device-flash command (without the --bootstrap option) while the device is booted to Ubuntu.
    • Wait until the reboot is done. In most cases no input from you is required.
      The process takes some time. First, an appropriate image is downloaded to ~/.cache/ubuntuimages.
    • Tip: Occasionally delete the cache of downloaded images (in ~/.cache/ubuntuimages) to free up disk space with: ubuntu-device-flash --clean-cache touch.

    Then, the parts of the images are deployed to the device. Ubuntu is deployed to the devices as a β€œrecovery” image. Then, the device boots from the recovery image and installs Ubuntu as the normal OS. Finally, the device boots into Ubuntu for devices.

    [*] Just as an example, this is the original command and its output in that page:

    $ ubuntu-device-flash touch --channel=ubuntu-touch/stable/ubuntu --bootstrap
    2015/02/16 09:50:12 Expecting the device to be in the bootloader... waiting
    2015/02/16 09:50:12 Device is |mako|
    2015/02/16 09:50:12 Flashing version 1 from ubuntu-touch/stable/ubuntu channel and server https://system-image.ubuntu.com to device mako
    


  • @arubislander thank you, I was preparing a more detail answer to what I said πŸ™‚



  • @advocatux I saw that right after I pressed submit πŸ™‚



  • @arubislander no problem, it's better to have extra instructions than none πŸ˜ƒ



  • @advocatux said in Mx4 - Installer blocked at "waiting for recovery mode":

    Interesting [*]: the original command in that cached page doesn't add the device model or the server, it should be auto-detected hmm you could try that and if it doesn't work, add the device & server parameters

    When server is omitted, then the Canonical servers are used by default. Since these are no longer up (I think?) I would expect the command to fail without it.



  • @arubislander yes, probably, but I really don't know. Maybe that tool is exactly the same as in Canonical times or maybe it has been adapted for UBports like other tools?

    Just in case, the full command adapted for MX4, 16.04 RC, and UBports scenario is:
    ubuntu-device-flash --server=https://system-image.ubports.com touch --device=arale --channel=ubports-touch/16.04/rc --bootstrap

    and then, once again without the --bootstrap option



  • Ah, this point is also important before doing anything else:

    Warning: If your device is encrypted you must perform a full factory reset before installing ubuntu. This also will delete all data from the device, including apps and other data. You may want to create a backup first



  • Thanks for your time.

    Once again, whatever i do, all commands made by terminal on my labtop finish with :
    "2018/08/20 19:05:37 Can't flash recovery image"

    Sooooo frustrating.

    Edit - I follow with interest this conversation about installing UBports without cable but with terminal and then i realise that on my all-new Ubuntu touch legacy installation, i dont have access to the ubuntu store and then i have no terminal...



  • @slayne have you tried to install the Terminal app (vivid version) from here https://open-store.io/app/com.ubuntu.terminal?


Log in to reply