Thursday, July 12, 2012

Adding Gapps to ICS Arnova 8b G3

NOTE: This is a blog for information purposes, if you brick your tablet by repeating this then on your own head be it!
Yesterday, I picked up an Arnova 8b G3 tablet for my parents. This was a bargain from Maplin! I  had to spend a little time adding the missing Google apps. How? I'm glad you asked!
First of all you need to get adb talking to the tablet; I download the latest android sdk from google and I'm using Linux here as my host machine (Ubuntu 12.04), so after unpacking the tgz file you have to execute tools\android (read the instructions for the sdk mostly page 2). Download the platform tools (you don't need anything more unless you're going to do some coding :D ).
Once the platform tools are down and installed you will need to edit your udev rules to get the tablet to be visible in ADB; here's the additional line to add to /etc/udev/rules.d/51-android.rules (I got the info for this from a google search) :
SUBSYSTEM=="usb", ATTR{idvendor}=="0e79", MODE="0666", GROUP=plugdev
Make sure you're in the plugdev group! If you're trying this with a different phone or table then lsusb will give you the info to use instead of 0x0e79 (my htc kaiser running cyanogen mod 7 is 0bb4 for instance, you should probably execute lsusb and check your tablet gives you this value too).
I did a reboot at this point to make sure udev updated. After the reboot running abd devices will  tell you if you're able to connect, my first mistake here was to not check that I'd got the usb cable plugged firmly in.
On the tablet go into the developer settings and enable usb debugging, then the following commands will help you prepare to install the missing gapps:
  • adb root - restarts adb on the device as root, if this fails you will need to do some more work.
  • abd remount - remounts /system in read/write mode (usually it's read only). ditto if this fails.
Now to install the apps! I downloaded the cyanogenmod9 Google apps from the cyanogenmod wiki. Once downloaded I unzipped them to a folder called gapps in the android sdk folder; execute the following commands in order installed all the gapps to the tablet:
  • export PATH=`pwd`/platform-tools:$PATH - set the path to include adb.
  • cd gapps
  • adb -p ./ sync system - pushes the current folder to the device using sync on the current folder.
Reboot the tablet, if all goes well this will take some time (you may get a pop-up during reboot about optimizing the applications, or about android updating).
Gmail will immediately update and you should be on your way. You can also turn off usb debuggnig.

Needless to say this took longer to work out than this short entry implies. There's a lot of duff info out there on the interwebs.

Friday, July 6, 2012

Haipad M7/Herotab C8 - Adding Serial ports internally.

This is a post for information only! If you trash your tablet by repeating this I am not responsible!
I killed my tablet with firmware for the Haipad M7+; basically the NAND flash was no longer capable of booting the Linux kernel from either NAND or from SD. There are techniques to get the NAND disabled temporarily, by shorting out pins on the flash chip, but I couldn't get them to work.
Time to add serial ports and work out how to fix it!

Initially I used single core wire, however, that put too much strain on the solder joints, this is cut down cable from a floppy disk drive connector. The trick here is to keep the bundle together, tin the wires carefully, and use a hot iron quickly to press them into contact with the cpu board pins.
I tinned the wires at 220degC and soldered to the board at 320degC. Test for shorts at each stage, not at the end!
Working with a magnifier and with small pins can be disorientating, so I put tape either side of where I was soldering. I use scotch tape as it doesn't leave a sticky residue.
You can see here that I used 6 wires for this, the red wire is for a 5V line, the other wire is for the GND for the serial ports. They're taped out of the way so that I don't melt them with the soldering iron.
When I cut the ribbon cable I left the outer 2 wires longer deliberately to reach the other parts of the circuit board. Pins 0 and 1 on the CPU/Ram/NAND board are GND.
The red line is taped out of the way until I can locate the 5V point I need to power the GPS that I'm thinking of installing. More tape to keep the ribbon cable against the side of the battery and away from the screw holes that secure the back of the case.
Break off a strip of 6 pins for the connector.5V,TX1,RX1,TX0,RX0,GND from left to right. Double sided tape to hold the connector out of the way and a fold of scotch tape to insulate until I work out whether to pierce the case and hot glue gun into a more permanent position.