Friday, July 25, 2014

Ubuntu on the Asus T100

There are some devices and software that is not fully working, however, some are working quite well and the system is reaching a usable state.

You may contact me Contact me here

First I would like to begin stating that this article is based on this awesome guys instructions:

You should not alter your device if you are unsure of what you are doing. This is at your own risk.

What's working out of the box:
Graphics,  Touchscreen,  SD-Card, Power button, Touchpad.

What needs patching:
Wifi (poorly), Sound (with patches), battery monitoring, shutdown, blue-tooth

What's not working:
Camera, Suspend, hibernation, backlight, ambient light sensor, volume keys, screen rotation.

That said let's dive directly into installing Ubuntu.

1.) Make sure you are using the latest BIOS, which should be version 207.

2.) If you are in windows you can create an Ubuntu startup disk using Rufus
Rufus can be downloaded from here:
Or if you are in Ubuntu you can use the Startup Disk Utility which can be found in the Dash.

3.) You need to grab a few files to begin:
Ubuntu daily build (utopic-desktop-amd64.iso) make sure you grab the 64 bit version. -

UEFI file (select the button that says RAW on the right beside history -

4.) Okay we now have our basics to start. Insert your USB thumb drive (make sure it is at least a few gigs)

5.) Open up Rufus, most settings should be fine as is. Make sure your USB is selected and there is a CD icon beside the word ISO. Select that and navigate to the Ubuntu ISO you downloaded and select it. Press START. There may be a window that pops up asking you to download a file for compatibility. Just select yes and download it.

6.) Your USB is ready, but not bootable yet. Navigate within the USB drive files to this directory. USB/EFI/BOOT Here you will paste the UEFI file you downloaded earlier bootia32.efi

7.) Go back to the main area of the USB and creat a folder called Asust100. Inside of this folder paste the rest of the files we downloaded earlier. Leave the USB drive plugged in.

8.) Reboot your computer.  As soon as the computer begins to turn off to reboot begin hitting F2 on the keyboard until you enter the UEFI/BIOS. From here navigate and find the part that says SECURE BOOT and choose the option to disable it.

9.) From within the UEFI/BIOS go to the boot options and on the first device selected press enter and select your USB drive. Save and exit.

10.) The tablet will reboot showing GRUB. Hold down CONTROL + ALT + DELETE to reboot into the native resolution.

11.) Press the letter “E” which will let you edit boot options. Move the cursor down and delete “splash” and add this in the place

video=VGA-1:1368x768e reboot=pci,force

Press F10

You should now make it to the desktop.

12.) Press the icon to install Ubuntu.


14.) Do no just select install, go to the last option that states custom install or do something else.
Select “YES” to unmount any drives.  In the next area you need to shrink the windows partition.


I suggest a little less than half. Take that free space and create a small section around a gig for SWAP and the rest for the file system. I suggest only having the file system as root / and not creating other sections.

Write down the the partition numbers because you will need this and begin the install as usual.
LEAVE the USB in and reboot when done.

15.) Once again you are faced with GRUB.

Press “C” and you now have a terminal like interface with a cursor.
Type and replace the “?” with the applicable numbering “linux (hd?,gpt?)/boot/”

Now type “vmlin” and press TAB it should put the remainder of the name there.
Now type this directly after replacing the “?” with the applicable numbering which should be your partition “root=/dev/mmcblk0p?”

and now type this after that “video=VGA-1:1368x768e reboot=pci,force”

You should have something like this

linux (hd2,gpt5)/boot/vmlinuz-3.13-xxxx root=/dev/mmcblk0p5 video=VGA-1:1368x768e reboot=pci,force


16.) Now on the fresh line type and replace the “?” with the applicable numbering

“initrd (hd?,gpt?)/boot/

type “vm” and hit TAB which completes the name

you should have something like this

initrd (hd2,gpt5)/boot/initrdXXXXX


17.) Type “boot” and press ENTER. If everything goes correctly you should boot to the desktop.

18.) Wifi is not working yet, but it will in a few steps. …....remember those files we downloaded earlier? Open a TERMINAL and type “sudo nautilus” and enter your password.

Nautilus will open with root capabilities. Navigate to the USB drive and open the folder where you saved the files from earlier. We are going to copy some files... In nautilus, from the file menu open an extra tab so it will have root capabilities too.

Navigate to /lib/firmware/brcm/ and paste the “brcmfmac43241b4-sdio.bin” file in your downloaded files that are in the other tab.

Navigate to /lib/firmware/brcm and paste the “brcm/brcmfmac43241b4-sdio.txt” file in your downloaded files that are in the other tab.

Navigate to /lib/firmware/intel and then go to the “linux-firmware-master-intel.tar.gz” file in the other tab and extract the files and copy them to this directory.

Navigate to /var/lib/alsa/ and then go to the other tab and find the file that is called “t100_B.state” rename this file to asound.state and then copy it to the folder.

19.) Close Nautilus and wait for the terminal to return to the prompt. Enter the following

“sudo modprobe -r brcmfmac” and then enter “sudo modprobe brcmfmac”

With luck your wifi device should spring to life and you can connect to the Internet. Wifi however is still very poor.
If your wifi is working then you can continue, if not you may need to use a USB wifi adapter which you can now just simply unplug the usb thumb drive while your computer is on and connect to the internet to do the following steps.

20.) Install GRUB to make booting work. Open a terminal if you do not still have it open and enter the following

“sudo apt-get update && sudo apt-get install git bison libopts25 libselinux1-dev autogen m4 autoconf help2man libopts25-dev flex libfont-freetype-perl automake autotools-dev libfreetype6-dev texinfo”

and install when it prompts you to.

Then get the Grub source:
git clone git://

Then enter

cd grub
./configure --with-platform=efi --target=i386 --program-prefix=""

When it quits and stops with the word “make” displayed just hit enter again and wait for it to finish
and then enter

cd grub-core
sudo ../grub-install -d . --efi-directory /boot/efi/ --target=i386

and then

cd /boot/efi/EFI
sudo cp grub/grubia32.efi ubuntu/grubx64.efi

Now you have to edit grub here

Open /etc/default grub in a text editor:
sudo nano /etc/default/grub

And edit the GRUB_CMDLINE_LINUX_DEFAULT exactly as we did before. When done, hit ctrl-o to

It should look something like this

save then ctrl-x to exit. Then, to update Grub:
sudo update-grub

21.) REBOOT without the usb drive in and you should be able
  to boot into Ubuntu.

22.) Run updates and reboot and if it does not already your sound should work. Do not turn the sound up too loud.

23.) To start blue-tooth open a terminal and type "sudo nano /etc/rc.local"

add "hciattach /dev/ttyS4 bcm2035 921600 flow" before "Exit 0" like this

then ctrl+o
then enter
and ctrl+x

reboot and it should work.


~ The Ubuntu Web Browswer has seen a major upgrade today July 31st, 2014.  Now supports flash apparently and other UI upgrades.  Great if using the T100 in Tablet mode.


  1. Anyone reading yet? Suggestions?

  2. Hey, This is Jason.

    This looks good, but what would you say about putting it up on the Asus Transformer forums? It's good to have a guide, but things seem to be changing and tweaking as we go so it might be good to keep it in a place that's better for conversations. The comment thread on that other blog is so huge, and I'd be worried about another long string of comments here.

    What do you think?