yashsingh1/xdaforums huggingface dataset:
[Barnes & Noble Nook Tablet] CelticWebSolutions:
Even complete stock would currently be a massive step forward as far as I'm concerned :) The BN butchered version is terrible, so many things have been badly altered. SO if you can get a stock rom on here that would be brilliantly and a seriously big step in the right direction if you ask me.

If you think you can do it. DO IT :)
[Barnes & Noble Nook Tablet] AdamOutler:
Guys, we have the tools now.. We need Barnes and Nobel to become fully GPL compliant in order to start creating our own custom kernels.

This is important

Please show support: http://bookclubs.barnesandnoble.com...ligation-to-release-full-source/idi-p/1261771
[Barnes & Noble Nook Tablet] ckevinwelch:
Laureled, commented, and tipped to Engadget and The Verge.
[Barnes & Noble Nook Tablet] lavero.burgos:
Done @AdamOutler commented and "laureled" :D
[Barnes & Noble Nook Tablet] dodgepot:
Same here.

...And my axe!
[Barnes & Noble Nook Tablet] Kaninrail:
Laurelled and posted; hopefully B&N actually delivers on this.
[Barnes & Noble Nook Tablet] 28907126:
Thanks AdamOutler, just got my NT and I have been following all the threads here so I know how to play around with this toy. Amazed with all the voluntary efforts in the bootloader thing and the voices at B&N book clubs

I'm no developer but you have me vote and laurel!

And thanks for the hard work of others dev in figuring around the bootloader!
[Barnes & Noble Nook Tablet] dodgepot:
It would appear that this topic has been removed due to violation of community guidelines.
[Barnes & Noble Nook Tablet] AdamOutler:
I've informed Azrienoch and will be taking further action when I get home. Barnes and Nobel WILL NOT violate our rights any more.
[Barnes & Noble Nook Tablet] AdamOutler:
I need data forensics..

Someone who viewed the page BEFORE they took it down, please do the following:

1. click "Work Offline" in your browser <--- THIS IS IMPORTANT

2. Browse to this page: http://bookclubs.barnesandnoble.com...ligation-to-release-full-source/idi-p/1261771

3. take screenshots of everything including comments. Page 1 and 2.

4. post them here.
[Barnes & Noble Nook Tablet] LiuAnshan:
I'll see what I can do.

edit: Does anyone remember how to activate offlinemode in chrome? I can't seem to find the option.
[Barnes & Noble Nook Tablet] frodo9999:
I can´t access to the page without connection.

AdamOutler, in the google cache you have your post without comments;

http://webcache.googleusercontent.c...source/idi-p/1261771&cd=1&hl=es&ct=clnk&gl=es
[Barnes & Noble Nook Tablet] LiuAnshan:
Was just seeing that. You beet me to it.
[Barnes & Noble Nook Tablet] str3tchb0y:
here is what I have View attachment 845416
[Barnes & Noble Nook Tablet] hkvc:
Importance of a proper Android img file and its .... ;-)

Hi AdamOutler/All,

If you don't recreate a proper Android img file, uboot won't copy/load the NEW full Custom ramdisk back into memory properly because, it will use the original 2K header with the wrong size for ramdisk. This in turn can lead to you not being able to get the init in ramdisk running.

You could look at using the simple tools which I released for creating the custom ramdisk and if inturn if required custom kernel. Because it uses mkbootimg, the resultant img file will have proper size. Also it saves the BN header and puts it back in also (again required to work around the way default signed U-Boot from NookTab interprets the headers and the img file).
[Barnes & Noble Nook Tablet] PG101:
Moderator warning

So now some major cleaning has been done...so if you don't find your post it's because it doesn't belong here and has been deleted.

This is purely for boot loader hacking. If you can't help Adam, pls don't ask for eta or why it hasn't been done..

This is the second time a cleaning has been done.

I have not officially warned anyone yet, but next time infractions will fly and I may just lock this thread and not allow any further boot loader discussion in this fora.

Let's stay on topic guys..
[Barnes & Noble Nook Tablet] hkvc:
Only thing I would say/request is, If the post contains some useful Information, please don't remove it even thou it may not be directly related, it is still indirectly related. Like the post with info on how to create a custom SDCard based Android distro for NookTab, I posted it here because someone had asked a question here. It was a useful post for people interested in experimenting.
[Barnes & Noble Nook Tablet] bauwks:
bootloader bypass in SW

Hello all,

I was poking around the nook source code and saw something interesting in u-boot. When it loads a kernel/ramdisk pair into RAM, it doesn't verify the load addresses in the header. That means that I can load 2 independent payloads into anywhere I want in RAM.

What I have done is this:

* Created an SD card that the NT can boot from (contains MLO and signed u-boot.bin)

* Compiled a new u-boot without security checks and a default bootcmd to load "boot.img" off the sd card - this is my "kernel"

* created another payload which is designed to overwrite the stack so my new u-boot is called - this is my "ramdisk"

* packaged my "kernel" and "ramdisk" into an Android image and named it "flashing_boot.img" on my SD card

* boot my nook & see my (unsigned) u-boot take over the universe

(Note: my NT only tries to boot off of the SD card when it's USB is plugged in. is that expected?)

Try out a sample run with this flashing_boot.img. You should be able to unpack the original boot.img, change stuff, repack it, and boot it. I haven't tried that far myself though.

dl.dropbox.com/u/40331061/flashing_boot.img

I have other goodies too but the forum won't let me post links. boooooo.
[Barnes & Noble Nook Tablet] PG101:
I only interfere when it gets too off topic.
[Barnes & Noble Nook Tablet] chrmhoffmann:
Hi,

sounds like a major breakthrough to me.

What partition and filesystem does the SD card need? Can there be other ext4 partions on that SD card that would hold system and data?

Chris
[Barnes & Noble Nook Tablet] bauwks:
The first partition should have a FAT32 filesystem on it. I haven't tried having multiple partitions on the card. It took me _forever_ to figure out how to get it to boot off the SD card. I'll list what's on the card here:

It's a 8GB Transcend card

Standard PC partition table (not EFI). I based it on info from the nook color project:

The geometry in the partition table is set to 255 heads, 63 sectors/track, and the # of cylinders to fill the whole disk

1 partition that is bootable, starts at sector 63 and has a type code of 0x0c

Copy over MLO, and u-boot.bin from the latest 1.4.1 update.zip (from B&N website)

Copy my new flashing_boot.img onto the SD card

Copy the boot.img from the latest 1.4.1 update.zip

with nook power off, insert SD card, plug in USB (I plugged into my computer), and turn on nook (This is what took me forever to figure out)

I had some debug code in flashing_boot.img (memset the framebuffer to blue) so I know it ran, then it ran the boot.img. Next step is to modify the boot.img to verify the whole thing's working and enable permanent adb access.

I think it's feasible to have a whole Android install fully contained on an SD card without touching the B&N firmware.
[Barnes & Noble Nook Tablet] chrmhoffmann:
not picking up my boot.img?

Hi,

I seem to have it booting. I see black screen and I can run adb pull init.rc. The init.rc is not from my boot.img, but maybe from the flashing_boot.img.

Not sure what goes wrong. I repackaged my boot.img with hkvc-BN-mkbootimg.sh.

Chris
[Barnes & Noble Nook Tablet] bauwks:
Hi Chris,

I was successfully to get a modified boot.img booting from the SD card but I didn't use those tools so I'm not too familiar with them. Double check to make sure you packed everything correctly. I've often forgotten to prepend that security header to stuff before packing it into the final image.

This is the exact copy I got it working with (slightly different than the previous copy):

dl.dropbox.com/u/40331061/flashing_boot.img

If the screen turns black and you see white vertical "junk" on the right side of the screen then flashing_boot.img successfully started. That was my failed attempt at a modified boot logo :)
[Barnes & Noble Nook Tablet] chrmhoffmann:
Yes, I can see that white "rubbish" on the right side. Then screen goes black. Would you mind pasting the commands you use to repack the boot.img?

I was using hkvc's commands from here, but maybe I made mistake...

http://xdaforums.com/showpost.php?p=21011199&postcount=19

Rgds,

Chris

EDIT: sorry for the noise. I made something stupid. Forget it.
[Barnes & Noble Nook Tablet] AdamOutler:
Noone's commenting because it does not work. First, the file is nowhere near the size required for a kernel. Second, there's nothing special about this. We've always had the ability to load a custom Ramdisk.. Here's the output:

U-Boot 1.1.4-acclaim1.4_1.4.0.1029^{} (Nov 11 2011 - 12:34:20)

Load address: 0x80e80000
DRAM: 1024 MB
Using default environment

In: serial
Out: serial
Err: serial
hw_status 0x23 vbus_status 0x80
MAX17042+UBOOT: battery type=LG
MAX17042+UBOOT: gas gauge detected (0x0002)
MAX17042_STATUS (00h) is 0x0002
MAX17042+UBOOT: BATTERY Detected!
MAX17042+UBOOT:POR detected!
No valid max17042 init data found, assume no battery history
MAX17042_Version (21h) is 0x0092
MAX17042_DesignCap (18h) is 0x07d0
MAX17042_OCV (fbh) is 0xcd3c
MAX17042_FSTAT (fdh) is 0x3950
MAX17042_SOCvf (ffh) is 0x596f
uboot verify: 1d CONFIG is 2210 ; should be 2210 & 0xFDFB
uboot verify: 2a RELAXCFG is 083b ; should be 083b
uboot verify: 29 FILTERCFG is 87a4 ; should be 87a4
uboot verify: 28 LEARNCFG is 2406 ; should be 2406 & 0xFF0F
uboot verify: 18 DesignCap is 07d0 ; should be 205c
max17042_write_custom_para: use hardcoded values
ICHGTerm = 0x0140
use hardcoded Capacity 0x205c
VFSOC = 0x5d03
fullcap0=0x2067 VFSOC=0x5d03 remcap=0x1e23
MAX17042_STATUS (00h) is 0x0002
STATUS = 0x0002 -- clearing POR
MAX17042_STATUS (00h) is 0x0000
Max17042 init is done
SOC 93%, booting.
Board revision PVT
Booting from sd
Autobooting in 0 seconds, press <SPACE> to stop...

151552 bytes read

U-Boot 1.1.4 (Jan 8 2012 - 10:31:37)

Load address: 0x80f00000
DRAM: 1024 MB
Using default environment

In: serial
Out: serial
Err: serial
hw_status 0x23 vbus_status 0x80
MAX17042+UBOOT: battery type=LG
MAX17042+UBOOT: gas gauge detected (0x0000)
MAX17042_STATUS (00h) is 0x0000
MAX17042+UBOOT: BATTERY Detected!
MAX17042+UBOOT:WARM BOOT
No valid max17042 init data found, assume no battery history
MAX17042+UBOOT: warm config bad. soft POR
MAX17042_STATUS (00h) is 0x0002
Soft POR: Success!
MAX17042_Version (21h) is 0x0092
MAX17042_DesignCap (18h) is 0x07d0
MAX17042_OCV (fbh) is 0xcb78
MAX17042_FSTAT (fdh) is 0x3950
MAX17042_SOCvf (ffh) is 0x5557
uboot verify: 1d CONFIG is 2210 ; should be 2210 & 0xFDFB
uboot verify: 2a RELAXCFG is 083b ; should be 083b
uboot verify: 29 FILTERCFG is 87a4 ; should be 87a4
uboot verify: 28 LEARNCFG is 2406 ; should be 2406 & 0xFF0F
uboot verify: 18 DesignCap is 07d0 ; should be 205c
max17042_write_custom_para: use hardcoded values
ICHGTerm = 0x0140
use hardcoded Capacity 0x205c
VFSOC = 0x591a
fullcap0=0x2067 VFSOC=0x591a remcap=0x1cde
MAX17042_STATUS (00h) is 0x0002
STATUS = 0x0002 -- clearing POR
MAX17042_STATUS (00h) is 0x0000
Max17042 init is done
SOC 89%, booting.
Board revision PVT
Autobooting in 0 seconds, press <SPACE> to stop...
mmc read: Invalid size

2849988 bytes read
kernel @ 80088000 (2682952)
ramdisk @ 81080000 (157153)
Initrd start : 81080000 , Initrd end : 810a64c1Acclaim Board.

Starting kernel ...

As you can see, it's loading a ramdisk, then it reboots the system and the system boots normally from internal MMC.
[Barnes & Noble Nook Tablet] bauwks:
It's pretty ugly, but this is how I did it. I'm going to switch to some scripts eventually. The "boot.img" below is the stock boot.img from 1.4.1 update.zip file on B&N's web site.

dd bs=1 if=boot.img of=ramdisk.cpio.gz skip=2691360 # this number is the offset of the ramdisk in the file
dd bs=1 if=boot.img of=boot-img-no-ramdisk.img count=2691360
gunzip ramdisk.cpio.gz
mkdir ramdisk
cd ramdisk
... (unpack & modify here)
find . | cpio -H newc -o > ../a.cpio
cd ..
gzip -9 a.cpio
cat boot-img-no-ramdisk.img a.cpio.gz > test-boot.img
ls -l a.cpio.gz
hexedit test-boot.img # (fix size of ramdisk in header)
cp test-boot.img /media/boot/boot.img
umount /media/MyNOOK; umount /media/boot

---------- Post added at 12:12 PM ---------- Previous post was at 12:06 PM ----------

I didn't say it was a linux kernel, it's a second (unsecured) u-boot that gets loaded from the first (secured) u-boot. Check your output, the second u-boot is loaded at a different address than the first and has the date of when I built it:

U-Boot 1.1.4 (Jan 8 2012 - 10:31:37)

Load address: 0x80f00000

Since the second u-boot is unsecured, I can change it and run any kernel/ramdisk combo I want now on my NT.
[Barnes & Noble Nook Tablet] CelticWebSolutions:
All your replies always seem very negative and quite aggressive, or is it just the way I'm reading it?
[Barnes & Noble Nook Tablet] AdamOutler:
Read the logs I provided.
[Barnes & Noble Nook Tablet] CelticWebSolutions:
I guess you're just an abrupt person then :)
[Barnes & Noble Nook Tablet] Indirect:
No no Celtic, adam is just kind of an ass.

:)

Sent by breaking the sound barrier
[Barnes & Noble Nook Tablet] AdamOutler:
Yeah, I'm an ass. I've been dedicatedly hacking this device all week and I'm currently running a 30 hour marathon attempting to get this device booting autonomously... I wasted an hour on this and it didn't work. A boot image is nothing. show me a log that says it's booting from sdcard.
[Barnes & Noble Nook Tablet] Indirect:
Adam I'm just kidding around. :p

Sent by breaking the sound barrier
[Barnes & Noble Nook Tablet] bauwks:
Do you want me to add a log message to convince you? It's running my unsigned code so I can make it print out whatever I want.
[Barnes & Noble Nook Tablet] AdamOutler:
Yes please. Get a kernel message at around time 00-10.0 so we know its not a module. Like I said. My UART logs show the system rebooted, then booted from internal storage.
[Barnes & Noble Nook Tablet] CelticWebSolutions:
Lol!

I quite understand what you are saying and I'm sure everyone will be very grateful for everything you are doing but your replies to people are very condescending and actually quite aggressive sometimes which I personally believe is a little unnecessary.

Other members are only trying things out too and if it means that they've tried something that you've already tried (yes I know they should be reading the posts!) and are posting their findings they are only trying to help too.

There are much nicer ways of saying you've already tried something and pointing them towards your findings, also there is always the possibility that they have managed to get something to work that didn't seem to work for you ;) Unfortunately it's sounds a little immature and it makes it sound like you are saying you're the man who knows it all and everyone else is useless and should just stop which I'm sure is not what you are supposed to be coming across as.

Anyway, I digress. Back to the bootloader cracking everyone!

Between you all I know you'll all get it sorted, I've no doubt there are some very clever people on here and you'll all get there in the end, some findings from one person with findings from another then probably pieced together by somebody else to make a working hack which will allow us all to use these Nooks Tablets as they deserve :)

Keep up the good work everyone!

---------- Post added at 07:07 PM ---------- Previous post was at 07:05 PM ----------

Sounds like a plan :)
[Barnes & Noble Nook Tablet] chrmhoffmann:
confirm...

Hi,

not a pro. But i can confirm that this works. I modified the boot.img and I can log into it with adb and mount sdcard on /system.

Chris... Not sure what I can post here to show evidence?
[Barnes & Noble Nook Tablet] bauwks:
I made some changes in this version. I fixed the u-boot logo and added back the log message I think Adam was expecting. It was in a huge block on BN code that doesn't need to be duplicated in a 2nd u-boot execution.

To be clear, this starts another unsigned u-boot from the signed u-boot. Once in the unsigned u-boot I can do whatever I want in code - load whatever I want from wherever I want, jump to any address I want, etc. This particular version tries to load "boot.img" off the external sd card.

Also different in this version: The boot.img must not have the 228 byte "security headers" prepended to the kernel and ramdisks. That means you can use the standard mkbootimg tool to make images more easily.

dl.dropbox.com/u/40331061/bauwks_boot_v1.img

Oh, and if you need to change the kernel command line, I think, the one from u-boot (not the Android) image is used. I think it would be safe to hex edit this file to change the root fs partition name. Right now it is "/dev/mmcblk1p2" and I haven't yet determined how partitions are named on the device.
[Barnes & Noble Nook Tablet] chrmhoffmann:
works

Hi,

modified boot.img points to ICS binaries, but now I run into all sorts of problems :)

But in theory the approach works... Here's some "evidence":

http://dl.dropbox.com/u/21820416/logcat

http://dl.dropbox.com/u/21820416/dmesg
[Barnes & Noble Nook Tablet] CelticWebSolutions:
will it boot a vanilla gingerbread?
[Barnes & Noble Nook Tablet] chrmhoffmann:
ICS and EGL

Hi,

I copied the EGL libs from stock and now I get different errors. See

http://dl.dropbox.com/u/21820416/logcat4

E/ViewRootImpl( 1280): OutOfResourcesException initializing HW surface

E/ViewRootImpl( 1280): android.view.Surface$OutOfResourcesException: eglMakeCurrent failed EGL_BAD_ALLOC

E/ViewRootImpl( 1280):	at android.view.HardwareRenderer$GlRenderer.createEglSurface(HardwareRenderer.java:672)

E/ViewRootImpl( 1280):	at android.view.HardwareRenderer$GlRenderer.initialize(HardwareRenderer.java:502)

E/ViewRootImpl( 1280):	at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1300)

E/ViewRootImpl( 1280):	at android.view.ViewRootImpl.handleMessage(ViewRootImpl.java:2442)

E/ViewRootImpl( 1280):	at android.os.Handler.dispatchMessage(Handler.java:99)

E/ViewRootImpl( 1280):	at android.os.Looper.loop(Looper.java:137)

E/ViewRootImpl( 1280):	at com.android.server.wm.WindowManagerService$PolicyThread.run(WindowManagerService.java:745)

I wonder if this is not a problem with FB size. Otherwise we would have to build new kernel with newer PVR release and check if the problem goes away (and use stock panda bin libs).

So far for today. I guess that plain GB rom might have been easier.

Chris
[Barnes & Noble Nook Tablet] fattire:
This looks VERY cool.

If it's working... time finally to go get a NT :)
[Barnes & Noble Nook Tablet] Maggot226:
I'm kind of confused, is this going good or bad? Also, has anyone heard anything about the Adam/ B&N thing?
[Barnes & Noble Nook Tablet] bauwks:
I think it's good. I'm able to boot unsigned kernel & ramdisk off an SD card, and I've had a little success getting TWRP2 installed on the recovery partition. It boots but when I try to back up the B&N stuff it complains that it can't mount the SD card.

Unfortunately, I probably won't be able to do much more until next weekend.
[Barnes & Noble Nook Tablet] Nuckin:
bauwks: this looks like a great find, from what I gather we'll essentially be able to dual-boot the Nook Tablet. Have you tried a kernel compiled from the source provided by B&N? and does your method share partitions with the stock system?(ie. 2 different kernels but the same /system, /data etc..)

CelticWebSolutions: you need the title "Peacekeeper" lol

AdamOutlier: Please don't think your amazing word is not appreciated, without you, Loglud, and Indirect, this device would be a piece of crap and B&N would have sold half as many if not fewer.
[Barnes & Noble Nook Tablet] fattire:
If this works, it's game over for NT signed booting.
[Barnes & Noble Nook Tablet] camapghe:
Wow, great to hear a lot of progress made on making through B&N stupid barrier.

I guess, we should raise some donation fund for all devs that put so much effort in hacking through NT. I mean, kind of bounty rewards :D
[Barnes & Noble Nook Tablet] AdamOutler:
Regardless..... Its game-over for the Barnes and Nobel Nook Tablet.

/*
Barnes and Nobel Nook Tablet Mod Chip
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.

You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
-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
}
}

This code requires an ATTiny4313. It's too big for the ATTiny2313.
[Barnes & Noble Nook Tablet] Maggot226:
What is that, exactly?
[Barnes & Noble Nook Tablet] lenardo:
uart chip to bypass bootloader
[Barnes & Noble Nook Tablet] fattire:
If NT uboot is anything like NC uboot (and from a quick look it is), without a bunch of changes (which I have standing by :) ), you're going to have to use an identically sized logo.

So just do this, go to GIMP, and edit

distro/u-boot/tools/logo/o_nookcolor_logo_large.bmp

The key to not get a totally screwed up logo i is

Don't change the size, orientation, or bit depth for now

.

Interesting that they didn't bother to even change the bootimage file name from NC, which makes me hope it's going to be easy to re-do the fixes to uboot NC for a nice color splash and maybe even add a boot menu or something.

Anyway, edit this image to "Loading"-> "PWNing..." or whatever and I think that should convince the naysayers.

Update: How'd I miss this?! A helpful README.acclaim left in the directory! Says the same thing, but still amusing.
[Barnes & Noble Nook Tablet] Maggot226:
What's the point? Going that far just to load a custom rom... hell, it would be so much easier to root, you'd be voiding the warranty either way.
[Barnes & Noble Nook Tablet] bauwks:
It would be possible to dual boot, but on my Nook it's required that the USB is connected to something in order to boot from the SD card. I have no idea why that is or if it happens on all NTs. Because of that I'm investigating putting TWRP2 on the recovery partition so I can load test code onto the internal flash safely. I got it installed and it boots correctly when I hold down N & power but I couldn't perform a backup of the B&N OS.

I did compile the B&N kernel and it works great. Having the u-boot & kernel code makes this so much easier. I paired the B&N kernel with the TWRP2 Kindle Fire ramdisk because the Kindle Fire kernel didn't seem to boot. I don't have serial port console access to check why that is.