Monday, July 9, 2012

Loading Debian on a WM8650 netbook

SOFTWARE IS TO HARDWARE AS _________ IS TO CAKES
This is the netbook I purchased - at 70 dollars it was a pretty great deal if you like to hack around and put Linux on things.

I was inspired by a post on Hack A Day about putting ArchLinux on one of these netbooks - I like Debian more, so I figured I would start with the rootfs and eventually try to get a custom kernel going. This post will walk through the rootfs setup side of this process.


DEBIAN, MY DEBIAN
Using the instructions from here
I got an SDCARD with Debian to boot on my system. It took a very long time to boot, but it did come up eventually. However, there were a few issues on my hardware.


THE SADDEST OF ALL KEYS
First major problem - keyboard wasn't working correctly. From a post deep in this webpage...

I finally was successful to get the keyboard problem solved.

In a first desperate attempt I changed the /etc/X11/xorg.conf file

Section "InputDevice"
   Identifier "keyboard"
   Driver "evdev"
   Option "Device" "/dev/input/event1"
#           Option "Device" "/dev/input/event2"
EndSection

Then the keyboard worked BUT NOT the touchpad any more.
So I changed :

Section "InputDevice"
   Identifier "utk_touch"
   Driver "evdev"
   Option "Device" "/dev/input/event2"
#Option "Device" "/dev/input/event3"
EndSection


This fix solved the keyboard problem for me.


WHY FIGHT
To fix the wifi, go to the start menu, under internet, then do WIFI ON.
The output of lsusb should mention Ralink Technology Corp. RT5370

cd /lib/modules/2.6.32.9-default
modprobe -r rt3070sta
rm rt3070sta.ko

cp rt3070sta_rt5370.ko rt3070sta.ko

Next, open into /usr/local/sbin/wifi-on (nano /usr/local/sbin/wifi-on), and commented out the line that starts the network manager. I also added a line for ifconfig ra0 up.

Edit /usr/local/sbin/wifi-disconnect, and remove the line that turned off network-manger.

Next restart the netbook. Now when you do WIFI ON as above, and then ifconfig, you should see a device labeled ra0. This is the wifi device.
Connecting to your network will require the use of wpa_supplicant

First, generate a .conf file for the network you want to connect to by doing
wpa_passphrase <ssid> [passphrase] > {configfile}. In my case this was something like
wpa_passphrase "MyWifiNetwork" "coolcoolschool" > home.conf

Next, associate with the wifi network by doing
wpa_supplicant -Dwext -ira0 -chome.conf -B
Finally, to get an ipaddress, do
dhclient ra0

You can also scan the surrounding area for networks to join by doing iwlist ra0 scanning


ODD FUTURE WORK

Sunday, July 8, 2012

Loading Ubuntu on the Asus Transformer

TRANSFORMER, LINUX IN DISGUISE
Equipment needed
ASUS Transform TF101 running Android 4.0.3
USB tether cable for Transformer
MiniSD card (or adapter for a microSD+microSD card)

Plug the cable from your Transformer to the host PC. I kept this cable connected throughout the entire process.


ROOTING FOR THE GOOD GUYS
To install Ubuntu, I first needed root access to the Android system. By following the instructions here
http://hdfpga.blogspot.com/2012/03/one-click-root-for-asus-transformer.html , I was able to root my device. I had to download the flash kit from here http://www.bergfiles.com/i/bf4baf218ch32i0 instead of the link provided in the instructions. Basically just select option 1 and the program will take care of itself.


TANGO DOWN, RECOVERY IN PROCESS
Next I needed to install a program called ClockworkMod Recovery. Using the instructions here http://www.androidauthority.com/eee-pad-transformer-clockworkmod-recovery-installer-61334/ I installed CWM by downloading the RecoveryInstaller.apk file, copying it to directory where I unzipped the primetime rootkit from the previous step, then doing ./adb install RecoveryInstaller.apk

Make sure to have an SDCARD that is partitioned as ext2 - I had some trouble originally with a FAT32 formatted card.

Create the kernelblob using the instructions from the first post here
Get ubuntu.img from this link
I used the OLIFE zImage (2636-zImage), so YMMV with other kernels.
Now copy both the kernelblob and ubuntu.img onto your SDCARD, insert the SDCARD into your Transformer, and boot the Transformer into CWM recovery mode.
 
REMINDER - From the Android Authority link above -
To manually boot into ClockworkMod Recovery, power off your Asus Eee Pad Transformer. Press and hold both Volume Down and Power buttons. When you see words scrolling at the top left of the tablet, immediately push Volume Up within 5 seconds.


SYSTEM ENGAGE
Once the transformer is in recovery mode, get an adb shell up by doing
./adb shell from the PC.

This shell should have a # sign - which indicates you have root privileges. Run the following commands from the prompt.
mount /dev/block/sda1 /sdcard
cd /sdcard
dd if=kernelblob of=/dev/block/mmcblk0p4
dd if=ubuntu.img of=/dev/block/mmcblk0p7 

The last dd command will take some time, but once it is done, you can select Reboot System from the CWM prompt on your Transformer. The first time you boot, it may take a long time (something about on-line partition shuffling?) but eventually you will see a standard Ubuntu first run setup prompt.

Currently the only issues I have found are - no sound and no flash. There are fixes for these on the xda-developer forums but I have not had time to do them yet.

WALKING THE WIRE... BACKWARDS
There may come a time when you wish to go "back to stock". Fear not! Simply follow the link below.

http://www.transformerforums.com/forum/asus-transformer-tf101-development/31919-frederuco-s-guide-flash-tf101-back-stock.html

Note: I had to format my micro SDCARD to FAT32 for this to work... very strange since I had the opposite problem before.

fin