Dual boot from internal eMMC (obsolete - use my flashable zips) - Nook Color Android Development

[This method is now obsolete. I've created flashable zips for setting up dual boot. And flashable dual boot Nookie Froyo and Honeycomb ROMs. See my other post.]
I've successfully dual boot B&N stock eclair and nookie froyo, both from internal eMMC. Here are the steps to use my script,
1. Download attached dualboot.zip. Create a folder called 'dualboot' on your NC's SD card. Unzip dualboot.zip into this folder.
2. Download Nookie Froyo 5.9 base image from http://edencomputing.com/nookcolor/nookie-froyo-base-0.5.9.tar.gz and copy into the same 'dualboot' folder on SD.
3. Check you have these 3 files in SD's 'dualboot' folder,
dual-boot-files.tar.gz
dual-boot.sh
nookie-froyo-base-0.5.9.tar.gz
4. Make sure /sdcard and /media are mounted in NC. If they are visible on your host PC, umount if you are running Linux, or 'safely remove' if you are on Windows, or 'eject' in Mac.
5. From your host PC, run 'adb shell' to go into your NC.
6. At adb shell, run the following commands.
cd /sdcard/dualboot
busybox sh dual-boot.sh
7. After a few minutes and a lot of messages scrolling by, you should see a message says ">>>>>>>>>>>>>>>>>>>>Done". At this point, you can reboot the NC. Normal boot will go to stock eclair. Hold 'n' button during boot to go to froyo.
p.s. I've also modified the recovery boot keycombo (stock is Power + n) in u-boot.bin. Hold both Vol+ and Vol- during boot to go into recovery. Keep holding them till you are in recovery, no need to worry about how long to hold.
If you want to remove dual boot
1. follow steps in this post http://forum.xda-developers.com/showpost.php?p=11001928&postcount=66 to restore media partition to stock configuration. Note you need to make your own backup of media partition before trying this.
2. follow steps in this post http://forum.xda-developers.com/showpost.php?p=11014734&postcount=88 to restore stock u-boot.
Original steps kept below if you are interested to know what the script does
Here is how I have done it,
1. In stock rom partition 8 of internal eMMC is mounted as media. We can use a partition tool to shrink this partition to make enough room to create 2 more partitions, 1 for froyo system partition (mmcblk0p9) and 1 for froyo data partition (mmcblk0p10). The partition tool I used is GNU parted which comes with Koush's clockwork mod. You can download a pre-compiled copy from his git tree. It can be run on the NC itself.
2. Copy all files from nookie froyo's system partition into mmcblk0p9, and data into mmcblk0p10.
2. Copy nookie froyo's uImage into mmcblk0p1. The file name should be changed to uFImg, so that it can co-exist with stock eclair's uImage on the same partition.
3. Modify nookie froyo's init.rc in the ramdisk, to mount mmcblk0p9 as system, and mmcblk0p10 as data. Pack the ramdisk image, and copy into mmcblk0p1 as uFRam. Again we use a different name so it can co-exist with stock eclair's uRamdisk.
4. I've modified B&N's u-boot tool to detect whether 'N' button is pressed during boot. If it's pressed, boot using uFImg and uFRam. Otherwise boot using stock uImage and uRamdisk. Attached is my modified u-boot. Copy the u-boot.bin into mmcblk0p1 to overwrite stock u-boot.bin.
With this setup, if no button is touched during boot, NC will boot into stock eclair. If you hold 'N' button during boot, it will boot into nookie froyo.
One problem I've found is with the modified partition layout, when booting into stock eclair, media partition does not get automatically mounted. But I'm able to manually mount it.
Played around with the partition layout a bit. It seems if media (partition 8) is at the end of eMMC, it will be automounted in stock eclair. So my final partition layout looks like this,
Code:
Model: MMC SEM08G (sd/mmc)
Disk /dev/block/mmcblk0: 7944MB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Number Start End Size Type File system Flags
1 32.3kB 74.0MB 74.0MB primary fat32 boot, lba
2 74.0MB 148MB 74.0MB primary fat32 lba
3 148MB 461MB 313MB primary ext2
4 461MB 7691MB 7230MB extended
5 461MB 938MB 477MB logical ext2
6 938MB 1941MB 1003MB logical ext3
7 1941MB 2311MB 370MB logical ext3
9 2311MB 2681MB 370MB logical ext2
10 2681MB 3692MB 1011MB logical ext3
8 3692MB 7691MB 3999MB logical fat32 lba
< standard disclaimers - I'm not responsible for whatever damage you did to your NC >

Very nice work. Will have a look.
Thanks.

Nice work. However, I have a concern. As we may have experienced, NC would sometimes randomly reboot itself. So there will be chances that first I boot my NC with nookie froyo, then it reboot and become 2.1 again...
Until a permanent solution is found, this dual boot will not be as effective as it should...

lazinase said:
Nice work. However, I have a concern. As we may have experienced, NC would sometimes randomly reboot itself. So there will be chances that first I boot my NC with nookie froyo, then it reboot and become 2.1 again...
Until a permanent solution is found, this dual boot will not be as effective as it should...
Click to expand...
Click to collapse
I think the problem is over-exaggerated. Since changing the stock governor to ondemand, i have never had a 2.1 reset. Additionally, i have NEVER had a NF (2.2) reset.
Anyway, thanks for the guide OP.. i am actually itching to do this myself...

Divine_Madcat said:
I think the problem is over-exaggerated. Since changing the stock governor to ondemand, i have never had a 2.1 reset. Additionally, i have NEVER had a NF (2.2) reset.
Anyway, thanks for the guide OP.. i am actually itching to do this myself...
Click to expand...
Click to collapse
I agree. the random reboot has only happened to me while on eclair, nookie froyo hasn't given me a single one.
Congratz to the OP for getting dual boot to work.

Does this affect Clockwork Recovery at all?

Can you still use the stock e-reader stuff if you put Nookie Froyo on it or do you have to dual boot in order for it to work? I mean the being able to read magazines and books and all that good stuff. Thanks

Maybe someone here can give me a hint.
I've managed to get a stable version of NF on eMMC. But I can't manage to mount sdcard. And if I mount media, it's corrupts my boot partition, as if it mounted on mmcblk0p1, which is maybe the case...
Any advice on how to edit my init.rc?
Thank you

Another thread claimed that the reboots people were having were the Java run time service rebooting, not an actual OS reboot.
Sent from my Nexus One using XDA App

BugmanXDA said:
Another thread claimed that the reboots people were having were the Java run time service rebooting, not an actual OS reboot.
Sent from my Nexus One using XDA App
Click to expand...
Click to collapse
It's not always just the JVM crash "reboots". I've had actual reboots. Sometimes, it's just JVM. Other times, it's an actual device reboot. I took care of the device reboot by using the Settings Profile method.

BugsBunny891 said:
I agree. the random reboot has only happened to me while on eclair, nookie froyo hasn't given me a single one.
Click to expand...
Click to collapse
BugmanXDA said:
Another thread claimed that the reboots people were having were the Java run time service rebooting, not an actual OS reboot.
Click to expand...
Click to collapse
Once i put the wifi sleep policy back to Default my reboots stopped. I recommend people use waketimer to keep wifi alive while the screen is off. It was mentioned in the wiki.
Great job on the dual booting!

rookie1 said:
I've successfully dual boot B&N stock eclair and nookie froyo, both from internal eMMC. Here is how I have done it,
1. In stock rom partition 8 of internal eMMC is mounted as media. We can use a partition tool to shrink this partition to make enough room to create 2 more partitions, 1 for froyo system partition (mmcblk0p9) and 1 for froyo data partition (mmcblk0p10). The partition tool I used is GNU parted which comes with Koush's clockwork mod. You can download a pre-compiled copy from his git tree. It can be run on the NC itself.
2. Copy all files from nookie froyo's system partition into mmcblk0p9, and data into mmcblk0p10.
2. Copy nookie froyo's uImage into mmcblk0p1. The file name should be changed to uFImg, so that it can co-exist with stock eclair's uImage on the same partition.
3. Modify nookie froyo's init.rc in the ramdisk, to mount mmcblk0p9 as system, and mmcblk0p10 as data. Pack the ramdisk image, and copy into mmcblk0p1 as uFRam. Again we use a different name so it can co-exist with stock eclair's uRamdisk.
4. I've modified B&N's u-boot tool to detect whether 'N' button is pressed during boot. If it's pressed, boot using uFImg and uFRam. Otherwise boot using stock uImage and uRamdisk. Attached is my modified u-boot. Copy the u-boot.bin into mmcblk0p1 to overwrite stock u-boot.bin.
With this setup, if no button is touched during boot, NC will boot into stock eclair. If you hold 'N' button during boot, it will boot into nookie froyo.
One problem I've found is with the modified partition layout, when booting into stock eclair, media partition does not get automatically mounted. But I'm able to manually mount it.
< standard disclaimers - I'm not responsible for whatever damage you did to your NC >
Click to expand...
Click to collapse
Excellent work. How large did you make the mmcblk0p9 and 0p10 partitions and could you provde a link to android gparted? Thanks much.

runhopskipjump said:
Once i put the wifi sleep policy back to Default my reboots stopped. I recommend people use waketimer to keep wifi alive while the screen is off. It was mentioned in the wiki.
Great job on the dual booting!
Click to expand...
Click to collapse
^This.
solution worked for me as well.

BugmanXDA said:
Another thread claimed that the reboots people were having were the Java run time service rebooting, not an actual OS reboot.
Sent from my Nexus One using XDA App
Click to expand...
Click to collapse
Nope, I've never seen my NC have a Java VM halt, it's full OS reboots. My phone's ROM cook says that's generally a kernel panic, but I've never gotten any logs from the event.

If anyone is interested, I've managed to get NF on eMMC with mounting uSD.
Thought you should know.
Sam

Now that there is a stable o/c kernel for Froyo, I would like to do a dual boot installation; but the instructions (especially the packing ramdisk part) are still a little over my head. That probably means I shouldn't attempt it, but if anyone has any more tips, I'd appreciate them!

I'm creating a script to do the installation. Will update the 1st post once I tested it.

That would be great!
Sent from my LogicPD Zoom2 using XDA App

rookie1 said:
I'm creating a script to do the installation. Will update the 1st post once I tested it.
Click to expand...
Click to collapse
Wow fascinating work. Will this still work with clockwork recovery installed ?
What about with eclair 1.1?
Will both nookie and eclair be able to read from the sd card?
Sent from my Nook Color

The script does not touch recovery, besides changing the keycombo. So it will work with CWR installed. But CWR is not aware of the additional partitions (9 and 10), so I guess it won't backup and restore them.
Both eclair and froyo can access the sd card. In froyo /media is not automatically mounted. Not sure whether this is a nookie 5.9 bug.

Related

[Script][A2SD] Darktremor 2.7.5.3 Beta 04 [N1] (01/29/2011)

Introducing...
Darktremor Apps2SD 2.7.5.3 Beta 04
Date of Release: January 29, 2011
Download Current Version
Instructions - Change Log - Commands - ROM List - Developer's Guide
Darktremor Apps2SD Fan Page ----
Darktremor Apps2SD Development Group
Are you installing Darktremor Apps2SD on your phone? Here are the instructions to help you: Facebook
Are you a developer wanting to include Darktremor Apps2SD in your latest ROM? Here is the Developer Guide: Facebook
Click to expand...
Click to collapse
Update on Beta 4
It seems I'm getting mixed results with these betas. I'm not sure why this is occurring, some people have been able to get this working right while others have had a hard time with it.
Currently, I'm rebuilding the entire program. This takes a while because I have to figure out how to pack all these options into the program but make it small enough to where it will run correctly.
I will say that some of the beta features are coming back out...one of them is the search for a partition code. I suspect that code may be leading me into issues with certain platforms, so I'm going back to the 2.7.5.2 method of mounting (mmcblk0p2 or mmcblk1p2).
Also, parts of the code will use Busybox Ash (the only code that won't will be starta2sd, which will still use Bash for the time being). The startup code will definitely use Busybox Ash.
Until then, here are the links to the the last two betas and the last official release:
Version 2.7.5.3 Beta 04 - http://www.darktremor.info/files/a2sd/dtapps2sd-2.7.5.3-beta04-signed.zip
Version 2.7.5.3 Beta 03 - http://www.darktremor.info/files/a2sd/dtapps2sd-2.7.5.3-beta03-signed.zip
Version 2.7.5.2-1 - http://www.darktremor.info/files/a2sd/dtapps2sd-2.7.5.2-1-signed.zip
And, if you want past versions, you can view the repository: ftp://dtuser:[email protected] (ignore the smiley face...that's XDA doing that.)
Click to expand...
Click to collapse
Beta 04 took longer than I expected to release. I have done major changes to the code:
1. New commands: convert-ext4 - This will convert your EXT3 partition into EXT4. Just a friendly reminder on this command: Not every rom supports EXT4, so it is possible to go into a boot loop if you switch roms. Use with caution.
2. Reworked convert-ext3 (convert-ext4 gets similar code)...now a flag file is set before the reboot (no conversion is done before the reboot). At load time, the conversion is performed. This takes longer in the reboot process and you may think your phone has locked up...wait about five minutes before doing anything with the phone.
3. Repair is rebuilt...now it uses existing commands to repair the setup (reinstall, remove, cachesd, cachepart, nocache, datasd, nodata). Definitely shrinks the code.
4. Added fix_permissions program to the package. This may help with Superuser issues when using the datasd feature. It is used in reinstall, remove, datasd and nodata.
5. a2sd install is back!!! Both a2sd install and a2sd reinstall do the exact same thing.
6. Dalvik heap code has been shrunk and now creates a file called dalvikheap. Actually, the code has been doing this all along (since about 2.7.5.2, I think), but I never put the code in to use the file.
7. Low Memory Killer code has also been shrunk and uses a file caled dtset_lowmem to set the low memory killer parameter.
8. Replaced Busybox PS function with Toolbox PS. The issue with Busybox PS is that it gives a false reading when I look for android.process.acore (which is the main program when the GUI starts up). If that is present, the program thinks you are trying to run Darktremor without any command line parameters. This was because Busybox would report the process was there when, in reality, it wasn't (validated this when my phone was boot looping.) Toolbox's PS reports the correct setting. This should fix the bootlooping issues some people are experiencing.
9. New commands: usedtbusybox and usedefaultbusybox - these commands may help in diagnosing issues that is may be related to the native Busybox on your rom. a2sd usedtbusybox will use the Busybox that is packaged with Darktremor. a2sd usedefaultbusybox will turn back on the scan behavior of the program introduced in Beta 03.
10. Support for Darktremor Apps2SD version 2.7 and earlier has been discontinued. To upgrade correctly from one of those versions, use version 2.7.5.3 Beta 03b or earlier.
11. Finally fixed stalled boot issues (or at least my tests with several roms says so.)
See the change log for additional details.
You will notice that if the program runs repair and finds a problem, it will correct the issue and reboot. You will see a second reboot when the dalvik-cache clears (this is to fix timing issues with CyanogenMod...I can't control that startup as well as I can other roms). This only happens if repair is ran or you flash a new rom (as repair will realign all data). If you are upgrading from a previous version of Darktremor, you should not see the reboots.
Click to expand...
Click to collapse
This is Darktremor Apps2SD, a multipurpose program that primarily allows a user to execute applications created for the Android OS on their Secure Digital card (with the proper setup...more on that later). But, Darktremor Apps2SD is all about stability. The goal is to be able for all users of the Android OS to be able to take advantage of a method to run their applications from a secure digital card.
But just because the Darktremor Apps2SD is all about stability, doesn't mean it isn't packed with features:
- Move applications (both free and paid) to the Secure Digital card.
- Move Dalvik Cache to run either from your Secure Digital card or from your cache partition and clears the cache on demand.
- Boot Loop Protection: prevents the phone from boot looping in the event the SD card could not be mounted.
- Dalvik JIT for faster performance on Roms which support it.
- User selectable sizes for the Dalvik heap sizes, allowing a user to freely optimize their system.
- Activate a swap partition on your SD card and sets how often the swap partition is utilized.
- Automatically fixes configuration issues.
- Users can check the free space on their SD card and check the installation to make sure all is setup correctly.
- Runs ZipAlign on demand...this makes your programs load faster.
- Built in help system for easy reference of commands.
- All features can also be reversed without repartitioning your Secure Digital card.
- New logging features assists in troubleshooting issues.
- Commands to set the Low Memory Killer feature at boot time. Great for those people who are the "set it and forget it" type.
- And more...
Darktremor Apps2SD is not the same as Froyo Apps2SD. Froyo Apps2SD creates a secure folder on the FAT32 section of your SD card (this is the section that you see when you mount your phone to your computer) and stores the programs there. This is nice as you don't have to do anything special with the phone, but it isn't backwards compatible with older versions of Android (Cupcake, Donut, Eclair) and, because of the way Froyo works, older programs not designed for Froyo will automatically stay on your internal storage (unless you install a program that forces the move to your SD card).
Darktremor Apps2SD takes a different approach. Based on the original CyanogenMod works, Darktremor Apps2SD uses symbolic linking to force Android into moving your applications to the SD card. Because Android will not allow anything to be ran from the FAT32 partition on your SD card (and, in Froyo, it will only allow you to run programs from a special folder), Darktremor utilizes filesystems called EXT2, EXT3 and EXT4. Each one of these filesystems is native to Linux (the operating system running Android), which allows you to run programs from them (same as, say, a computer running Ubuntu). This method is completely compatible with all versions of Android, including Froyo. In fact, you can run both the Darktremor Apps2SD and Froyo Apps2SD at the same time.
Check out the list of Roms that either have Darktremor Apps2SD installed or are compatible with Darktremor Apps2SD. Click on the link labeled ROM List at the top of this message.
Darktremor Apps2SD Installation Instructions
For the list of people that helped me test this on the various roms that use or can use Darktremor Apps2SD and the changelog: http://forum.xda-developers.com/showpost.php?p=7034326&postcount=3
Click to expand...
Click to collapse
The installation instructions can be found here: http://forum.xda-developers.com/showpost.php?p=7021325&postcount=2
Click to expand...
Click to collapse
If you want a list of commands for Apps2SD, type a2sd help.
Reserved...
Thank you so much!!! Can I flash this with ClockworkMod Recovery? I saw that you recommend Amon's but just thought I would ask before I flash back to Amon's.
Since we only have Amon's and Darch's recoveries, those were the only ones I could test with. It's possible you may be able to use ClockworkMod (I didn't ask my testers what recovery they were using).
Do a backup of your phone, then try it. If it works, let me know and I'll update the post.
THATTON said:
Thank you so much!!! Can I flash this with ClockworkMod Recovery? I saw that you recommend Amon's but just thought I would ask before I flash back to Amon's.
Click to expand...
Click to collapse
tkirton said:
Since we only have Amon's and Darch's recoveries, those were the only ones I could test with. It's possible you may be able to use ClockworkMod (I didn't ask my testers what recovery they were using).
Do a backup of your phone, then try it. If it works, let me know and I'll update the post.
Click to expand...
Click to collapse
Everything went well and I'm up an running. Thanks.
Ps-proud to be a test subject. Lol
As a reward for being the test subject, I have updated both the install post to include Clockworks Recovery and added your name on the Credits post as the tester.
THATTON said:
Everything went well and I'm up an running. Thanks.
Ps-proud to be a test subject. Lol
Click to expand...
Click to collapse
tkirton said:
As a reward for being the test subject, I have updated both the install post to include Clockworks Recovery and added your name on the Credits post as the tester.
Click to expand...
Click to collapse
Hey, that works for me! Thank you!
Add Apps2SD support in your Rom
I created a guide in my main thread on how to add Apps2SD into roms that don't have it.
http://forum.xda-developers.com/showthread.php?t=715116
Bump....New version 2.7.5 Preview Fix 4 is out (and there was a PF3, but it was only released to Desire users to try to work through the NAND protection on their device...their changes are part of PF4).
Has anyone tried this on the latest CM6 nightly build?
Chahk said:
Has anyone tried this on the latest CM6 nightly build?
Click to expand...
Click to collapse
I was going to, but the nightly are so often that I would hate to keep having to do it every update...well the nightlies have slowed down....I might try it out! Will report back if works!
djdarkknight96 said:
I was going to, but the nightly are so often that I would hate to keep having to do it every update...well the nightlies have slowed down....I might try it out! Will report back if works!
Click to expand...
Click to collapse
Cool, let us know here and in the CM thread. I would love to know as well.
THATTON said:
Cool, let us know here and in the CM thread. I would love to know as well.
Click to expand...
Click to collapse
I flashed the zip in recovery using CM6 and it did not work. The zip flashed without error but my apps did not move to the EXT partition
I'll check it out and see what's going on.
EDIT: It's possible that Busybox Run-Parts won't process two files with the same name. Since I can't run it, can you run a logcat so I can see what's going on. Send it to [email protected] and I'll take a look at it.
mightykc said:
I flashed the zip in recovery using CM6 and it did not work. The zip flashed without error but my apps did not move to the EXT partition
Click to expand...
Click to collapse
mightykc said:
I flashed the zip in recovery using CM6 and it did not work. The zip flashed without error but my apps did not move to the EXT partition
Click to expand...
Click to collapse
It works on CM6. All you need to do is flash boot from Modaco's (Paul's) Froyo R21 with a2sd.
I'm eager to try this -- but I noticed that in the update.zip, there's a "new" copy of Vending.apk. Why is the Market app being replaced? How does this one differ from the stock FRF91 copy? It makes me a bit nervous to be replacing the app. Previous apps2sd approaches haven't needed to modify this. Can you explain a bit what's going on under the covers?
I would have thought that just an init script, an ext3 partition and a few symlinks would be all that was required...
Thanks
Don't worry about it. It only replaces the app when you execute a2sd fixmarket. This was to address an issue with a disappearing market, but since then the problem has been pointed to zipalign (which is why zipalign won't run automatically at boot).
I think PF4a doesn't even have the command anymore, so, unless you manually push it from /data/a2sd, it won't replace anything.
The upcoming RC1 version will have that removed, as it is no longer needed.
Here's how Darktremor Apps2SD works:
1. First thing it does is transfer control to launcha2sd, which is ran by using bash instead of sh (bash seems to be more stable).
2. Once launcha2sd is running, it performs a quick test to see if you are asking for help (a2sd help). If so, it displays the contents of the help file and exits.
3. Next, it checks to see if the following properties are in the init.rc:
- cm.filesystem.ready or dc.filesystem.ready (only one has to be present)
If so, it can run the more advanced boota2sd. If not, it will run a basic version of Apps2SD (FYI, these properties actually are used to stop the init.rc until Apps2SD [and any other script the rom developer deems necessary to run] are complete. This prevents dalvikvm from interferring, preventing a race condition).
4. Next, it runs starta2sd unless you don't have the properties stated before, then it continues by moving the /data/app and /data/app-private to SD card (if needed and after attempting to mount the ext partition). Then it activates swap (if available) then it exits.
5. Under starta2sd, it checks to see if a command was requested (install, remove, cachesd, cachepart, jit, nojit, etc...). If so, it runs the appropriate commands for the command requested.
6. If no command was given, it checks to see if apps2sd is being ran for the first time. If so, it transfers control to boota2sd. If not, it displays a message stating you need to supply a command and promptly exits.
7. In boota2sd, it checks for the old flag files (from version 2.5 - 2.7) and moves them to the /data directory.
8. Next, boota2sd attempts to mount the ext partition. If that fails, it will engage Boot Loop Protection, which puts your /data/app, /data/app-private and /data/dalvik-cache (if it is stored on the SD card) back to internal storage and sets the No Apps2SD flag file. This can be reversed by executing a2sd install once the issue with the ext partition is fixed.
9. Next, it checks for flag files and whether the correct setup exists. If not (say you have the Dalvik to SD cache flag file active but your dalvik-cache is being stored on your internal storage), the program initiates auto-repair.
10. Once that is complete, it checks to see if it needs to move applications to the SD card and moves them, unless the No Apps2SD flag file is present.
11. Next, it looks to see if the user has activated ZipAlign on boot (a2sd zipalign) and, if so, will proceed to zipalign the /data/app and /data/app-private directories.
12. Next, it activates the swap partition, unless the swap partition isn't present or the No Swap flag file is set.
13. The program then ends.
This is the automated boot sequence. You can control the behavior of apps2sd by using commands (a2sd install, a2sd cachepart, a2sd align...)
System files are only modified if there is a need to (i.e. JIT) and only if the user activates the correct command (i.e. a2sd jit, a2sd nojit). In fact, the only time the /system partition is changed to a read-write state is during the JIT installation (and that is changed back to read-only when the setup is complete)...otherwise, the /system partition is read-only through the entire Apps2SD run.
mlevin said:
I'm eager to try this -- but I noticed that in the update.zip, there's a "new" copy of Vending.apk. Why is the Market app being replaced? How does this one differ from the stock FRF91 copy? It makes me a bit nervous to be replacing the app. Previous apps2sd approaches haven't needed to modify this. Can you explain a bit what's going on under the covers?
I would have thought that just an init script, an ext3 partition and a few symlinks would be all that was required...
Thanks
Click to expand...
Click to collapse
tkirton said:
Don't worry about it. It only replaces the app when you execute a2sd fixmarket. This was to address an issue with a disappearing market, but since then the problem has been pointed to zipalign (which is why zipalign won't run automatically at boot).
I think PF4a doesn't even have the command anymore, so, unless you manually push it from /data/a2sd, it won't replace anything.
The upcoming RC1 version will have that removed, as it is no longer needed.
Click to expand...
Click to collapse
Awesome! Thanks so much for the quick and detailed reply!
Just read through the code. Nice work!
I see that one of the options is to put dalvik-cache in /cache. Any reason apps can't be put into this partition as well? On a rooted device, /cache is mostly wasted space. Or does /cache get wiped on reboot like /tmp?

Modified Boot/Installer

Hello again fellow nookie lovers....
DISCLAIMER: If you do not know what the following information does, means, or could result in if not performed correctly, please stop now and go no further. I hold no liability for how you use the following information or if you brick, bork or f&*k up your device.
Now with that, let's continue.....
I decided to post up a modified .IMG file I was able to throw together after getting my hands on a honeycomb preview. The original IMG was provided to me by a good friend (Thanks J and Thanks to the creator of the IMG) and then honeycomb come shortly after.
Using WinImage or a similar program to burn the IMG to a SD card, 1G or larger, will give you a bootable SD allowing you to boot directly into clockwork recovery and install the following:
B&N Original Firmware 1.0.1
Nookie Froyo
Nookie Honeycomb (SN:Overclocks to 1100 default)
Google Apps
Before installing any of the 2 Android systems, remember to visit "Mounts and Storage" and format the Data, System, and Boot partitions. Save Boot for last as it will lock up the nook and require a restart of the device. Once these areas are formatted, continue to install your preferred system of choice. Once that is completed, be sure to install the Google Apps zip to give you the market.
As of this time, the IMG file is approx 978 MB. As I modify I am sure it will grow to require a 2 GB SD.
For my next project, I will be including an image with some of the most important apps a Droid user needs, ie:
ADBWireless
Applanet
BetterTerm
SetCPU
etc
If there are any good apps that I might overlook, hit me up here and let me know.
Nookie-Installer - http://www.megaupload.com/?d=PLNQ9QYZ
~Exile~
"When All Else Fails, Try Linux"

Clear Cache and Data from Stock Recovery

I've seen a number of requests for this functionality and recently it became necessary for one user who had a disabled Home Key to clear cache and data without the use of ClockworkMod. I have reserached two methods to address this issue. These instructions require some familiarity of android, computer and tablet terminology and usage. Feel free to ask for clarifications in comments. Here we go...
Method I - Stock Recovery Command File
Technical: Stock Recovery command file can be used to perform a few additional functions as well as to alter the path to update files. These commands will execute with all privileges available to recovery mode.
Advantages: Very easy to use. Very little technical knowledge required. No third party software is required for use.
Prerequisites: You will need a MicroSD card formatted FAT32 and a method for transferring files from your computer to the MicroSD.
Usage:
1) Prepare a text file named "command" (no file extension) with one of the following commands on a single line. The wipe data command will wipe both data and cache. Wipe cache will wipe cache only.
--wipe_data
--wipe_cache
2) Place the file in a folder named "recovery" in the root directory of your MicroSD card.
3) From a powered down state, insert the MicroSD card into your tablet and boot into recovery by powering it on while holding down the Volume Up key.
4) Allow the command to execute completely then the tablet should reboot (this may not occur automatically depending on firmware installed).
Method II - Updater Script
Technical: The attached "Updater Scripts" perform delete commands (recursively if necessary) on the named directory or file(s). The directories are mounted automatically by the system before the script executes but it could be easily revised to include that step if necessary. The partitioning, formatting and directory structure are left untouched. Only files are deleted.
Advantages: No third party software is necessary for execution. Relatively easy to modify for more surgical precision (i.e. leaving installed apps but clearing possibly corrupted system data). Included example: "Clear Battery Stats"
Prerequisites: You will need a MicroSD card formatted FAT32 and a method for transferring files from your computer to the MicroSD.
Usage:
1) Download the attached archive (ClearData.zip) to your computer.
2) Extract the files to your computer. You should then have a folder named "recovery" (which contains a file named "command") and an additional archive named "update.zip"
3) Place the recovery folder and the update.zip in the root directory of the MicroSD card.
4) From a powered down state, insert the MicroSD card into your tablet and boot into recovery by powering it on while holding down the Volume Up key.
5) Allow the script to execute completely then reboot the tablet (this may occur automatically depending on firmware installed).
This will become handy someday.
Thanks for sharing your knowledge.
You're welcome. One quick note... the new stock recovery adds a menu simiilar to ClockworkMod. These methods will still work since the recovery folder/command file are checked first but it really isn't as necessary any more.
Need Help
Tried both methods above but either way I get to the viewsonic splash with the message "Booting recovery kernel image" in the upper left and it just stays there, stuck there, I left it for a long time to see and it never leaves that screen.
Any ideas?
Me too
I can't get into clockworkmod either. My machine is running faster. I almost hate to mess it more.
lrgche said:
Tried both methods above but either way I get to the viewsonic splash with the message "Booting recovery kernel image" in the upper left and it just stays there, stuck there, I left it for a long time to see and it never leaves that screen.
Any ideas?
Click to expand...
Click to collapse
That's an indication that you may have more serious problems. nvflash will be required. http://forum.xda-developers.com/showthread.php?t=861950
Once done you will likely need to install ClockworkMod and repartition your internal storage.
Loukoebel said:
I can't get into clockworkmod either. My machine is running faster. I almost hate to mess it more.
Click to expand...
Click to collapse
If your tablet boots properly but you can't get into CWM then it probably isn't installed properly (or at all). http://forum.xda-developers.com/showthread.php?t=865245
Keep in mind that CWM is NOT compatible with all ROMs. Make sure the developer for your chosen ROM recommends it before installing it.
Does your method in opening post have to be run from external micro sdcard?
Both methods are performed with an external MicroSD card. They will work from internal also but it is a little more difficult to get the files in place if your tablet is not booting properly.
K J Rad said:
Both methods are performed with an external MicroSD card. They will work from internal also but it is a little more difficult to get the files in place if your tablet is not booting properly.
Click to expand...
Click to collapse
so your method is a simple way to replace one of the main uses of Clockword MOD?--Plus you stay stock more or less.
That is correct. Method II can also be modified to be less intrusive (leave user apps installed) or embedded into update scripts to perform a wipe during new ROM installs.
K J Rad said:
That is correct. Method II can also be modified to be less intrusive (leave user apps installed) or embedded into update scripts to perform a wipe during new ROM installs.
Click to expand...
Click to collapse
Wipe data does what--remove the apps installed?
And the partitions?
Your post is very interesting. It implies that you have a knowledge of the g-tabs partition structure. I have played with Linux off and on for the last 10+ years. When I began, I used Slackware and when you set it up you had to manually create partition tables using fdisk. You were only required to create two - the data partition and a swap partition but it was often recommended that you create several others - one to contain the home directory to prevent users from using all the disk space (in the days of small disks) for example. It appears that there are a lot of partition on the g-tab. Up to now, I have used various wiping tools like clockwork or calkulins wipe all on faith. I would really like to know what all the partitions are and what is in them. I have used terminal to get to the root folder and tried to do an fdisk to display the partitions but try as I might everything remains hidden. It would seem that a script like yours could be adapted to do many things but I would certainly want to understand the structure a little better before I did anything. I have searched and been unable to find that information. Can you point a way for the curious to learn more about the partition structure on the g-tab?
Wish I had a direction I could point you in. What I've found so far has mostly been stumbled upon while looking for something else. What I can tell you is this...
1) When using fdisk in Android you must specify the device to look at. Try something like: fdisk /dev/block/mccblk3 That should list the current partitions as defined by CWM or whatever was used originally.
2) Within one of those partitions in the list generated above are sub-partitions holding the bootloader, system, data, etc partitions. You can see how they're described in the .cfg files in the nvflash restores that are lying about.
lsu205 said:
Wipe data does what--remove the apps installed?
Click to expand...
Click to collapse
Removes user apps and their associated data as well as system related data and settings.
K J Rad - any idea if the partition size can be set with these methods (2048 & 0) in case I can't get clockwork installed?
CodeNamePapa said:
K J Rad - any idea if the partition size can be set with these methods (2048 & 0) in case I can't get clockwork installed?
Click to expand...
Click to collapse
I'm looking for a solution to that problem. Unfortunately these methods still require the ability to get into recovery mode which likely won't work if you're having trouble getting CWM installed.
If, however, you can get into recovery... then it is theoretically possible to create a script that would accomplish that. As soon as I have one I'll be adding it to the mix ;-)
Edit: I've found something I think will work. Will do some testing tonight. It will still require access to recovery.
I wasn't sure if you saw my other post but I am seeing no partition 0 when I NVFlash with a verifypartition.
http://forum.xda-developers.com/showpost.php?p=13059520&postcount=57
I haven't yet but I will. Let's try to keep this thread on topic. Thanks.
More thoughts:
because I went w/ cyan7 is it possible i have a "bad" kernel and that the stock bekit-1105 or the roebeet-3588 files are crashing w/ the kernel in place already?
I know custom ROMs can have a custom kernel applied separately, but I have no idea whether cyan7 loads it's own kernel...
I have yet to try the nvflash_gtablet_46 version, as I see the img files w/in are different from the original 1105 .zip
Also:
read on another thread that part 2 and part 3 aren't loading for other users when doing nvflash - I did notice that it pauses, runs some stuff, then starts loading part 4 through to the last part, then success. - do part 2 and 3 run for you?
edit: I see a 4349 downgrade.zip in another thread for those who got the OTA update but want to go back to stock 3588 prior to jumping off somewhere else - I can't expect that would help me as I can't do squat w/ recovery yet, but could that possibly "reset" any bad kernel problems? - again, I'm just thinking out loud.
This is well outside the scope of this thread but I find some of what you mention interesting so I'll address it and then end any further off topic discussions.
I did not build nor have I ever used Cyan7 so I have no basis for an opinion on the matter other than this... Each ROM comes with a kernel installed so if properly done an nvflash should overwrite any "bad" kernel.
Part2 and Part3 do indeed load, they are just displayed differently than the other Parts. Just minutes ago I flashed down from Mountain Laurel (4349 based with the new bootloader and recovery) with absolutely no trouble. I can, and have, read back those partitions after an nvflash to prove that point.
The 4349 downgrade will only work for you if recovery is working. Having never used it I don't know that it would "reset" the kernel but any subsequent flashing of a new ROM image would.
I am working on a stock recovery solution for partitioning but it isn't likely to help anyone who is stuck in an APX loop. I do have some ideas on what might help for that condition but I haven't been able to get my hands on one for testing and trying to help people here is like being a consulting mechanic for a car repair that's in someone else's shop having work done on it that you're not being told about.
I'll be happy to address any further comments or questions regarding your specific issue in an appropriate thread or via PM. Thanks.

[Q] The boot sequence, SDE, and dual boot

I have a few questions about Archos' devices, in particular those belonging to the Generation 8 family. Here they are:
How is the partition table setup on the device and is the partition table signature checked? How are the partitions logically laid out?
When the SDE is installed and run, boot1 locks up boot0, itself and the recovery partition to prevent them from being modified. I would imagine that this type of setup would require keeping the partition table from being modified, thereby preventing dual boot. Can dual boot be achieved using the SDE without any extra modifications?
Are some of the partitions on Archos devices contained in compressed images and then loaded into the RAM in a manner similar to the way Damn Small Linux boots?
Is the recovery partition a minimal OS setup that exists to perform recovery operations or is it in fact copied in it entirety to the primary partition when recovery mode is entered?
I have realized/learned some things Linux that I hadn't noticed before such as the fact that folders like /home and /boot have their own partitions and that /boot may contain more than one kernel and that bootloaders like GRUB are actually represented in the filesystem. I don't if these are real partitions or logical partitions so I might have to do some relearning.
I'm bumping this thread.
Master Melab said:
I have a few questions about Archos' devices, in particular those belonging to the Generation 8 family. Here they are:
How is the partition table setup on the device and is the partition table signature checked? How are the partitions logically laid out?
When the SDE is installed and run, boot1 locks up boot0, itself and the recovery partition to prevent them from being modified. I would imagine that this type of setup would require keeping the partition table from being modified, thereby preventing dual boot. Can dual boot be achieved using the SDE without any extra modifications?
Are some of the partitions on Archos devices contained in compressed images and then loaded into the RAM in a manner similar to the way Damn Small Linux boots?
Is the recovery partition a minimal OS setup that exists to perform recovery operations or is it in fact copied in it entirety to the primary partition when recovery mode is entered?
I have realized/learned some things Linux that I hadn't noticed before such as the fact that folders like /home and /boot have their own partitions and that /boot may contain more than one kernel and that bootloaders like GRUB are actually represented in the filesystem. I don't if these are real partitions or logical partitions so I might have to do some relearning.
Click to expand...
Click to collapse
Partition tables are not locked. Devices are populated as normal in kernel. Partitions can be edited and the device repopulated with partprobe as normal.
The bootloader/recovery is held on a partition on mmcblk0, they are signed using a public/device encryption key, that has been broken. When the system is booted it mounts the recovery image and performs requested functions. The AOS firmware format is also encrypted, but has not been broken. The stock firmware is held on mmcblk0 as well, in an 256bit device key encrypted SquashFS(which has also been broken). It is mounted with a chroot as R/O at stock boot.
Dual boot can be achieved in multiple ways, easiest of which is installing the openAOS multiboot menu. A current limitation is that all OSes must use the same kernel, until we can get kexec working correctly(or other more dangerous solutions).
P.S. Folder's like /boot and /home can be many different things. Folders, partitions, images, symlinks, etc. The advantage of linux/debian is that everything is represented in the file system. Even sending commands to devices or modifying driver settings is done by "modifying files". For example, to flip the touchscreen's input on my A101, you write the letter "N" to a "file" called /sys/module/hid_hanvon/parameters/rotate180.
This is actually an interface to the driver for the touchscreen, not an actual file, so sending the letter N to "rotate180" tells the driver to flip the input coming from that device(hid_hanvon = the touchscreen).
If you tell me what you're trying to achieve, I can give you more details. If you are just trying to learn, you should come to the openaos IRC channel. Lot's of years of experience in there.
I didn't think bootloaders were stored on partitions. On PCs, the first stage bootloader is stored outside of any partition on the MBR.
Master Melab said:
I didn't think bootloaders were stored on partitions. On PCs, the first stage bootloader is stored outside of any partition on the MBR.
Click to expand...
Click to collapse
That's flashed on eMMC2. I was talking about the recovery bootloader. Basically, the bios is off limits, and the recovery bootloader allows updates, SDE flashing, etc. without risking bricking, as I'm sure you know.
So boot0, the root of all control on the device, is not stored in a partition, like the first stage bootloader on a PC while boot1 (or whatever special bootloader that exists for recovery purposes) is stored on its respective partition like a second stage bootloader on a PC?
I'm bumping this thread. Please explain further. What do you mean when you say "BIOS" and is boot1 the recovery bootloadr?
Master Melab said:
I'm bumping this thread. Please explain further. What do you mean when you say "BIOS" and is boot1 the recovery bootloadr?
Click to expand...
Click to collapse
Another bump.
I also want to know the partition layout of gen8 devices after installing SDE and UrukDroid.
I already installed SDE and when I plug the device to my computer I see 3 partitions:
/dev/sdb1 76295 469632 12586808+ 83 Linux
/dev/sdb2 1 30518 976563 83 Linux
/dev/sdb3 30518 76295 1464844+ 83 Linux
sdb1 - 13GB, doesn't contain a /system, but here's the menu.lst
sdb2 - 1GB, contains a /system (but i think it's not the stock android installation) ...maybe UrukDroid?
sdb3 - 1.5GB, contains a /system, but has only a few files, etc is missing for example
So is the stock android partition invisible?
I am bumping this thread.
Maybe this thread could be usefull for you : http://forum.xda-developers.com/showthread.php?t=1199450

[Q&A] [TOOL][NABI2] NabiLab - Root, Play, Recovery

Q&A for [TOOL][NABI2] NabiLab - Root, Play, Recovery
Some developers prefer that questions remain separate from their main development thread to help keep things organized. Placing your question within this thread will increase its chances of being answered by a member of the community or by the developer.
Before posting, please use the forum search and read through the discussion thread for [TOOL][NABI2] NabiLab - Root, Play, Recovery. If you can't find an answer, post it here, being sure to give as much information as possible (firmware version, steps to reproduce, logcat if available) so that you can get help.
Thanks for understanding and for helping to keep XDA neat and tidy!
State of Nabi 2 Root as of 12/14?
So I have admittedly been out of the loop on the state of rooting my two Nabi 2s since after I restored them to stock and all back last year when they released the update that included the Gapps. So I've been running stock since then and am on the latest firmware (2.4.6 I believe). All is mostly fine, but I would really like to get the external SD cards to be writable again, and from what I can tell, I need root again to do that.
So...as of today...what is the state (and best procedure) of rooting the Nabi 2 on the latest OTA update? Is Nabi Lab still the best tool? From what I've pieced together from scattered threads, it's looking like possibly use Nabi Lab to install TWRP, and then use that to install the SuperSU (http://forum.xda-developers.com/showthread.php?t=1538053). However, I could likely be wrong...hence why I'm asking.
Eyebolt said:
So I have admittedly been out of the loop on the state of rooting my two Nabi 2s since after I restored them to stock and all back last year when they released the update that included the Gapps. So I've been running stock since then and am on the latest firmware (2.4.6 I believe). All is mostly fine, but I would really like to get the external SD cards to be writable again, and from what I can tell, I need root again to do that.
So...as of today...what is the state (and best procedure) of rooting the Nabi 2 on the latest OTA update? Is Nabi Lab still the best tool? From what I've pieced together from scattered threads, it's looking like possibly use Nabi Lab to install TWRP, and then use that to install the SuperSU (http://forum.xda-developers.com/showthread.php?t=1538053). However, I could likely be wrong...hence why I'm asking.
Click to expand...
Click to collapse
Nabilab will still work as long as you use a version with a Jellybean TWRP(since you are on 2.4.6).
katinatez repackaged it for jellybean here:
http://forum.xda-developers.com/showpost.php?p=48987089&postcount=2088
I've searched high and low and can't find anything. I have nabi2S running KitKat. Every rooting guide I've found is for JB. Is there any way to root the 2S?
Sent from my Nexus 5 using XDA Free mobile app
jaxbierley said:
I've searched high and low and can't find anything. I have nabi2S running KitKat. Every rooting guide I've found is for JB. Is there any way to root the 2S?
Sent from my Nexus 5 using XDA Free mobile app
Click to expand...
Click to collapse
For the sake of anyone else looking for this information we are discussing it at the main Nabi thread starting at post #2477
http://forum.xda-developers.com/showthread.php?t=1905674&page=248
Stock Restore
Hi
I have downloaded NabiLab, as I am having wifi issues on my updated Nabi2. I unzipped, ran the .bat and chose option 3 (with my nab connected via USB). Nothing happened, no errors etc, the screen flashed up and shut down. Do I need to do something with the Nabi (recovery mode etc), do I need to install anything from NabiLab before trying this? Any help would be appreciated
Firepants said:
Hi
I have downloaded NabiLab, as I am having wifi issues on my updated Nabi2. I unzipped, ran the .bat and chose option 3 (with my nab connected via USB). Nothing happened, no errors etc, the screen flashed up and shut down. Do I need to do something with the Nabi (recovery mode etc), do I need to install anything from NabiLab before trying this? Any help would be appreciated
Click to expand...
Click to collapse
What version of software? Use Nabilab2015 http://forum.xda-developers.com/showpost.php?p=59073456&postcount=2544
It has more diagnostic info. Just be in Android or TWRP with ADb enabled. It also can see if drivers are loaded.
Hacking Nabi2 to Allow Data2SD
I managed today to hack my kids Nabi2 to enable Data2SD. I was to frustrated by the limited space in the tab. My kids were complaining about not being able to add more games. Thus, I decided to take the risk of modifying the mount points of the tab to allow the data partition to point to a partition in a large sdcard, instead of the limited 4.5 GB space in the internal storage.
Warning: I am not responsible of any damage as a result of following the next steps. Always make backups
Note: I have the last update (KitKat) installed in the Nabi2
1- Dump the boot image from an adb shell:
Code:
su
cat /dev/block/platform/sdhci-tegra.3/by-name/LNX > /sdcard/boot.img
2- Open this url http://android-dls.com/wiki/index.php?title=HOWTO:_Unpack,_Edit,_and_Re-Pack_Boot_Images
to see the instructions of how to unpack and repack the boot image. Note that, the splitimage script mentioned in the page can be found at https://gist.github.com/jberkel/1087743
Warning: do not do anything in the tutorial, just wait
3- Format an sdcard as one partition of ext4 type
4- Insert the sdcard in the nabi2
5- Use the tutorial in step 2 to extract the ramdisk contents from the boot image and then Modify the file "fstab.mt799" in the ramdisk folder by replacing the line
Code:
/dev/block/platform/sdhci-tegra.3/by-name/UDA /data ext4 noatime,nosuid,nodev,journal_async_commit,data=writeback,nodelalloc,errors=panic wait,check,encryptable=/dev/block/platform/sdhci-tegra.3/by-name/MDA
with
Code:
/dev/block/platform/sdhci-tegra.0/by-num/p1 /data ext4 noatime,nosuid,nodev,journal_async_commit,data=writeback,nodelalloc,errors=panic wait,check,encryptable=/dev/block/platform/sdhci-tegra.3/by-name/MDA
which switches the data partition mount point to be on the sdcard
and the line
Code:
/devices/platform/sdhci-tegra.0/mmc_host/mmc2 auto vfat defaults voldmanaged=sdcard1:auto
with
Code:
/devices/platform/sdhci-tegra.3/mmc_host/mmc0 auto vfat defaults voldmanaged=sdcard1:12
which mount your old data partition into the directory of the external sdcard
6- Repack the boot image as mentioned in the url in step 2
7- Copy the new boot image to the nabi2 sdcard
8- Once you copied the new boot image (e.g. new_boot.img), replace the current boot image with the new one using adb shell:
Code:
su
cat /sdcard/new_boot.img > /dev/block/platform/sdhci-tegra.3/by-name/LNX
9- Now the kernel is replaced and once you rebooted your external sdcard would be in use, but note that your device is now having an empty data partition on the external sdcard, so you have to setup everything from the beginning. Note also that your previous data partition is now mounted as an sdcard, however, you have to format it from ext4 to fat32 to work as an sdcard (you can do the format from setings->storage->sdcard format)​
ashahin1 said:
I managed today to hack my kids Nabi2 to enable Data2SD. I was to frustrated by the limited space in the tab. My kids were complaining about not being able to add more games. Thus, I decided to take the risk of modifying the mount points of the tab to allow the data partition to point to a partition in a large sdcard, instead of the limited 4.5 GB space in the internal storage.
Warning: I am not responsible of any damage as a result of following the next steps. Always make backups
Note: I have the last update (KitKat) installed in the Nabi2
1- Dump the boot image from an adb shell:
Code:
su
cat /dev/block/platform/sdhci-tegra.3/by-name/LNX > /sdcard/boot.img
2- Open this url http://android-dls.com/wiki/index.php?title=HOWTO:_Unpack,_Edit,_and_Re-Pack_Boot_Images
to see the instructions of how to unpack and repack the boot image. Note that, the splitimage script mentioned in the page can be found at https://gist.github.com/jberkel/1087743
Warning: do not do anything in the tutorial, just wait
3- Format an sdcard as one partition of ext4 type
4- Insert the sdcard in the nabi2
5- Use the tutorial in step 2 to extract the ramdisk contents from the boot image and then Modify the file "fstab.mt799" in the ramdisk folder by replacing the line
Code:
/dev/block/platform/sdhci-tegra.3/by-name/UDA /data ext4 noatime,nosuid,nodev,journal_async_commit,data=writeback,nodelalloc,errors=panic wait,check,encryptable=/dev/block/platform/sdhci-tegra.3/by-name/MDA
with
Code:
/dev/block/platform/sdhci-tegra.0/by-num/p1 /data ext4 noatime,nosuid,nodev,journal_async_commit,data=writeback,nodelalloc,errors=panic wait,check,encryptable=/dev/block/platform/sdhci-tegra.3/by-name/MDA
which switches the data partition mount point to be on the sdcard
and the line
Code:
/devices/platform/sdhci-tegra.0/mmc_host/mmc2 auto vfat defaults voldmanaged=sdcard1:auto
with
Code:
/devices/platform/sdhci-tegra.3/mmc_host/mmc0 auto vfat defaults voldmanaged=sdcard1:12
which mount your old data partition into the directory of the external sdcard
6- Repack the boot image as mentioned in the url in step 2
7- Copy the new boot image to the nabi2 sdcard
8- Once you copied the new boot image (e.g. new_boot.img), replace the current boot image with the new one using adb shell:
Code:
su
cat /sdcard/new_boot.img > /dev/block/platform/sdhci-tegra.3/by-name/LNX
9- Now the kernel is replaced and once you rebooted your external sdcard would be in use, but note that your device is now having an empty data partition on the external sdcard, so you have to setup everything from the beginning. Note also that your previous data partition is now mounted as an sdcard, however, you have to format it from ext4 to fat32 to work as an sdcard (you can do the format from setings->storage->sdcard format)​
Click to expand...
Click to collapse
If you are not sure which line to change, I have the fstab.mt799 file attached with this post. You can simply replace your file with this one.
ashahin1 said:
I managed today to hack my kids Nabi2 to enable Data2SD. I was to frustrated by the limited space in the tab. My kids were complaining about not being able to add more games. Thus, I decided to take the risk of modifying the mount points of the tab to allow the data partition to point to a partition in a large sdcard, instead of the limited 4.5 GB space in the internal storage.
Warning: I am not responsible of any damage as a result of following the next steps. Always make backups
Note: I have the last update (KitKat) installed in the Nabi2
1- Dump the boot image from an adb shell:
Code:
su
cat /dev/block/platform/sdhci-tegra.3/by-name/LNX > /sdcard/boot.img
2- Open this url http://android-dls.com/wiki/index.php?title=HOWTO:_Unpack,_Edit,_and_Re-Pack_Boot_Images
to see the instructions of how to unpack and repack the boot image. Note that, the splitimage script mentioned in the page can be found at https://gist.github.com/jberkel/1087743
Warning: do not do anything in the tutorial, just wait
3- Format an sdcard as one partition of ext4 type
4- Insert the sdcard in the nabi2
5- Use the tutorial in step 2 to extract the ramdisk contents from the boot image and then Modify the file "fstab.mt799" in the ramdisk folder by replacing the line
Code:
/dev/block/platform/sdhci-tegra.3/by-name/UDA /data ext4 noatime,nosuid,nodev,journal_async_commit,data=writeback,nodelalloc,errors=panic wait,check,encryptable=/dev/block/platform/sdhci-tegra.3/by-name/MDA
with
Code:
/dev/block/platform/sdhci-tegra.0/by-num/p1 /data ext4 noatime,nosuid,nodev,journal_async_commit,data=writeback,nodelalloc,errors=panic wait,check,encryptable=/dev/block/platform/sdhci-tegra.3/by-name/MDA
which switches the data partition mount point to be on the sdcard
and the line
Code:
/devices/platform/sdhci-tegra.0/mmc_host/mmc2 auto vfat defaults voldmanaged=sdcard1:auto
with
Code:
/devices/platform/sdhci-tegra.3/mmc_host/mmc0 auto vfat defaults voldmanaged=sdcard1:12
which mount your old data partition into the directory of the external sdcard
6- Repack the boot image as mentioned in the url in step 2
7- Copy the new boot image to the nabi2 sdcard
8- Once you copied the new boot image (e.g. new_boot.img), replace the current boot image with the new one using adb shell:
Code:
su
cat /sdcard/new_boot.img > /dev/block/platform/sdhci-tegra.3/by-name/LNX
9- Now the kernel is replaced and once you rebooted your external sdcard would be in use, but note that your device is now having an empty data partition on the external sdcard, so you have to setup everything from the beginning. Note also that your previous data partition is now mounted as an sdcard, however, you have to format it from ext4 to fat32 to work as an sdcard (you can do the format from setings->storage->sdcard format)​
Click to expand...
Click to collapse
If you don't have the time to do all these steps, I have the modified boot file attached here.
Yo can either follow steps 7 and 8 above to write it, or use the fastboot command as follows:
Code:
fastboot flash boot new_boot.img
Nabi2 not found
Hi, I purchased a reconditioned Nabi, which was reset back to stock. The wifi worked fine, until I updated it through the tablet. I am now on version 2.0 with no wifi. I have tried various options through NabiLab , however my Nabi is not recognised as being connected (although windows picks it up). Please help!
Swipe to restore
I am trying to return my nabi to stock, i can get to the screen that asks you to 'swipe to restore' but the screen is not responding. I dont have issues with the touchscreen normally
Aytul said:
I am trying to return my nabi to stock, i can get to the screen that asks you to 'swipe to restore' but the screen is not responding. I dont have issues with the touchscreen normally
Click to expand...
Click to collapse
That's weird...if you keep messing with it you may find a spot a little left, right, higher, or lower where you can grab the button to swipe....or you try to re-flash TWRP or maybe there's a new version of TWRP for your particular nabi software version.
did you ever get nabilab to see it? did you check the device manager to see if it was totally recognized? Are developer options enabled?
n3wt said:
That's weird...if you keep messing with it you may find a spot a little left, right, higher, or lower where you can grab the button to swipe....or you try to re-flash TWRP or maybe there's a new version of TWRP for your particular nabi software version.
did you ever get nabilab to see it? did you check the device manager to see if it was totally recognized? Are developer options enabled?
Click to expand...
Click to collapse
The Nabi is showing as a device, it's responds as it should up to the point of TWRP. I had to repeatedly press buttons to get to the restore swipe and have tried many times, unsuccessfully. Where do I enable developer options?
I am on version 2 (Nabi) and using the most up-to-date version of NabiLab. I am trying to restore to stock so that the software version goes back, as the update has stopped my wifi working. Even a factory reset doesn't take the Nabi software back further than v2.0
Aytul said:
The Nabi is showing as a device, it's responds as it should up to the point of TWRP. I had to repeatedly press buttons to get to the restore swipe and have tried many times, unsuccessfully. Where do I enable developer options?
I am on version 2 (Nabi) and using the most up-to-date version of NabiLab. I am trying to restore to stock so that the software version goes back, as the update has stopped my wifi working. Even a factory reset doesn't take the Nabi software back further than v2.0
Click to expand...
Click to collapse
For developer options you go to settings, scroll all the way down, if you don't see "Developer options" there, press About tablet, then repeatedly tap build number until it pops up and says "You are now a developer!", then go back and now you should see the Developer options menu item, press it and then make sure it's on at the top and that the USB Debugging option is checked.....then try nabilab again.
n3wt said:
For developer options you go to settings, scroll all the way down, if you don't see "Developer options" there, press About tablet, then repeatedly tap build number until it pops up and says "You are now a developer!", then go back and now you should see the Developer options menu item, press it and then make sure it's on at the top and that the USB Debugging option is checked.....then try nabilab again.
Click to expand...
Click to collapse
Yes this is enabled, as without it I am unable to run nabilab etc. The problem is TWRP & the version of software I am running on the tablet?
Aytul said:
Yes this is enabled, as without it I am unable to run nabilab etc. The problem is TWRP & the version of software I am running on the tablet?
Click to expand...
Click to collapse
Well, the touch issues are probably due to a bad build of TWRP but not necessarily the wrong one. The problem with nabilab not being able to see the tablet I think has to be drivers. Have you checked device manager to make sure there are no unrecognized things? 'cause the tablet show up as two separate things in there and it sounds like the USB storage part is working but not the adb and/or fastboot part(s).
n3wt said:
Well, the touch issues are probably due to a bad build of TWRP but not necessarily the wrong one. The problem with nabilab not being able to see the tablet I think has to be drivers. Have you checked device manager to make sure there are no unrecognized things? 'cause the tablet show up as two separate things in there and it sounds like the USB storage part is working but not the adb and/or fastboot part(s).
Click to expand...
Click to collapse
I've managed to sort the drivers by installing PDANet, then managed to sort TWRP by installing an older version. I've now updated to 2.1 on the Nabi but no luck with the wifi issue..i'm guessing it's really broken and it happening whilst updating may have been a coincidence?!
Aytul said:
I've managed to sort the drivers by installing PDANet, then managed to sort TWRP by installing an older version. I've now updated to 2.1 on the Nabi but no luck with the wifi issue..i'm guessing it's really broken and it happening whilst updating may have been a coincidence?!
Click to expand...
Click to collapse
It might just be broken but that's a heck of a coincidence... Do you have a backup from before the wifi issue started? If so, I'd try to thoroughly wipe everything but your external sd card and then restoring your backup and see if that helps.
n3wt said:
It might just be broken but that's a heck of a coincidence... Do you have a backup from before the wifi issue started? If so, I'd try to thoroughly wipe everything but your external sd card and then restoring your backup and see if that helps.
Click to expand...
Click to collapse
Hi, I bought it as a reconditioned did unit. Turned it on, updates it (wifi worked) and then had this problem, so no backup to go back to unfortunately

Categories

Resources