[PORT] Ubuntu Touch for LG L90 Dual

Search This thread

peat_psuwit

Senior Member
Jan 4, 2013
84
126
I have ubuntu installed on my computer and followed instructions but after I start ubuntu-device-flash it always fails at recovery flash. I tried using both stable and rc-proposed channel but it is the same every time.
I get a "cant flash recovery image" and on the phone there is no error mentioned. Last message displayed is fastboot flash recovery....something.
Before trying all this I had rooted stock Lollipop rom installed with twrp.

You already unlocked bootloader, right? Could you please post full message from both terminal and phone? It contains useful info.

That said, I've heard that Kitkat-based custom ROM (including mine) doesn't work with Lolipop-based bootloader. So, you may want to try flashing bootstack (http://forum.xda-developers.com/lg-l90/development/bootstack-kk-l-l90-t3118632) in TWRP. Make sure you know exact phone model number (Dxxx__). Then, follow the instruction again, while still in TWRP.
 
  • Like
Reactions: clyder

clyder

Senior Member
Aug 30, 2010
1,061
473
Indjija
You already unlocked bootloader, right? Could you please post full message from both terminal and phone? It contains useful info.


That said, I've heard that Kitkat-based custom ROM (including mine) doesn't work with Lolipop-based bootloader. So, you may want to try flashing bootstack (http://forum.xda-developers.com/lg-l90/development/bootstack-kk-l-l90-t3118632) in TWRP. Make sure you know exact phone model number (Dxxx__). Then, follow the instruction again, while still in TWRP.

I had unlocked bootloader.
I used both CM and stock rom but at the time I tried flashing ubuntu I had rooted stock Lollipop v20c and bootstack for Lollipop (I totally forgot to try and flash kitkat bootstack before trying ubuntu).

I dont have any info from the terminal and phone now, but basicaly in terminal it went two flash phases (one about 70MB and another around 260MB). Both went fine and then I got an error that it cant flash recovery image. After that I tried using stable channel (first try was with rc-proposed). The same thing happened with two flash passes and then recovery error. On phone last message was just some informational mesage fastboot flash recovery....something like that.
I also tried several times to unplug and replug usb cable, to turn phone off and on and starting again but always error with recovery.

Later today I will try from scratch. But this time I will first flash kitkat bootstack and then start with Ubuntu Touch.

Thanx for this. I will report later if I cam succesfull.

Another thing. After I failed with Ubuntu I flashed stock KDZ to get phone working again.
Is there a way, at that point, to flash twrp recovery from fastboot? fastboot flash recovery wasnt working from fastboot and I dont know if ubuntu-device-flash can do something like that?
 
Last edited:

peat_psuwit

Senior Member
Jan 4, 2013
84
126
Another thing. After I failed with Ubuntu I flashed stock KDZ to get phone working again.
Is there a way, at that point, to flash twrp recovery from fastboot? fastboot flash recovery wasnt working from fastboot and I dont know if ubuntu-device-flash can do something like that?

You said flashing recovery from fastboot doesn't work? All ubuntu-device-flash does to flash recovery in bootstrap mode is using exactly that command. Did you use sudo with ubuntu-device-flash?
 

peat_psuwit

Senior Member
Jan 4, 2013
84
126
Update 8 April 2016

Update 8 April 2016: Hooray, OTA-10 is released! To celebrate this, new device tarballs in stable and rc-proposed channels is released. This version also fix audio recording on rc-preposed. Go to "System Settings" to get your update, or follow instructions below if you haven't update your phone since 9 January 2016.
 
Last edited:

clyder

Senior Member
Aug 30, 2010
1,061
473
Indjija
You said flashing recovery from fastboot doesn't work? All ubuntu-device-flash does to flash recovery in bootstrap mode is using exactly that command. Did you use sudo with ubuntu-device-flash?
I tried flashing recovery using fastboot commands but got a "failed" message at the end. After that I reflashed stock kdz.

Anyway my issue was definitely because I was on Lollipop bootstack (patched one).
Just now I rooted and unlocked the bootloader again and first flashed Kitkat bootstack and now Ubuntu flash went fine, and I am currently booting it for the first time.

Thanx for everything. I should of saw this myself.
 

peat_psuwit

Senior Member
Jan 4, 2013
84
126
Anyway my issue was definitely because I was on Lollipop bootstack (patched one).
Just now I rooted and unlocked the bootloader again and first flashed Kitkat bootstack and now Ubuntu flash went fine, and I am currently booting it for the first time.

I'm glad it's working now. Could you please tell me what model is your phone exactly, so I know that my port works on your version of L90.
 

peat_psuwit

Senior Member
Jan 4, 2013
84
126
@peat_psuwit will u make hard buttons work? I know in ubuntu touch its not needed but l90 have it so maybe we could use them.. Cumps :)

I don't know how that works on Ubuntu Touch. Currently there's a bug that makes phone printing some character continuously when the button is pressed in certain way. So, at this moment you may want to avoid touching those buttons while the screen is on.
 
  • Like
Reactions: Warimation

peat_psuwit

Senior Member
Jan 4, 2013
84
126
Update 28 April 2016

Update 28 April 2016: New device tarball is released in stable and rc-proposed channel. This version comes with a workaround when Wi-Fi is broken after disconnected from mobile network. Go to "System Settings" to get your update, or follow instructions below if you haven't update your phone since 9 January 2016.
 

jesusfranco

Member
Aug 16, 2010
35
10
Amazing work so far! Unfortunately I'm getting an error message "no sim" in the notification drawer under Network. Is this normal for the D415 T-Mobile variant? Its the US, single sim card version of the L90.
 

peat_psuwit

Senior Member
Jan 4, 2013
84
126
Amazing work so far! Unfortunately I'm getting an error message "no sim" in the notification drawer under Network. Is this normal for the D415 T-Mobile variant? Its the US, single sim card version of the L90.

That's not normal. Could you please send me /var/log/syslog? (Enable developer mode in system settings -> about, then connect your phone to your computer and run "adb pull /var/log/syslog")
 

peat_psuwit

Senior Member
Jan 4, 2013
84
126
Update 16 June 2016

Update 16 June 2016: New device tarball is released in stable and rc-proposed channel. This version comes with the fix for thumbnail generation for some video resolution along with few other fixes. Go to "System Settings" to get your update, or follow instructions below if you haven't update your phone since 9 January 2016.
For those using rc-proposed channel, I've released an experimental fix that will reduce battery consumption but may cause the phone to lock up. If you can't bare with something like this, switch to stable channel.
 

SeanMXD

New member
Apr 19, 2014
2
0
Flashable ZIP D415 Stable

I have an LGE LG-D415 and I tried this tutorial and it always fails to install the recovery part. I have not been able to work around this. I would rather find a ZIP file that I could flash through TWRP recovery, which I have installed already. Could you send me info on grabbing a stable version of this ROM in a flashable ZIP file? Thank you :D
 

peat_psuwit

Senior Member
Jan 4, 2013
84
126
Sure! Here it is.

Syslog

I'm sorry for a long delay. (I'm up to the other things in my life.) Could you please try this version of oFono?

https://launchpad.net/~peat-new/+archive/ubuntu/lg-d410-custom-test/+files/ofono_1.17.bzr6921+15.04.20160819.6-0ubuntu1peat2_armhf.deb

I have an LGE LG-D415 and I tried this tutorial and it always fails to install the recovery part. I have not been able to work around this. I would rather find a ZIP file that I could flash through TWRP recovery, which I have installed already. Could you send me info on grabbing a stable version of this ROM in a flashable ZIP file? Thank you :D

I'm sorry, but I don't know how to do that. Ubuntu touch is designed to be flashed by its own recovery, and have ROM files in different format than Android's.
 
  • Like
Reactions: gohaz0331

dan1239

Member
Apr 20, 2013
35
5
Doesn't Continue After Recovery...

Ok, so I got through everything except when it comes to installing. It says "Waiting for device to enter Recovery Mode", phone enters recovery mode yet it still says that it failed to enter recovery. I don't understand what could possibly be happening. I've even tried multiple versions of the command line, and even different channels. Please help me!
 

peat_psuwit

Senior Member
Jan 4, 2013
84
126
Ok, so I got through everything except when it comes to installing. It says "Waiting for device to enter Recovery Mode", phone enters recovery mode yet it still says that it failed to enter recovery. I don't understand what could possibly be happening. I've even tried multiple versions of the command line, and even different channels. Please help me!

At "adb shell ...." command, I see an error saying device (null) is not found. I'm not sure what mode your phone is in. What's on the phone's screen now?
 

Top Liked Posts

  • There are no posts matching your filters.
  • 20
    Update 30 October 2016: I'm sorry for very long delay. Being a university student make my free time lower considerably. Anyway, new device tarball is released in stable and rc-proposed channel. This version mostly contains minor fixes, but more importantly, this includes fixes for some famous vulnerability, including the Quadrooter and dirty CoW vulnerabilities. Go to "System Settings" to get your update, or follow instructions below if you haven't update your phone since 9 January 2016.
    I still ship experimental fixes in rc-proposed that may freeze your phone when the screen is off. If this matters to you, you may consider using stable channel for now, but that has pretty bad power consumption (but that still means about one day of light usage). Also, there is known bug about mobile network not usable on some network that affects all channels.
    Oh, and for those stay on absolute bleeding edge on devel-proposed channel, I currently don't have enough time to test that. So, no release to devel-proposed just yet. Sorry!


    Disclaimer
    Code:
    /*
     * Your warranty is now void.
     *
     * I am not responsible for bricked devices, dead SD cards,
     * thermonuclear war, or you getting fired because the alarm app failed. Please
     * do some research if you have any concerns about features included in this ROM
     * before flashing it! YOU are choosing to make these modifications, and if
     * you point the finger at me for messing up your device, I will laugh at you.
     */
    By the way, this disclaimer is actually copied from somewhere else just to protect me from being in the court, and I won't actually laugh at you if your device bricks. If your device really bricks, I will help you as much as possible. :)

    Introduction
    This is a port of Ubuntu touch to LG L90 Dual and all L90 models. (See below for tested devices.) Basic functionalities work, but there're still some rough edges all around. It's stable enough to use daily, and I personally use it on my phone every day. If you're tired of Android, you may want to give Ubuntu touch a try.

    Tested device
    This doesn't mean other devices aren't supported. If your device is labeled as "L90" (or can run Cyanogenmod for LG L90), you can give this a try.
    • LG L90 Dual (D410) (My device :) )
    • LG L90 D405n (single card) (Thanks, keturidu!)
    • LG Optimus L90 D415 (T-Mobile variant) (Thanks, JamesB3)

    What's working/not working
    Note that this is tested using rc-proposed channel.
    • Screen: Works
    • Touch: Works
    • Audio: Works
    • Screen rotation: Works
    • Vibration: Works
    • Camera: Stil picture works for both camera. But video recording doesn't work for the front camera.
    • Mobile Phone: Works for both SIM, but please see "Bugs and workarounds" below for info about 3G slot and data connection.
    • Wifi: Works
    • Video playback: Works
    • GPS: Works.*
    • Bluetooth: Works, but on/off doesn't.
    *Do note that Wi-Fi-assisted location isn't available as it's licensed for the official devices only.

    Screenshot

    lockscreen.png

    homescreen.png

    taskswitcher.png

    calculator.png

    about-phone-censor.png


    Information about device tarball and channel selection (obsolete)
    Now, you don't have to worry about correct device tarball anymore. You just type in correct channels in the command, and the flashing software will get the correct files for you. You can find out more about Ubuntu touch channels at https://developer.ubuntu.com/en/start/ubuntu-for-devices/image-channels/. If you're in doubt, I recommend you to use stable channel.

    How to install/upgrade
    Installing for the first time (updated):

    The easiest way to install it is using ubuntu-device-flash. All of your personal data will be deleted. Make sure you backup everything important before install.
    You have to root your device and unlock device's bootloader. This forum has a good tutorial on that.
    For rooting, I recommend http://forum.xda-developers.com/lg-l90/general/guide-root-l90-varients-updates-t2928364. If that doesn't work, try http://forum.xda-developers.com/showthread.php?t=2732311. This guide is guaranteed to work.
    For unlocking bootloader, I recommend http://forum.xda-developers.com/lg-l90/general/guide-guide-to-unlocking-bootloader-l90-t2852917
    Also, you'll need an Ubuntu (virtual) machine.
    If your device has been running Lolipop, you may have to flash Kitkat-based bootstack for your device (http://forum.xda-developers.com/lg-l90/development/bootstack-kk-l-l90-t3118632). Make sure you know exact phone model (Dxxx__).
    1. Follow the instruction for preparing your desktop in this link.
    2. Select channel (see information about selection above). Don't download device tarball. The flashing software will get it for you.
    3. Enable ADB for your device. I won't teach you here, but, again, this forum has a good tutorial about that.
    4. Plug your device into your computer. Then, put the device in fastboot mode by running the following command:
      Code:
      adb shell su -c 'dd if=/dev/zero of=/dev/block/platform/msm_sdcc.1/by-name/boot bs=16 count=1'
      adb reboot
      The first command will wipe the first 16 bytes of the boot partition. So, when the device reboot, it'll boot into fastboot mode as the boot partition is broken. Don't worry, it'll be flashed by Ubuntu Touch anyway.
    5. When the device is in fastboot mode, run the following command:
      Code:
      sudo ubuntu-device-flash --server http://system-image.ubports.com/ touch --channel ubuntu-touch/{selected channel} --device w7 --bootstrap --wipe
      There maybe some trouble flashing recovery. If that happen, re-plug the USB chord and try again. You'll see a lot of text and then purple recovery screen. At this point, the computer will push the files into your device. Don't unplug your USB chord until the device reboot again with big Ubuntu logo spinning. Wait until the device reboot into Ubuntu Touch, and, viola, Ubuntu Touch is installed!
    Upgrading your device or switch channel (updated):
    If you've updated your device with new instruction at least once (since 9 January 2016) and just want to update the device tarball, just go to "System settings" on your device to get your update. But if you've never updated with the new instruction, read on.
    1. Enable developer mode on the device by going to System Settings > About this phone > Developer mode. If you don't have a passcode for your device, set it now by pressing Lock security. Then, enable developer mode by pressing at the check.
    2. Plug your device into the computer, unlock your device (this is important) and run:
      Code:
      ubuntu-device-flash --server http://system-image.ubports.com/ touch --channel ubports-touch/15.04/stable
    Don't unplug your USB chord until the device reboot again with big Ubuntu logo spinning.

    Flash different (Android-based) recovery:

    Ubuntu recovery can't be used to flash Android-recovery-format ZIP file. If you want to go back to Android using backed up file or ZIP file, you'll need custom Android-based recoveries, such as TWRP or CWM. You'll need raw disk image (IMG file) for this. Run the following command in terminal:
    Code:
    adb reboot recovery
    # wait for recovery to appear
    adb push {recovery image name}.img /cache
    adb shell dd if=/cache/{recovery image name}.img of=/dev/block/platform/msm_sdcc.1/by-name/recovery
    adb reboot recovery

    Download & Source code
    You don't need to download device tarball manually anymore as flashing software will deals that for you. But if you want, you can download device-specific tarball using --download-only flag with ubuntu-device-flash. Be warned that you can't flash that image directly because updater in recovery image won't trust the signature.

    Customization on the Android side can be found in the local manifest in this Github repository:
    https://github.com/peat-psuwit/ubuntu-phone_manifest_w7
    All kind of pull request is welcome on all of my repository.

    Most customization on Ubuntu side can be found at
    https://launchpad.net/~peat-new/+archive/ubuntu/lg-d410-custom/+packages
    For those interested, this is programs that make phone call on this device works: https://github.com/peat-psuwit/pulseaudio-droid-card-parameters-setter

    Legal notice
    This distribution of software contains software from Android Open Source Project and CyanogenMod Project. It's under Apache license. Additionally, this distribution also contains software that is normally distributed with Android system, being under various licenses. The detail of license of those files is at /system/etc/NOTICE.html.gz after the system is installed.

    This distribution of software contains part of PulseAudio. (Particularly, the modified version of droid module.) It's licensed under GPL version 2 or any later version of GPL. (it's actually distributed under LGPL 2.1+, but it's used with GPL-only libraries, making the effective license GPL. Please look at /usr/share/doc/pulseaudio-module-droid/copyright for detail). Get the patch at https://github.com/peat-psuwit/pulseaudio-droid-card-parameters-setter

    This distribution of software contains timekeep, a small utility to keep track of time & date. This is Copyright (c) 2015, Sony Mobile Communications Inc, and licensed under 3-clauses BSD license. The full license can be seen at https://github.com/peat-psuwit/timekeep/blob/master/license.txt

    Old legal notice:
    This distribution of software contains modified version of oFono, Open Source Telephony. It's licensed under GPL version 2. You may have your source-code at https://launchpad.net/~peat-new/+archive/ubuntu/lg-d410-custom/+packages

    This distribution of software contains part of GStreamer, open source multimedia framework. (Particularly, the modified version of androidmedia plugin.) It's licensed under LGPL version 2 or any later version of LGPL. You may have your source-code at https://launchpad.net/~peat-new/+archive/ubuntu/lg-d410-custom/+packages

    Changelogs
    Latest update: 30 October 2016
    • Fix problem where pressing buttons below the screen in certain way will cause screen not to go sleep.
    • Fix Quadrooter, dirty CoW, and other vulnerabilities.
    • Change some aspect of build system.
    • Make system use our GPS configuration instead of system's default.

    Older update

    16 June 2016
    • Fix thumbnail generation for some video resolution.
    • Revert NetworkManager workaround added in the last release as NM 1.2 is now in both rc-proposed and stable channel.
    • Change method to wait for Bluetooth config at startup.
    • Change grid unit size to 13px.
    • (rc-proposed only) Run init.zetaw.post-boot.sh when the phone finished booting. This'll make battery consumption a lot lower but will cause the phone to lock up sometimes. That's why I release this fix to rc-proposed channel only. If you can't bare with something like this, switch to stable channel.


    28 April 2016
    • Add a workaround for NetworkManager, to fix Wi-Fi connectivity after mobile data is disconnected. The actual fix is preparing to land in rc-proposed soon, but until then, let's use this workaround.

    8 April 2016
    • Update Pulseaudio-module-droid to incorporate audio recording fix.

    4 April 2016 (rc-proposed only update)
    • Update Pulseaudio-module-droid
    • Update configuration to run ADB in secure mode.
    • Update recovery image.

    11 March 2016
    • Fix race condition in Bluetooth initialization code.
    • Update recovery image

    4 March 2016
    • Enable Bluetooth in kernel and android parts.
    • Update recovery image

    6 February 2016
    • Update pulseaudio-module-droid distributed in device tarball.

    9 January 2016
    • Enforce GPG verification for UBPorts system-image server.
    • Reduce possibility to reboot at startup due to Wi-Fi subsystem.

    3 January 2016
    • Fixes in kernel and framework for camera due to changes in Ubuntu side.
    • Make Wi-Fi (pseudo-)on/off works. This fix Wi-Fi not work at startup.
    • Change the way to distribute Pulseaudio module.
    • Fix for touchscreen not working in new revision of Ubuntu.

    20 November 2015
    • Split device tarball into 2 versions.
    • Disable some service in Android container that crashes all the time.

    26 August 2015
    • Working video recording.

    4 July 2015:
    • Include timekeep, a small utility to keep track of time & date.
    • Remove oFono and gstreamer1.0-plugins-bad, as patches are accepted upstream.

    8 Jun 2015
    • Working GPS.
    • Update oFono.

    1 Jun 2015
    • Working mobile phone for both SIM slots.
    • Update gstreamer1.0-hybris, oFono and droid module of PulseAudio, for supporting new Ubuntu version (wily).

    6 May 2015
    • Finally working video playback. Although this is not so good as I cannot make hardware rendering works yet.
    • Include a modified version of gstreamer1.0-hybris package.
    • Update oFono and droid module of PulseAudio.

    17 April 2015
    • Update Pulseaudio.

    7 April 2015
    • Fix Wi-Fi
    • Temporary disable ubuntu-location-service. As GPS doesn't work yet, leaving that enable will make battery drain fast as it'll always try to load GPS library.

    4 April 2015
    • Fix mobile phone in the hackery way.

    17 March 2015:
    • Partially fix camera. It can take a still picture, but cannot record video.
    • Fix the problem about GPG signature properly. The hack is no longer needed.

    Bugs and workarounds
    Note that this list is based on rc-proposed channel and stable-based device tarball.
    • At boot, the device may freezes and restarts itself. This is due to the Wi-Fi system and I'm investigating this issue. This is due to fatal subsystem failure in the kernel. I've reduced possibility for Wi-FI subsystem (this is the most common failure), but this may still happen but at the lower rate.
    • If Wi-Fi list doesn't update during the day, turn Wi-Fi off and on.
    • Turning Wi-Fi on and off currently doesn't work. (Note that while you can turn Wi-Fi on-off in system settings, the Wi-Fi chip will be not turned off.)
    • If you're using rc-proposed channel, you may experience lockup when you're trying to wake the phone up from sleep. Currently, there's no fix yet, but if you can't live with it, use stable channel instead.
    • If you're using some mobile provider, your phone will not be able to detect SIM card. The fix is being developed. (If you're curious, it's about comunication between RILD and oFono and how your SIM card is programed.)
    Fixed or disappeared problem:
    • Camera will stop working after you bring camera app from suspended state. Workaround: bring app back to suspend state and bring back again. This can be done by swiping from left edge. This seems not be the case now.
    • Sometime, the device may seems freeze because an app is crash. This seems to be the problem in graphic subsystem. The system may becomes responsive again after seconds, but if it takes too long, just restart the phone. This seems not be the case now.
    • Sometime (at boot or sometime after), Wi-Fi stops working. This can be noticed by having Wi-Fi network list not updated. Fixed by pseudo-on/off fix.
    • Second One or both SIM slots may stop working at some boot. Simple rebooting should fix it. You may have to reboot multiple times. Seems to be disappear.
    • 3G slot selection doesn't work when there's only 1 SIM card. Workaround: use another SIM slot. (Fix released)
    • Data connection will work with only 1 of the slots (the one you most recently used before flashing Ubuntu touch. Don't worry, if you can't remember you van try them both). Workaround: put the SIM card with a data plan in another SIM slot. If you happened to have only 1 SIM and the slot that data works is different from the slot with 3G capability, I recommend you to temporary borrow another SIM card from your friend so that you can change 3G slot. change 2G slot in system settings. Fix accepted and released.

    Credits goes to
    • Quarx2k for the initial Cyanogenmod port.
    • Cyanogenmod for many components I used to simplify my build.
    • Every contributor of LG L90's device tree on Cyanogenmod.
    • Ubuntu for the porting guide.
    • awe, ogra, abeato, rsavelti, popey, anpok, and much more people on irc.freenode.net #ubuntu-touch
    • Sony for timekeep.
    • mariogrips for UBPorts.
    8
    Update 8 Jun 2015

    Update 8 Jun 2015: New version of device-specific tarball is available with working GPS. Download using the same link.
    7
    Update 16 July 2015

    Update 16 July 2015: Big changes is coming. This change will make device tarball upgrade easier and make space usage more efficient. You'll have to wipe your data. So, prepare to backup your personal data.
    6
    Update 1 Jun 2015

    Update 1 Jun 2015: New version of device-specific tarball is available with working 2nd SIM slot. Download using the same link.
    6
    Update 4 July 2015

    Update 4 July 2015: New version of device-specific tarball is available with correct time across reboots without network. Download using the same link. I also update credits, bugs, legal notices, and instruction. Don't forget to check it out.