Tiny210 SDK CAP7 problems

TheFwGuy
Few days ago I received a beautiful Tiny210 SDK CAP7 board with Android
4.0.3 already flashed, for a project I'm working on (thread Android
questions).
With the help of Reggie, Charlie and a LOT of searching the net I was
finally able to re-flah the board, since the original version of Android
missed the Google play and had other problems (debug mode not working).

I spent a lot of time fighting with the SD-flasher and preparing myriad of
SD cards, from 2 Gb to 8 Gb.
Finally I decided to test an "old" image instead the latest one (March
2013), at least to see if the SD card procedure was correct.
And it was !

I was finally able to re-flash the Tiny210.
The re-flashed version probably is still not OK, i.e. is not solving my
original problems, but I have a new one now !

During the re-flashing process, on the LCD were present messages but with
many "blurred" characters, probably because originally in Chinese.
So I don't know if during the flashing procedure I do have to do choices.
The end of the procedure is indicated by two beep and a kind of menu' in
yellow with apparently two choices (1 and 2), but no button seems working
so I don't know if I have to select something.

Anyway, after the flashing is done, I set back the S2 switch on NAND and
restart the board.
It works, meaning that "something" was loaded, and a calibration utility is
called.

The utility says :
FriendlyARM Enhanced calibration utility
Touch crosshair to calibrate
TouchDevice : /dev/touchscreen-1wire

And a crosshair symbol appears in the top left corner.
However NOTHING happens. I can touch the crosshair symbol or all around,
nothing.
I suspect the utility expects a resistive touchscreen, I have the
capacitive one.
So at the moment I have a bricked unit !

Any suggestion about how to do the calibration and continue ?
And anybody tried to flash a Tiny210 SDK CAP7 with a March 2013 release of
the Android 4.0.3 ?

Many thanks !!
  STeve

Reggie
Hi Steve, ok, well, the cap touch screen does not need to use the
calibration like the resistive does.  All you need to do is put skipcali=y
(it might be y or yes) in the commandline in the FriendlyARM.ini file when
you burn the kernel to nand.

btw. if you only want to burn the kernel and the commandline, you should be
able to use # to comment out the other lines in the particular section you
are burning to nand (android/linux/wince).

There was an armworks wiki but it's down whilst they sort out a new home
for it, otherwise I'd point you directly to those tutorials.

In theory, you should be able to use the old kernel and superboot with an
updated rootfs image.

Could you give us some more information about the tiny210 that you have? 
There are a few versions of '210' boards, at least 3 different ones for the
mini210S and at least 2 for the tiny210, can you identify the nand chip on
the board?  it will be a K9GA, K9GB or something else but get the full
number please.

TheFwGuy
Hi Reggie

Thanks !
I really hope to see the Wiki soon so to don't have to bother you.
I did try your suggestion but is not working.
Here the FrindlyARM.ini I'm using :

#This line cannot be removed. by FriendlyARM(www.arm9.net)

CheckOneButton=No
Action = Install
OS =Android

LCD-Mode = No
LCD-Type = S70

LowFormat = No
VerifyNandWrite = No
CheckCRC32=No

skipcali = y

StatusType = Beeper | LED

################### Android 4.0.3 ####################
Android-BootLoader = Superboot210.bin
Android-Kernel = Android/zImage
Android-CommandLine = root=/dev/mtdblock4 console=ttySAC0,115200
init=/linuxrc androidboot.console=ttySAC0
Android-RootFs-InstallImage = Android/rootfs_android.img

################### Android 2.3.1 ####################
#Android-BootLoader = Superboot210.bin
#Android-Kernel = Android2.3.1/zImage
#Android-CommandLine = root=/dev/mtdblock4 console=ttySAC0,115200
init=/linuxrc androidboot.console=s3c2410_serial0
#Android-RootFs-InstallImage = Android2.3.1/rootfs_android.img

################### Linux ####################
Linux-BootLoader = Superboot210.bin
Linux-Kernel = Linux/zImage
Linux-CommandLine = root=/dev/mtdblock4 console=ttySAC0,115200
init=/linuxrc
Linux-RootFs-InstallImage = Linux/rootfs_qtopia_qt4.img

################### Windows CE6.0 ####################
WindowsCE6-Bootloader = Superboot210.bin
WindowsCE6-BootLogo = WindowsCE6\bootlogo.bmp
WindowsCE6-InstallImage = WindowsCE6\NK.bin
WindowsCE6-RunImage = WindowsCE6\NK.bin


I tried different options :
- Skipcali = Yes
- skipcali = y
- skipcali = yes

I think the first one (Skipcali = Yes) should have the correct syntax since
all the other commands are structured like that, but anyway nothing seems
stopping the calibration utility.

The Tiny210 NAND is a K9K8G08U0B. The PCB is a Version 1.2.
In the September 2012 image I'm using, I noticed there is another
FriendlyARM.ini file, with some chinese characters in the name.
I did update also that one with the skipcali option, but nothing.

Thanks
   Steve

Reggie
You missed a vital bit, the skipcali=y should be in the commandline setting
for the image type you are loading:

Android-CommandLine = root=/dev/mtdblock4 console=ttySAC0,115200
init=/linuxrc androidboot.console=ttySAC0 skipcali=y ctp=2


That is all 1 line and that should do it.  I forgot to mention that you
need the ctp=2 bit as well, my bad.

The K9K8G08U0B nand is a 1GB SLC nand chip, you should be able to use the
Android/rootfs_android.img from the latest images dvd, the kernel itself
should also be slc compatible, the only thing that I can think is wrong is
that you need to use the superboot210.bin file from the same images dvd,
you must also make sure that superboot210.bin file is in the images
directory on the sd card too.

The latest images dvd is by far and away the best version of android ICS
that friendlyarm have made, some months after I wrote my tutorials, they
put google play store into the images for us, they also added the 'x86'
ethernet patch for android, which means we get to use all of the google
apps via ethernet as well as wifi now too.

TheFwGuy
Hi Reggie

ooops, I misunderstood where the skipcal should be placed :)
Anyway, almost there :(
It worked but something is still wrong.
Now Android is loaded, the splash screen appears and after a while the
usual Android system is loaded.
However the touchscreen part is not working.
I tried different images, the old ones, the new one, I tried to change the
ctp value to 1 instead 2 but still no touch capability.
Some PCB buttons are working, I can recall some menus but since the touch
screen is not working I can not select anything.
On a older thread I found somebody had to set cpt to 3 (it make sense) 

ctp=0 ==> N/A
ctp=1 ==> 7" touch with GT80X touch controller
ctp=2 ==> 4.3" touch with FT5306 touch controller
ctp=3 ==> 7" touch with FT5406 touch controller

but if I do that, the boot process is stopped just after some Chinese
writing appears on the screen and the NAND is not reflashed.
On my FriendlyARM.ini file it is selected the display type S70, it should
be maybe something different ?  Sure is not a 4.3 LCD display so ctp=2
should be wrong anyway.  The ctp=1 is not working as well but at least is
not make the boot freezing.
How I can determine what LCD is mounted ? There are no labels and the
display is in a black box.

I "think" the latest images DVD is working but I have to use the
Superbot210.bin of the old one.
The Superboot210.bin of the latest image (March 2013) is not working at
all.

Thanks
   STeve

TheFwGuy
Ok, it SEEMS I was finally able to re-flash the board successfully !!!
Here what I did (hopefully can help somebody else :) )

- I took a 2Gb SD card (probably it will work with other sizes)
- I formatted low level in fat32
- on the Windows machine I copied TWO images directories, one from a DVD on
September 2102 and one from the March 2013 (should be latest one)
- with the SD-flasher utility I fuse the Superboot210.bin from the
September 2012 image
- then I copied in the SD card the September 2012 image directory
- after the copy, in the SD card, I erased the Android and Linux
directories under image
- I copied the March 2013 Android and Linux directories
- I edited the FriendlyARM.ini file and I set up the Android command line
as :
Android-CommandLine = root=/dev/mtdblock4 console=ttySAC0,115200
init=/linuxrc androidboot.console=ttySAC0 skipcali=y ctp=3

(note the ctp=3 !)

I put the SD card in the board and rebooted with the S2  on SD card.
The installation was successful.
Then, after setting the S2 on NAND, I rebooted the board.
Android started, however the touchscreen was still not working correctly,
but it was working.
Only a small portion of the left side was doing something when touched.

I then connected a wireless USB keyboard/mouse to the USB port, it was
recognized and I was able to select menu' in that way.
After few minutes that I was going around with the keyboard, suddenly the
screen started to work normally !
So it seems that after a while an internal calibration utility is
activated.
AFter that I was able to remove the USB keyboard and further boot retained
the touchscreen capability.

Now I have the latest Android 4.0.3 up with Google Play capability.
Soon I'll start to see if now also Adb can recognize the board.

Thanks Reggie for the help !!!

C'ya
  Steve

Reggie
I'll need to double check, can't look at mine right now but will do some
time today, I've got a mini210S here with the slc nand, afaik, the nand
driver source code that's actually in the kernel should be aware of the SLC
nand, in fact, they all should be, so that all sounds sane but the
superboot210.bin from the latest images dvd should work as well because of
the newer mini210S boards having the 1GB slc nand on them.

If it's supposed to work and it's not then we probably need to let
friendlyarm know and they can fix it.

Reggie
OK, here's the commandline string that my board uses:

root=/dev/mtdblock4 rootfstype=yaffs2 console=ttySAC0,115200 init=/linuxrc
androidboot.console=ttySAC0 skipcali=yes ctp=2 lcd=S70


skipcali=yes and ctp=2 are definitely what I have used.  This is a 4GB mlc
nand board though, I'll double check on a 1GB slc board and get back to
you.

Seyul
I just opened brand new box for Tiny210v2 SDK CAP7 board with pre-installed
Android and tried to boot but nothing showing on the LCD screen except some
lines on blank screen. 
Before I try anything, I wanted to check if this supposedly pre-installed
board works or not but nothing happens. I fused superboot SD card to boot
from SD card to see if that makes any difference but no luck.
No blinking on LED and blank LCD with rainbow colored lines.
Anyone can explain if this Board is bad or if I am totally missing
something.
I am using Window 7 notebook with USB to RS232 with Hyperterminal.
would appreciate your help.
Seyul

TheFwGuy
When I received mine I just power up it and Android 4.0.3 was already
installed and working.
Actually my board arrived "ready to use", i.e. nothing to put together, so
I suspect it was tested before the shipment.

So yes, it is supposed to come "ready to use". It is possible maybe a
connector moved during the shipment.
Did you check all the connectors ? You have probably to take apart the
display from the board in order to check the cables.
If still nothing happens, you can try to re-flash it but is tricky.

If you have the wrong version of the bootloader (read previouse messages in
this thread) nothing will happen during the re-flash.

If still nothing, maybe the board is bad.
Oh ... mine is the Tiny210 not the v2 version.

C'ya
  STeve