The First bootable SDCard for Nook Tablet

5,224 posts
Thanks Meter: 9,894
 
By AdamOutler, Retired Senior Recognized Developer on 12th January 2012, 03:58 PM
Post Reply Email Thread
Hi, I've produced a bootable SDCard. It requires a minimum of a 4Gig external SDCard. Download it here: http://www.multiupload.com/ZHHUB3FZFS

Problems:
Wifi does not work.

About:
I call it a RAM as opposed to a ROM because the filesystem is not image based, but flat-filesystem based, like your desktop. You can easily read and write as permissions are set for that. This can be useful for those who would like to play around with skinning the nook, or simply learn more about Android. You will need a Linux or Mac computer to read the EXT4 filesystem.

Instructions:
To make your own bootable SDCard, use Linux, untar.gz the file. Mount an SDCard, then use the following code block and your own knowledge of the command prompt.
Code:
sudo dd if=MyUnCompressedImage of=/dev/MySDCardRoot
where MyUnCompressedImage is the name of the uncompressed file(/home/adam/Desktop/AdamOutlerFile), and MySDCardRoot is the main SD device(/dev/sdb), and not a Partition (/dev/sdc1).


Using a Linux computer, you can modify your own custom ROM using this image. Just remember.. This is a development tool/ proof of concept and not a complete project.

Here are the technical details:
Partition1 contains:
MLO(xLoader)
uboot.bin(secure U-Boot)
flashing_boot.bin(unsecure U-Boot)
boot.bin(kernel)
Partition2 contains:
Linux/Android Filesystem -(On most Androids, this would be Ramdisk, System, Data, Cache and others)


Here is a video demonstrating that it works.
I am done working with Android for now and will be working on Ubuntu from SDCard as well as Recovery from SDCard (with damaged bootloaders).

Credits:
bauwks - for the non-modchip based crack
xIndirect -for providing knoledge and support
Loglud - for sending a tablet to me.
Pokeyi9000 - for locating the UART port
hkvc - for showing how to hack uboot
The Following 33 Users Say Thank You to AdamOutler For This Useful Post: [ View ] Gift AdamOutler Ad-Free
12th January 2012, 04:19 PM |#2  
Additional:
To make more storage space, increase the size of the system partition.
Adb is enabled by default and nook storage automount is disabled by default.
This RAM contains NTHiddenSettings, HomeCatcher, LauncherPro and a few other basics.

Motivation:
I have now officially met the goal stated in my first post in the Nook Tablet community seen here: http://forum.xda-developers.com/show...67&postcount=8. Last night, in the chat room, someone wanted to dispute the fact that I used the words "hardware solution".. If you'd like a hardware solution, this code can be run on an ATTiny4313 hooked to UART to totally obliterate the security on the nook tablet. Here is the code for the first hardware bootloader unlock I came up with for the Nook Tablet:
Code:
/*
Barnes and Nobel Nook Tablet UnBrickable Modchip
 Copyright 2011 Adam Outler - hkvc
This program is free software: you can redistribute it and/or modify
 it under the terms of the GNU General Public License as published by
 the Free Software Foundation, either version 3 of the License, or
 (at your option) any later version.
This program is distributed in the hope that it will be useful,
 but WITHOUT ANY WARRANTY; without even the implied warranty of
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 GNU General Public License for more details.
-Adam Outler  adamoutler, gmail.com
*/

boolean Position[3]={true,true,true};//Place holders for operation
int inByte; //current byte
String Message=""; //current string of bytes
//begin sketch

void setup() {
  Serial.begin(115200); //Initialize UART and set baud for serial
  Serial.println("I are your god now");
  }
void loop() {
  if (Serial.available()) {
    inByte = Serial.read();
    if ( inByte == 10 ){
      Message="";
    } 
    else {
      Message=Message +(char)inByte; //dump char into string
      if (Message == "OMAP44XX SDP # "){
        if ( Position[1]){
          Serial.println("O hai Nook Im in ur memory");
          Serial.println("mmcinit 0; fatload mmc 0:1 0x81000000 new.flashing_boot.img;");
          Serial.println("Mai kernel is ur kernel");
          Position[1]=(!Position[1]);
          return;

        } else if ( Position[2]){
          Serial.println("Ur Security is my target");
          Serial.println("mw.l 80e84794 e1a00000; mw.l 80e847fc e1a00000; mw.l 80e84808 e1a00000; mw.l 80e847a0 e1a00000;");
          Serial.println("Ur Security is neutralized");
          Position[2]=(!Position[2]);
          return;
        } 
        else if ( Position[3]){
          Serial.println("boot mai kernel now");
          Serial.print("booti 0x81000000");
          Serial.println("k thx bai");
          Position[3]=(!Position[3]);
          lockup;
        }
      }  
    }
  }
  if (millis()>=60000){
    lockup;
  }
}
void lockup(){
  while(true){
    delay(50000);//program cannot end, only sleep
  }
}
however, the need for the "UnBrickable Modchip" was obsoleted while I was waiting for parts to arrive.. Bauwks method works almost as well
12th January 2012, 07:01 PM |#3  
Senior Member
Thanks Meter: 2
 
More
This is awesome and really great work. I can't see the book to well so I was wondering what os this is running. From your descriptrion you have ubuntu to the sd. Also do we have to have linux to make this work or can I do it with windows. I know its not done but was wondering what your end goal is.
12th January 2012, 07:10 PM |#4  
Quote:
Originally Posted by sungod88

This is awesome and really great work. I can't see the book to well so I was wondering what os this is running. From your descriptrion you have ubuntu to the sd. Also do we have to have linux to make this work or can I do it with windows. I know its not done but was wondering what your end goal is.

This is not Ubuntu. That is a separate project. I don't have any goal with this, it is a proof of concept and it is enough to get the Nook Tablet totally booting an unsecure "ROM" from the sdcard. As I stated,
Quote:

Adb is enabled by default and nook storage automount is disabled by default.
This RAM contains NTHiddenSettings, HomeCatcher, LauncherPro and a few other basics.

otherwise it's mostly nook... However it's unlocked bootloader, unsecure kernel, flattened filesystem ramdisk-system-data-cache, and booting from SDCard.
12th January 2012, 07:19 PM |#5  
Senior Member
Thanks Meter: 2
 
More
That is awesome so it is similarly can be similar to the cynagen mod 7 for nc? With the insecure kernel a dev could make their own. If I knew how I would do it myself since I have tons of free time. Anyway you could point me in the right direction to learn? I would love to help
12th January 2012, 07:31 PM |#6  
Quote:
Originally Posted by sungod88

That is awesome so it is similarly can be similar to the cynagen mod 7 for nc? With the insecure kernel a dev could make their own. If I knew how I would do it myself since I have tons of free time. Anyway you could point me in the right direction to learn? I would love to help

Download the image, make a card and start learning how to work with Linux. You can learn alot by using an example. After that, grab source from the Kindle Fire, remove the stupid modules which fail to load and use that kernel source to build your own.
The Following 4 Users Say Thank You to AdamOutler For This Useful Post: [ View ] Gift AdamOutler Ad-Free
13th January 2012, 02:46 AM |#7  
Senior Member
Flag Guatemala
Thanks Meter: 6
 
More
Tried with a 16gb sd but seems to take a looooot of time, is that normal?


Nvm I aborted it but tried it, actually it worked but took me to nook tablet welcome screen (my brother freaked out bcuz he though he lost all his stuff)
13th January 2012, 03:49 AM |#8  
The first boot will always take a long time. It has to build a cache because it has no data.
13th January 2012, 04:30 AM |#9  
Senior Member
Flag Guatemala
Thanks Meter: 6
 
More
Quote:
Originally Posted by AdamOutler

The first boot will always take a long time. It has to build a cache because it has no data.

I mean when you make your SD card it takes a while to complete (maybe bcuz I was using Vmware Ubuntu), but I got it, Thanks.
13th January 2012, 11:46 AM |#10  
The_Joe's Avatar
Senior Member
Flag Tacoma, Wa
Thanks Meter: 49
 
More
Great work man! I will be trying this out tomorrow.

Now that I FINALY have a NT
23rd January 2012, 01:33 AM |#11  
Senior Member
Thanks Meter: 27
 
More
pretty sick. i just got my parents a nook color, and they're booting cm7 from sdcard. would be awesome for the nook tablet to do the same, and this seems to enable development in that direction. thanks!
Post Reply Subscribe to Thread

Tags
development

Guest Quick Reply (no urls or BBcode)
Message:
Previous Thread Next Thread
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes