Home > Android, Asus Transformer, Ubuntu > Dual Booting Android 3.2 and Ubuntu 11.04 on an Asus Transformer

Dual Booting Android 3.2 and Ubuntu 11.04 on an Asus Transformer

Ubuntu TransformerUPDATE: This post is now out of date. The process has been enhanced and made much, much easier. See new blog post here.

Since purchasing my Asus Transformer tablet, now complete with docking station, I’ve had a hankering to install Linux as a dual boot operating system. This was unlikely to be an easy task, as there weren’t really any builds for Nvidia’s arm based Tegra2 CPU. However, Nvidia has released nvflash and a base kernel build for Linux, so it was just a matter of time until someone worked out how to dual boot this with Android. It has been the people on the XDA Developers website that have really taken up the challenge on this.

I am currently writing this post on my Transformer while booted into Ubuntu 11.04. It does work, although there are a few things not yet entirely up and running.

Before going any further, I need to point out that the steps I will outline below will destroy EVERYTHING currently on your Transformer. It will reformat and repartition your storage. You will have all current data wiped, so back everything up. I should also point out that there is some risk of bricking your lovely, shiny tablet.

At the end of all these steps you will hopefully have a dual boot machine with Ubuntu 11.04, a rooted Android Honeycomb 3.2 running the Prime 1.7 ROM and Clockworkmod (CWM) Recovery installed.

Equipment you will need:

  • Another computer running Linux
  • An SDCard for external/removable storage in the Transformer
  • The Transformer USB charging cable.

The XD Developers forum thread dealing with this topic is already over 21 pages long. I did not follow the instructions exactly as they are printed in the first post, so I will be deep linking directly to various posts in an effort to make things clearer.

Let’s begin….

1. On your Linux machine, download and extract the 900MB+ ubuntu.img rootfs file found towards the bottom of this post.

2. On your Linux machine, download and extract the zip file from this post, containing a flash kit and installation script.

3. From the flash kit just downloaded, you will find a directory called “Bootloaders.” In here are two files – Android.zip and Ubuntu.zip. These two files need to be moved (but not extracted) to the top level directory of the external SDCard you will be putting in your Transformer. If you don’t have a card reader on your Linux machine, it may be easier to download this file a second time on your Transformer and move the files across to the “Removable” SDCard.

4. Copy or move the ubuntu.img from Step 1. into the same directory as the extracted flash kit files from Step 2.

5. Turn off your transformer. Connect the power cable. Connect the USB end of the power cable to your Linux machine.

6. Enter APX mode. To do this, hold down the Volume UP button and the Power button together, for around 10 seconds. The screen will remain black. It will appear that nothing has happened, but don’t worry this is as expected. If something does appear on the screen, you’re doing it wrong.

7. Open a terminal window on your Linux machine and navigate to the folder where the downloaded and extracted nvflash package (from Step 2.) is located. Run the download-ubuntu.sh script. You may need superuser permissions to do this. At this point, there should be lots of stuff happening in your terminal window – partitions being created, .img files being copied across. If you look at the screen of your Transformer, there should be some small white text in the top left corner about being in nvflash mode.

Hopefully everything will copy across correctly, and ostensibly Ubuntu is now installed. If you now power off your Transformer, unplug the USB power cable and power back on, it should boot into Ubuntu. However, there are a few more steps worth doing.

8. Power your tablet off again. Now, hold the Volume down button and the power button at the same time. The machine will start to boot, but there will be some small white text in the upper left corner of the screen. When this appears, let go of the two buttons and press the Volume up button. This will now take you into the CWM recovery mode.

9. Navigate through the menus here to install a zip from SDCard. Choose the Android.Zip file and install. Then reboot the Transformer. You will boot into Android.

This is how you dual boot at the moment. Every time you wish to switch operating systems, you will need to go into CWM recovery, and install the alternate zip file. Slightly painful, but the good news is that all data and settings are saved in the actual operating system. All you are really doing each time is installing a new boot sequence.

There are still a few other things worth doing. One of these is installing some additional firmware so that WiFi actually works in Ubuntu. To do this you will need to enter ADB mode.

10. Follow the tutorial on this page, including downloading the Android SDK, and additional Platform Tools file (read the documentation included in the SDK download).

11. Download and extract the flash kit found in this post.

12. Connect your Transformer to your Linux computer again using the USB power cable. Turn the transformer on, allowing it to boot into Ubuntu. Wait at the login prompt.

13. On your Linux computer, you should be in ADB mode. From the regular command prompt run the firmware injector script from the downloaded flash kit in Step 11. If all goes well, and your are successfully in ADB mode, there should be no errors reported by the script while copying the files across.

14. After now booting into Ubuntu and setting up the general parameters, WiFi will need to be configured using WPA Supplicant. Currently Network Manager doesn’t seem to work, so this is the only known way. Follow the instructions here with regards to how to do this. You may need to change eth0 references to wlan0. You could also try the guide here, but there are lot of places online to find WPA Supplicant help.

With luck and a following wind, everything should be working correctly. The experience is a little slow, as hardware acceleration is not yet working. I am thinking of trying Openbox as an alternative window manager to see if that improves things any. Also worth noting is that the docking station trackpad does not work, nor does sound, Bluetooth or HDMI out. The touchscreen works for mouse clicks and scrolling is achieved by moving the application scroll bars (not from anywhere on the screen, like in Android). I am sure these things will be rectified or improved in the coming months, just keep an eye on the XDA Developers thread about this for up to date details.

Good luck!

Special thanks goes to XDA Developers forum members lilstevie, Jhinta and rdnetto for creating the files, scripts and instructions for making this possible.

About these ads
  1. August 10, 2011 at 13:44

    Installing and booting into Openbox (not Gnome/Openbox option) has made a noticeable difference to the Ubuntu UI lag. There’s still some there, but it feels more like the responsiveness of an early version of Honeycomb with stock ROM now.

    I installed:

    openbox
    obconf
    obmenu

    When booting into Openbox, right click on the desktop to access the menu. Select obconf, which will allow you to customise theme etc. I’m using Dyne.

    Launch a terminal window and type obmenu. This will launch an app allowing you to edit the menu options. You can add sub-menus as well as simply new items to the top level menu.

    If I added Conky, I’d just about have an installation of Crunchbang!

    Anyway, Openbox does improve UI response.

  2. ultravox
    August 11, 2011 at 13:26

    Great guide. I’m struggling to inject the firmware, but I think I found the problem.

    I’m also considering moving to a light environment like lxde.

  3. jocke45
    August 12, 2011 at 20:44

    I still can’t get it to work, when i run the download-ubuntu.sh the terminal just doesn’t do anything :-( i type in my sudo password then nothing happens

  4. gramsuy
    August 27, 2011 at 17:31

    I can’t download the flash kit from the post
    http://forum.xda-developers.com/showpost.php?p=16097869&postcount=2
    can i get it from other place?

    thanks

  5. nor3x
    September 1, 2011 at 20:30

    How is the boot time and battery time?

  6. September 2, 2011 at 09:12

    I haven’t done any empirical tests, but boot time seems comparable to my old Asus eeePC. With regards to the battery, I think the Linux boot is only using one of the two available batteries as battery life seems to be about 6 to 7 hours. It’s hard to tell as the battery monitor does not yet work.

    The biggest problem is the slow response time of the OS. As stated in my earlier comment, using Openbox helps, but things are still a bit slow. I think this can only be improved by kernel enhancements for the ARM platform.

    Overall, Linux is usable on the Transformer, but I don’t use it as my everyday machine.

  7. Schnitzel
    September 6, 2011 at 10:48

    Shit I got an Error at step 7:
    “file not found: ubuntu.img”
    but its on my microSD card!
    And now i can neither get in the recovery mode nor reboot it, the only thing i can do is to go in the apx mode and retry it but i alwas get the same error!!!!!

    Please help me.

    Sorry for my bad english

    • September 6, 2011 at 11:05

      Did the file copy across correctly? Does the ubuntu.img file size match on both your Linux machine and the Transformer? Did you see any errors when running the download-ubuntu.sh script? It does need to be run with superuser permssions.

      Also, I think the ubuntu.img should be on the Transformers internal storage, not the MicroSD card. It’s just the boot Zips that need to be on the MicroSD card to start with.

  8. pozqe
    September 12, 2011 at 22:00

    Hi, first thanks for a great guide!

    I’m sort of new to linux, but figured I won’t let that stop me. When I try running the download-ubuntu.sh script I get the error message: “sudo: ./nvflash: command not found”. I have access as superuser and using “bash download-ubuntu.sh” as command in the correct directory. A little hint about how to get through this would be much appreciated!

    Thank you very much!

  9. September 14, 2011 at 06:25

    I went through steps 7, apparently no error, but my transformer booted into Android. It also says it is unable to mount /sdcard from the CWM recovery (so I can’ t load android.zip and ubuntu.zip) but it sees it fine if booted into regular Android mode.

    • September 19, 2011 at 12:05

      Fixed, mine was due to a bad ubuntu download. Now just waiting for touchpad to work. Next step, to get the wifi going…

  10. September 24, 2011 at 21:49

    i am not quite sure but after my linux machine send the file “system.img”, and ubuntu, there, the terminal turn off. The transformer said to me there the operation was succesfull.
    When i reboot my transformer, it boot directly in prime not in ubuntu.

    I am sure that “ubuntu.img has been sent

  11. Drew
    October 1, 2011 at 16:52

    Any chance you can update the guide with the new features (or how to from the last point?)

    I know there has been a lot more success getting the touchpad working properly along with a few other things over the past 2 months, but I don’t know how to go about it.

    Thanks when I first did this I found the guide extremely helpful!

    • October 7, 2011 at 19:58

      I haven’t spent much time with my Transformer for a while now, so I’m not sure of the latest status regarding updates to the dual boot scenario. I will try to find some time in the coming weeks to see what’s new and perhaps update this post. Thanks for your comment.

  12. Don Winchell
    October 7, 2011 at 12:56

    I got all of this working, thanks.
    a few things that it would take to actually replace my dell with the asus.
    -ability to plug in an hdmi (or dvi with converter cable) for a monditor
    - network manager running (not critical as the cli option works, but would be nice)
    - trackpad would also be nice but external usb mouse and keyboard give desktop environment
    -more HD space the current 2 gig (or is it 4G) is kind of slim.
    just wondering if any progress has been made by the folks at XD developers.
    Again, thanks for the very well structured and follow-able write up.

  13. citrusrain
    October 17, 2011 at 01:42

    …How do I do step 7? …I mean at all?

    I don’t know where I’m supposed to be looking.
    I assume that the sd is supposed to be in the tablet, and I’m accessing it from the linux computer… but… it’s not like it mounted or anything…

    • October 17, 2011 at 06:44

      Sorry, not sure why you’re having problems. Do you mean a problem with Step 3 – extracting the files to the SD card? Or Step 7 – running the nvflash script?

      If it’s Step 3, it may be easier to download the package on your Transformer, and copy the files to the SD card, especially if you don’t have a card reader on your Linux machine.

      If it’s Step 7, your Transformer must be in APX mode, as per Step 6, before running the nvflash script.

      I hope this helps.

      • citrusrain
        October 17, 2011 at 13:15

        I have the SD card ready.
        It’s a micro sd, and it’s in the micro slot.
        I don’t know what the path to it would be on the connected linux laptop. – not sure where connected media is located either.

        I beleive it was in APX mode, as the screen was black as if it was off, but I feel like I had to hold the button alot longer to give up, Assuming it really was in APX mode, I think I had to turn it off, and then on. Would it have mounted on a successful APX mode?

      • October 17, 2011 at 14:49

        You should either a) put the SD card directly into your Linux computer and copy the files across or b) Download the files using the Transformer, save the relevant ones onto the SD card.

  14. Don Winchell
    October 17, 2011 at 15:02

    I hope this helps, and I am no expert. when I did this I used the microSD card that is on the “tablet” itself, rather than on the keyboard. It all worked great. I did not have to deal with paths, it was just found. my suspicion is, and only a suspicion, that the card on the keyboard may not respond the same way, but I have not tried it.
    I am still waiting to hear if any progress has been made on:
    network manager, HDMI output, or more space for linux. thanks again to the folks who did all the work so far.

  15. citrusrain
    October 17, 2011 at 19:59

    phillc :You should either a) put the SD card directly into your Linux computer and copy the files across or b) Download the files using the Transformer, save the relevant ones onto the SD card.

    No… I am on step 7. I have the files on the sd card. I don’t know how to reach them from the terminal.

  16. Don Winchell
    October 17, 2011 at 20:22

    If you have the zip files and image on the card then you just need to reboot and you should be in ubuntu. You should not have to reach them. You are kind of done. (except if it does not boot into ubuntu) and then you do need to get your wifi working which are the next steps. The relevant files I have on my microSD card at this point are:
    Android.zip
    Ubuntu.zip
    ubuntu.img

    If those files are actually there and you have the CWM recovery (clockwork?) part done as you should have then you are good to boot into ubuntu.
    hope it works

    • October 17, 2011 at 22:11

      Don Winchell :
      If you have the zip files and image on the card then you just need to reboot and you should be in ubuntu. You should not have to reach them. You are kind of done. (except if it does not boot into ubuntu) and then you do need to get your wifi working which are the next steps. The relevant files I have on my microSD card at this point are:
      Android.zip
      Ubuntu.zip
      ubuntu.img
      If those files are actually there and you have the CWM recovery (clockwork?) part done as you should have then you are good to boot into ubuntu.
      hope it works

      I think he meant the actual path TO the SD card to navigate to.

      • Don Winchell
        October 18, 2011 at 12:32

        sorry if I wasn’t clear. My experience was that when I got to the point I think citrusrain was at, I did not have to “get to the card” I had a menu which I think was provided by clockwork recovery, and it had a menu item something like “boot from SD card” (may not be the exact text). so I guess if he was not at that stage then I misunderstood or he did something incorrect.

        In any case I am not an expert at this. Am just trying to help clarify where I think I can.

        I followed the instructions, it took a while, but I finally got a somewhat functioning ubuntu transformer. However at this point for my purposes, it is still basically a curiosity as the end result I was hoping for was to basically replace my dell laptop with the transformer. primarily using an external keyboard and monitor for “real work” but having portability for the airport the client site, the coffee shop and the couch. So I am sill longing for :
        – functioning HDMI or equivalent to use a large monitor
        – functioning network manager so I can pick up wifi at different locations or tether to phone
        (-: — USB keyboard and mouse works great right now in ubuntu.

        And again, thanks to all who have done the work to get it this far, I am grateful for the advantages I can get from other people’s work. Unfortunately I don’t have much to contribute back at this (technical) level, but try to when I can. BTW, I also tried to contribute on this site but somehow the link was broken, or did not work, I got lost, or whatever,but could not do it (this was about two weeks ago)

        Citrusrain, did you get it working ?

        all the best

  17. Pedro
    January 6, 2012 at 18:07

    Please update this or send me a e-mail if you do this and the prime because I am interested in doing this also.

  1. August 11, 2011 at 18:20
  2. September 1, 2011 at 08:33
  3. October 20, 2011 at 17:38
  4. November 24, 2011 at 13:59
  5. December 17, 2011 at 20:33
  6. January 16, 2012 at 05:57

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.

%d bloggers like this: