Android Tablets Forum banner
1 - 18 of 18 Posts

·
Registered
Joined
·
144 Posts
Objective - 01 : Boot OS from sdcard.


"Yeah ... let's get our hands dirty and see how far we can go!"
Disclaimer: The stuffs posted here are highly dangerous. If you don't know what you're doing or are feeling uneasy at a certain point: Please don't do it! The minor risk is to brick your device but at a greater extent you may end up wiping all of your data from your PC. You've been warned and I therefor take no responsibility, if you decide to proceed.
Why do we want that?

+ no flashing required to test new firmware builds
+ quick testing and modding enabled (would be easy as like mod & reboot)
+ lower the risk to brick the device

This should be easily done like it is shown here [blog.kmckk].
Maybe it is necessary to tweak the source a little bit to make it work, but unfortunately we don't have it. For this purpose I think we can try and fallback to the avaiable "EMMA Mobile 1 SDK" from Renesas directly. We only need the boot files build process. The files needed to do the work, look pretty the same to me (see [blog.kmckk] and SDK doc).

EDIT-110820 : The BUG with the not working touch screen is sorted out now after another hexedit session.


File
: View attachment uboot4.bin-PATCHED.zip uboot4[/b].bin-PATCHED.zip]

Howto;

Code:
<br />
e350ddbfecb755c7d17034a18efc907aede2e772  uboot4.bin-PATCHED<br />
<br />
$ adb shell dd  if=uboot4.bin-PATCHED of=/dev/block/mmcblk0p1<br />
  1. Power off
  2. Start system on sdcard (->create_bootsd.sh): Vol-minus & Power button
  3. Start system as normal aka internal eMMC: Power button as normal.

EDIT-110819 : completed

Had some good talk with dnkn about how troublesome it is, to test Gingerbread builts and not having a working tablet for the daily usage. He succeeded to patch the internal eMMC uboot loader. I tried it before, but never got it working. With his result in mind, now I know for sure, it should be feasible. Strangely enough it still doesn't compile on my tablet though. Frustrated by that I tried my luck with the sd card boot loader (recovery mode) again. And here you go ...

Requirement:
( a ) Read the disclaimer above && new gen tablet (V3).
( b ) At least a 2GB sd card or you have to modify the script yourself.
Tested: on Ubuntu 11.04 with v0712 original firmware from haipad

Howto:
1. Extract the zip file into the folder of the firmware archive (needed there is android-fs4.tar.gz and uImage4).
2. execute and follow instruction
Code:
<br />
$ cd bootsd<br />
$ sudo bash create_bootsd.sh<br />
BUG:
The touchscreen doesn't function. You have to plugin a USB mouse. It is good enough to test new android builts or firmware releases.

File:
View attachment bootsd.zip
Code:
<br />
ade405fed5e7a6a081217f74a7e9a29f6f163321  create_bootsd.sh<br />
586f1af05ec76bb3d45d1b7ebb2715358c64edd7  init.rc<br />
ab3ac063b1334990bb33093918c7ae77429075b9  sdboot.bin<br />
bd28872fd2ef0400ca1eb0c1c9d8ab8c7d802fb6  uboot-sd.bin-ORIGINAL<br />
c4889893dce21faac669f1455209bb52d027cc68  uboot-sd.bin-PATCHED<br />
4bfa18e55f2670844801d6b35d6ce14c796b9010  vold.conf<br />
e3b9782d2b6ea4fc1f8cd16f9d1c89f5355065f4  vold.fstab<br />
EDIT-110714: Not manageable. Does not boot system from card!

(a) First try: splitting Koba´s script in two separate steps. Or just follow the instructions here [blog.kmckk] to do it manually.

  1. format_sd.sh /dev/sd? : partitioning the sdcard(sd?)
  2. write2sd.sh /dev/sd? : delete contents on sdcard(sd?) and copy the nesessary files to it.
Copy this files from one of the firmware releases
Code:
<br />
	uboot-sd.bin 		# the boot code<br />
	sdboot.bin   		# the boot code<br />
	uImage   			# the kernel<br />
	android-fs.tar.gz	# the android file system<br />
to the dir "thefiles" or set the variable in the script accordingly before executing the write2sd.sh script.

EDIT-110714:
You have to also add "cramfs" and "cramfs.tar.gz" to get the device booting. But there it ends. With the old SDK at hand we can take a look at the source to understand the process, but to change the default behaviour (flashing/updating the rom) to boot the kenel (uImage) from the card and actually using the unpacked android file system (android-fs.tar.gz) on there, you have to change the uboot source code of the production tablet, which is still not freely available. Because the bootloader (uboot-sd.bin, sdboot.bin) is tightly coupled with the production board with its specific hardware components. But here are some interesting things I found out, which may or may not help for further investigations:
  • button"-" & power-button tells the system to boot up the boot sequence stored on the internal iNAND/eMMC to the update menu, enabling the user to chose to update the system from the sdcard;
  • button"+" & power-button loads the bootloader directly from the sdcard for an update;
  • In the file "cramfs/etc/init.d/rcS" we can find the hook, which calls the "install.sh" update script found in every firmware releases. Maybe it is exactly this part of the process, where we can hook in and do some changes to boot the whole system from the sdcard? I'll have to find good resources about the Android boot process to understand and see, if this is an option to dig deeper. ...
(a) Second try: any suggestions???

Waiting patiently for my device arriving to test this out ...
EDIT-110712: Received a V3 yesterday. Quite surprised about the build quality. Let the tinkering begin! ...
 

Attachments

·
Registered
Joined
·
153 Posts
Objective - 01 : Boot OS from sdcard.


"Yeah ... let's get our hands dirty and see how far we can go!"

Why do we want that?

+ no flashing required to test new firmware builds
+ quick testing and modding enabled (would be easy as like mod & reboot)
+ lower the risk to brick the device

This should be easyly done like it is shown here [blog.kmckk].
Maybe it is necessary to tweak the source a little bit to make it work, but unfortunately we don't have it. For this purpose I think we can try and fallback to the avaible "EMMA Mobile 1 SDK" from Renesas directly. We only need the boot files build process. The files needed to do the work, look pretty the same to me (see [blog.kmckk] and SDK doc).

Waiting patiently for my device arriving to test this out ...
When is your device arriving?

It should be interesting if it works out.
 

·
Registered
Joined
·
35 Posts
Fourth year CompSci student here, you can count me in for dev/testing as needed. I haven't done any low level android stuff but enough apps and some Linux kernel stuff so it shouldn't be too hard for me to pick this up.
 

·
Registered
Joined
·
144 Posts
Discussion Starter · #7 ·
That would be great! I presume you have a renesas tablet?
I too only have experience in highlevel programming. Low level kernel hacking is also a whole new land for me to discover.
I've gathered some Resource on the topic. You may take a look there first. Hope we can share some insights.
 

·
Registered
Joined
·
35 Posts
That would be great! I presume you have a renesas tablet?
I too only have experience in highlevel programming. Low level kernel hacking is also a whole new land for me to discover.
I've gathered some Resource on the topic. You may take a look there first. Hope we can share some insights.
Yea I think I have the 3rd version(can never get the thread at 99pad to load through translate); no dock connector, came with 0616 shipped around 2-3 weeks ago.

I'll have a good look through the resources when I get time and see what I can dig up.
 

·
Registered
Joined
·
2,176 Posts
If you don't mind my asking? Where did you find this tablet for $150 total price? That is like significantly below COST
lol for me. Pretty sweet deal!

-Roman
 

·
Registered
Joined
·
2,176 Posts
No, not yet. I was about to purchase the ZT-280/E98 (Amlogic Cortex A9) because of it good specs and price. And Zenithink also promised to release the source to the community. That would have meant a painless entry point into the world of Android development and modding. But they have serious hardware quality problems at the release of the device. Which kind of turned me down. Coincidently there is this really good Renesas offer right now (150$ all-inc.), so I pulled the trigger in favour of a dual-core, bluetooth and capacitive display while loosing the hires screen and 8inch form factor. We'll, you can't have it all for this price limit.


Maybe Roger is also fed up and joins the Renesas dual train. Didn't he intends to do so before?
It would be a big win for all of us because of his vast experience in this field and would have speed-up the whole development a lot!
I had also, briefly, looked into getting a zt-280 based device for my next product line, but it is as you say, riddled with issues. The potential is there but they are having all kinds of problems with the early models. Big issue is apparently horrid battery life. It would be great if Roger Calver came over this way, he had contacted me early on about the RENA3 but was in the middle of the doing development for the Samsung S5PV210 herotab C8/9? at the time. Anyhow, I think the NEC platform is the stronger of the two right now, despite the uderpowered GPU. There isn't a single other tablet out there (in this price range...) that has the combination of performance vs. power consumption (i.e. battery life) of this platform. I have been toying with an RK2918 device and it is really good at things like hi-def video playback. But I still like my RENA3 better because the UI is overall much more responsive/smooth, web browsing is WAY faster, battery life is like double, and the boot-up time is significantly shorter. Just a more usable device, if lacking in some functionality (like better video playback...) which can hopefully be fixed through better firmware. Hardware shortcomings (namely the low-def screen and slow GPU) aren't the end of the world and things like the screen can be improved (aka Visture V1 and Magic Tab).

Sorry for the side trail, I am just thrilled that someone is moving forward with development for this platform.

-Roman
 

·
Registered
Joined
·
153 Posts
let's keep up the good work for the community
. i've hung up my development hat a couple of years now hehe. Good work guys
 

·
Registered
Joined
·
1 Posts
And about Android 2.3? This is possible to boot 2.3 from SD Card using these scripts?
What do I need to change to have 2.3 booting from SD?

Thanks!
 

·
Registered
Joined
·
353 Posts
Hi,

I've adapted the procedure for the "1220" (Android 2.3) firmware version.
Find attached the new file:

View attachment bootsd_1220.tar.gz

Procedure as follows:

- On your Linux host PC (tested on my Ubuntu 11.10 64-bit)

1) Extract from the original "1220" update package into some temporary dir these files
Code:
<br />
android-fs4.tar.gz<br />
uImage4<br />
2) Expand the attached file into the same temp dir. A new bootsd/ subdir is created.
3) Insert a 2Gb SD card on your PC (through a USB card reader, or whatever).
NOTE 1 - The card content is going to be erased completely.
NOTE 2 - The script should be modified for cards smaller than 2Gb.
4) Note what new device is created for the SD card. It's "/dev/sdd" in my case.
5) Create the bootable SD card with:
Code:
<br />
cd bootsd<br />
chmod +x create_bootsd.sh<br />
sudo ./create_bootsd.sh /dev/sdd<br />
6) Wait for completion of all steps (takes around a 30 secs, or so)

- On your Rena tablet (tested on mine "second version"):

1) insert the bootable SD card into tablet
2) Boot with Vol+&Power (as if you were updating firmware)
3) Be patient! It took two-three minutes to get to the Android home screen first time.

To start the original NAND firmware, just shutdown and restart with the Power button as usual.

-------

Known Issues

1) Overall device response is slower than that with internal NAND.
That's also a clue about what the final performance comes from...

2) Touchscreen doesn't work.
Use a USB mouse to interact.
The original author of the procedure also patched the uboot4 to put into the internal NAND, but before modifying that I'd like to understand better what he has patched...
Hello tosan, are you still around?

-------

Technical details

If you wish to discover how our bootloader works, have a look at the README-Renesas in https://github.com/ffxx68/RenesasEV2-bootloader

The uboot-sd.bin has been hex-edited to patch the boot commands, so to start the root file system to the SD card partition:

Code:
<br />
bootcmd=run ext3cmd<br />
ext3_root=/dev/mmcblk1p3<br />
[email protected] [email protected]<br />
ext3cmd=setenv bootargs root=$(ext3_root) noinitrd init=/init console=ttyS0,115200n8n SELINUX_INIT=no $(cfg_ddr) rw video=qfb: ip=none rootfstype=ext3 rootwait;bootm 40007fc0<br />
The init.rc has been modified to mount the SD card partitions, in place of the NAND ones
The vold.conf and vold.fstab content has been commented out as well, to remove the use of an external SD card (which is of course absent).

--------

GitHub repository of this project

https://github.com/ffxx68/Renesas-BootSD
 

Attachments

1 - 18 of 18 Posts
Top