toolchain for building from source - Nook Touch General

Does anybody have downloaded toolchain files?
http://www.codesourcery.com/sgpp/lite/arm/portal/release1293 - links to https://sourcery.mentor.com/sgpp/lite/arm/portal/... and then to nowhere.
Even after loging.

Building the kernel? Building what?
There is the Google Android NDK for building native objects (for example libwhatever.so) or executables.

Renate NST said:
Building the kernel...
Click to expand...
Click to collapse
and u-boot from B&N sources

ucy74 said:
and u-boot from B&N sources
Click to expand...
Click to collapse
Yeah, u-boot and kernel are a bit different since they are not ELF.
I've not built those (although I have binary modified both).
Do you have a link for the latest B&N source?

Renate NST said:
Do you have a link for the latest B&N source?
Click to expand...
Click to collapse
I was tound file named "nook2_1-2.tgz" - somewhere on this forum...
I would like to add some (hardware) modules to kernel and change boot console from ttyS0 to ttyS1

ucy74 said:
I would like to add some (hardware) modules to kernel and change boot console from ttyS0 to ttyS1
Click to expand...
Click to collapse
Oh, gee. It's been so long since I've looked at the NST.
From what I remember:
ttyS0 is a 1.8V interface on that teeny connector.
ttyS1 is a 3.3V interface on the other teeny connector. (It goes through a level converter.)
See https://forum.xda-developers.com/showpost.php?p=61076373&postcount=22
Since the NST uses a separate image and ramdisk, the cmdline comes from u-boot.
Code:
commonbootargs=console=ttyS0,115200n8 initrd rw init=/init vram=16M video=omap3epfb:mode=800x600x16x14x270x0,pmic=${epd_pmic},
If you can get to fastboot then you can supply your own cmdline to experiment.

Renate NST said:
...ttyS0 is a 1.8V interface on that teeny connector.
ttyS1 is a 3.3V interface on the other teeny connector. (It goes through a level converter.)
See https://forum.xda-developers.com/showpost.php?p=61076373&postcount=22
Click to expand...
Click to collapse
I was following Your post and finally get access to both of ttyS's
Unfortunately ttyS0 RX pin in my NSTG is broken so I was swap u-boot.bin to made by mali100 one
Since the NST uses a separate image and ramdisk, the cmdline comes from u-boot.
Code:
commonbootargs=console=ttyS0,115200n8 initrd rw init=/init vram=16M video=omap3epfb:mode=800x600x16x14x270x0,pmic=${epd_pmic},
If you can get to fastboot then you can supply your own cmdline to experiment.
Click to expand...
Click to collapse
Can You paste whole Your commonbootargs phrase, also after last comma, from u-boot's printenv please?
Are You suggesting to update console by setenv commonbootargs parameters in u-boot menu editing?

There's console in xloader, console in u-boot, console in the kernel, console in Android.
They are all configured separately.
The cmdline for kernel is created in u-boot dynamically, but the tty spec is in that template.
You can just modify it.
Look for ttyS0 and change it to ttyS1
There was a whole thread on this but I can't seem to find it right now.

Renate NST said:
...You can just modify it.
Look for ttyS0 and change it to ttyS1
Click to expand...
Click to collapse
I was changing parameters by setenv in u-boot console
Code:
setenv commonbootargs console=ttyS1,115200n8 initrd rw init=/init vram=16M video=omap3epfb:mode=800x600x16x14x270x0,pmic=${epd_pmic},vcom=${vcom} androidboot.console=ttyS1
printenv
...
commonbootargs=console=ttyS1,115200n8 initrd rw init=/init vram=16M video=omap3epfb:mode=800x600x16x14x270x0,pmic=${epd_pmic},vcom=${vcom} androidboot.console=ttyS1
...
saveenv
and tablet is dead
so I was try switch back to previous settings booting with NookManager
(funny thing is: when first booting in NookManager console for ketnel booting was switched accordingly to my changed settings...)
Code:
setenv commonbootargs console=ttyS0,115200n8 initrd rw init=/init vram=16M video=omap3epfb:mode=800x600x16x14x270x0,pmic=${epd_pmic},vcom=${vcom} androidboot.console=ttyS0
printenv
...
commonbootargs=console=ttyS0,115200n8 initrd rw init=/init vram=16M video=omap3epfb:mode=800x600x16x14x270x0,pmic=tps65180-1p2-i2c,vcom=-1670 androidboot.console=ttyS0
...
saveenv
but still no success with proper boot - tablet is bricked
looks like some case before u-boot (battery (pmic), mmc?)
should I replace whole boot partition with backuped one?
There was a whole thread on this but I can't seem to find it right now.
Click to expand...
Click to collapse
I think maybe You mention this thread: [Solution]Yet another way to unbrick: unplug the battery for a while and further Aqq123 u-boot logic explanation

I'm confused what your present situation is.
You say that you blew out UART1 but then you have access to the u-boot console.
You say it's bricked, but you're not explicit where you are hung up.

Renate NST said:
I'm confused what your present situation is.
You say that you blew out UART1 but then you have access to the u-boot console.
You say it's bricked, but you're not explicit where you are hung up.
Click to expand...
Click to collapse
Sorry for being unprecise, troubles make me alvays littlebit in blue mood.
I have two nooks: working NSTG with blown uart0 RX and (currently) bricked NST.
Lets forget about NSTG - its not a topic of my mess
With the NST I was try to play with u-boot settings - swapping ttyS0 to ttyS1.
Currently, access to NST is possible only when boots from NookManager SD card.
I can break (from PC terminal) this SD boot and stay in u-boot console, change and save settings.
But after that , NST still cannot boot without SD card inserted.

So you are using an NST with a 1.8V level converter?
(The UART numbering is per the chip datasheet, starting at 1. The ttyS start at 0.)
I'm not familiar with the Nook Manager, never tried it.
Have you tried the old Noogie?
Can you see/fix what is broken on the internal EMMC?

Renate NST said:
So you are using an NST with a 1.8V level converter?
(The UART numbering is per the chip datasheet, starting at 1. The ttyS start at 0.)
Click to expand...
Click to collapse
Yes, I have level converted/available both of UARTs.
Have you tried the old Noogie?
Click to expand...
Click to collapse
Not yet. I will try to see the difference.
Can you see/fix what is broken on the internal EMMC?
Click to expand...
Click to collapse
I can mount mmcblk0p1 - boot partition via NookManager's ADB, so I assume eMMC is not broken.

ucy74 said:
I can mount mmcblk0p1 - boot partition via NookManager's ADB, so I assume eMMC is not broken.
Click to expand...
Click to collapse
Well, I meant that all the files in the boot partition are correct/ok.
If you have the console connected, then you can see where it's dying. Where?
I've had my head deep in the NTX readers (Nook, Kobo) so I've forgotten lots about the NST.
Don't you think that the NST is getting awfully old now?
Maybe time to upgrade?

If you have the console connected, then you can see where it's dying. Where?
Click to expand...
Click to collapse
I was thinking rather about wipe/replace boot partition - if the source of trouble was changing u-boot setenv.
Unfortunately I have only NSTG not NST working boot partition dumped for backup.
I was checking dumping bad NST partition against working NSTG boot backup.
There are differences in MLO, u-boot.bin, uImage, uRamdisk, uRecImg, uRecRam and romrestore.zip
This is quite predictable.
I was checking file from mdall's post - Need help for my NST to, with same differencies.
It may be question of version differ: my NST is 1.2.1 - mdall's files are from 2011...
Update:
I was prepared SD card with my bad boot partition - NST was not booting.
Then replace original MLO on SD card to MLO taken from mdall's boot files.
After that NST was booting from SD, load kernel, shows "starting up" image and finally power off failing install stg with "Install Failed" screen
So, looks like bricking may be original MLO trouble.
There will be some pmic (power chip) setup case because battery starts to charge only when boot from SD.
DONE!!!
NST is going back to life - it was the bad MLO case.
I've had my head deep in the NTX readers (Nook, Kobo) so I've forgotten lots about the NST.
Click to expand...
Click to collapse
Nook Glow Plus isn't available for sale outside US. Kobo Clara was seen in europe. Kindle wins.
Don't you think that the NST is getting awfully old now?
Maybe time to upgrade?
Click to expand...
Click to collapse
Well, question of sentiment to stuff which works, has been (at his time) well designed and had known guts...

bump
So maybe somebody has downloaded toolchain from past times to compile B&N sources.
Or can share link to downloadable one?

Try these (I haven't tested them, but they seem to be the original files):
Source: https://sourcery.mentor.com/public/gnu_toolchain/arm-none-linux-gnueabi/arm-2010q1-202-arm-none-linux-gnueabi.src.tar.bz2
Linux x86: https://sourcery.mentor.com/public/gnu_toolchain/arm-none-linux-gnueabi/arm-2010q1-202-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2
Windows x86: https://sourcery.mentor.com/public/gnu_toolchain/arm-none-linux-gnueabi/arm-2010q1-202-arm-none-linux-gnueabi-i686-mingw32.tar.bz2

Related

(for tereg) NoRecovery custom recovery

Hi tereg,
[SIZE=-1](If you are not tereg, you can stop reading this. I didn't PM because I needed to ship an attachment)[/SIZE]
Have a look at the attached (custom) recovery (pick it apart and diff it against the leak-V3/RUU recovery.img) using split_bootimg.pl and the gunzip | cpio pipeline.
You can flash it to your recovery partition and run it if you like, it doesn't do anything dangerous. Basically, it is the same thing as the Leak-V3(=RUU = OTA-2.1) recovery, with two major changes:
- /sbin/recovery service is turned off so this doesn't run automatically (and as a result you won't see the splash screen change from the 3 skating droids). You can run it manually, though, from the adb shell - just wait 8-10 seconds and adbd will come up.
- I added the shell (sh) and a few of the diagnostic tools (dmesg, dumpstate, logcat... and supporting dynamic link libraries, the linker, etc), and dropped in there both /system/bin/toolbox (HTC) and /system/xbin/busybox and created some of the symlinks so that an adb shell has a useful set of tools available. (Oh yeah, I added an /etc/fstab as a convenience for /system/xbin/mount. Note the system mtd partition mounts at /os-system so it won't cover up all the installed tools underneath /system in the boot image)
- I altered the init.rc (and default.prop) so that adbd will always come alive - not just when a race is won.
The base of this image (kernel, bootscripts, /sbin), is the leak-V3 recovery.img; everything else such as dynamicly linked executables and supporting dynamic libraries comes from Jcase's Plain Jane, which in turn comes from Leak-V3/OTA/RUU, so, essentially everything in this bootable recovery comes from HTC except the version of busybox in /system/xbin and mods to the init scripts and default.prop
Note that the NAND flash partition in the mtd device for the recovery is only something like 5.2 MB - I would have added more, but was starting to get tight on space.
If you want it to run as close as possible to the timing of the HTC leak-V3 recovery.img, what I would do would be the following:
- defer all the symlinking in init.rc (except for the "sh" and "ln", of course) and package that up into a shell script that you can run after the recovery has booted
- uncomment (re-enable) the "recovery" service (/sbin/recovery)
- maybe experiment and see if you can get the complete kernel boot sequence from dmesg without starting logcat as the first service (that's not done in the normal recovery).
The only other useful piece of info that I can think of at the moment is that you need to use the ---base option with mkbootimg with an address that starts with something like 0x11208000..... (I can't recall and my machine is down - crap.) You can discover the value of the kernel base address load offset for the Eris by snooping through a hexdump of the beginning of any valid Eris bootable image
cheers
bftb0
MD5s
5801babcdf4e6e5d51e5f775aad0a09e ErisNoRecovery-recovery-v0.9.0.img.zip
4d280b367be75e7e75563a6357575ea7 ErisNoRecovery-recovery-v0.9.0.img
Sent via my nearly dead crap Pentium II booted from a 2003 version of Knoppix - 256 megs of EDO RAM - woot!
Sorry, here's the attachment
I read it anyway.
Suck it.
Hungry Man said:
I read it anyway.
Suck it.
Click to expand...
Click to collapse
Same Here Brosidon,
Well, actually i attempted to read it. Then I got confused and went and got some beef jerkey.
mmm beef jerky. i read it to maybe there will be a fresh recovery menu for the eris.
i read somones got beef jerkey and not sharing *waves fist* four messin up kid
j/k
it would be nice if we got an updated recovery. especially now learning that we won't need/be able to format our sdcards using FroYo.
Actually, I don't mind if anybody reads or uses that - it just gets me off the hook when somone asks
"But what is this for?"
Now someone will ask, LOL
bftb0
bftb0 said:
Actually, I don't mind if anybody reads or uses that - it just gets me off the hook when somone asks
"But what is this for?"
Now someone will ask, LOL
bftb0
Click to expand...
Click to collapse
but what is this for??? can i root my eris 2.1 v3 leak??? can it make pizza out of code? jk jk lol,
Thank you, I got it now.
I will definitely be experimenting with this. I'll let you know if I have further questions.
Tereg, I'll be online tonight and can help with testing.

Minimal UI for LUKS encryption on the Wildfire

This is a basic gui I wrote to unlock my encrypted partitions during boot.
I'm running my /data and /sdcard partitions encrypted, and the "luksunlock" binary is launched from init.rc to read the password and unlock the encrypted partitions.
I have included my somewhat modified init.rc for those interested.
For more information about LUKS on Android see this blogpost, written by shawn (Seems I'm not allowed to have urls in the post, but Google for 'android luks' , first hit)
This works good on Wildfire, altough it should work fine on other phones as well. Just remember that you need to set up your partitions as in the luksunlock.c (or change the defines).
Dont forget to backup before you start playing around!
Good luck!
Thanks! i'll give a try!
Hi,
I tried to use your cryptsetup binary from your blog, but I have some issues that you'll sure have an answer:
I run ./cryptsetup luksFormat -c aes-plain /dev/block/loop2 and after i put the luks password it says 'Command failed', no logs, no other output, even using the -v flag...
Any clue?
Thanks in advance!
PS: the module dm-crypt is necessary for cryptsetup? could be this the error? I don't have it installed on the system because I can't find it for 2.6.35.9-cyanogenmod
tusabe said:
Hi,
I tried to use your cryptsetup binary from your blog, but I have some issues that you'll sure have an answer:
I run ./cryptsetup luksFormat -c aes-plain /dev/block/loop2 and after i put the luks password it says 'Command failed', no logs, no other output, even using the -v flag...
Any clue?
Thanks in advance!
PS: the module dm-crypt is necessary for cryptsetup? could be this the error? I don't have it installed on the system because I can't find it for 2.6.35.9-cyanogenmod
Click to expand...
Click to collapse
CM6.1 for wildfire uses a 2.6.32 kernel (see HCDR.jacob's post about his custom kernel for more info)
tusabe said:
PS: the module dm-crypt is necessary for cryptsetup? could be this the error? I don't have it installed on the system because I can't find it for 2.6.35.9-cyanogenmod
Click to expand...
Click to collapse
Yeah you really need dm-crypt support, either compiled into the kernel or as a module. You also need the AES ciphers support.
sigkill1337 said:
Yeah you really need dm-crypt support, either compiled into the kernel or as a module. You also need the AES ciphers support.
Click to expand...
Click to collapse
Hi! Yeah, that's what I was afraid of.... ok, but the problem is that i'm running CM6.1 with 2.6.35.9 which has no dm-crypt module neither compiled in kernel... where can i find some kernel with this modules included? Is for an HTC Desire (@Sympnotic )
Thanks in advance!
Great work and thanks for sharing @Sigkill. Working on building it here for my NexusOne with CM6.1.
BTW, I’m the lead on a project working on general secure Android distro – we’ve ported Tor, have an OTR IM app, and have supported other projects along those lines. Would love to talk more about supporting anyone working on this specific capability.
wow! awesome work!!! Very exciting news. Gonna give this a go on my MyTouch Slide
NathanFreitas said:
Great work and thanks for sharing @Sigkill. Working on building it here for my NexusOne with CM6.1.
BTW, I’m the lead on a project working on general secure Android distro – we’ve ported Tor, have an OTR IM app, and have supported other projects along those lines. Would love to talk more about supporting anyone working on this specific capability.
Click to expand...
Click to collapse
Seems really nice. I like the secure phone concept.
New Makefile and wiki info up
_hc from the @guardianproject has a new build process up for Crypsetup/LUKS which includes a Makefile compatible with Android NDK r5.
We have new instructions up on our wiki, as well.
I cannot post links under this account, but you can find the info on github if you search "LUKS" or just under our guardianproject account.
How did you create the encrypted partitions? Could you give some pointers for that. I am familiar with using dmcrypt/cryptsetup on desktop linux, I guess this works similar. What are the relevant device names? Did you run into any problems?
Calavera1 said:
How did you create the encrypted partitions? Could you give some pointers for that. I am familiar with using dmcrypt/cryptsetup on desktop linux, I guess this works similar. What are the relevant device names? Did you run into any problems?
Click to expand...
Click to collapse
Hi, sorry for the late answer,
/dev/block/mtdblock5 is the "userdata" partition. I formatted it and mount it to /encrypted-data during init:
mount yaffs2 [email protected] /encrypted-data nosuid nodev
The only file on this partition is "data.encrypted" file, which gets created in init.rc as a loopback device:
exec /system/bin/losetup /dev/block/loop0 /encrypted-data/data.encrypted
I created the "data.encrypted" file on my computer with cryptsetup and losetup, and copied all files from my old unencrypted userdata partition to it and then copied it back as a file to the formated userdata partition.
The sdcard "/dev/block/mmcblk0p2" partition is formated with "cryptsetup luksFormat", I did this also on my computer, saves some time. And then copy everything from the old unencrypted sdcard.
I did run in to one problem recently, my phone hung during boot, about 4 months after I started encrypting my phone.
Had to copy my data.encrypted file to my computer, mount it as a loopback device and do a fsck, and then copy it back to my phone.
I suspect this has to do with the filesystem not being umounted properly. (I have had this on my to do list for a while hehe)
Probably should make a script run during shutdown to cleanly "luksClose" the encrypted partition and then umount them. Not doing this is probably very crazy
I also want to fix it so my "/dev/block/mmcblk0p2" partition gets presented to my computer when i attach my usb cable (as it should do), so i can unlock it in ubuntu and copy images and files. Right now i have to take my memorycard out and put it into the computer.
I hope this post makes sense, it was written in haste =) Good luck!
sigkill1337 said:
Hi, sorry for the late answer,
/dev/block/mtdblock5 is the "userdata" partition. I formatted it and mount it to /encrypted-data during init:
mount yaffs2 [email protected] /encrypted-data nosuid nodev
The only file on this partition is "data.encrypted" file, which gets created in init.rc as a loopback device:
exec /system/bin/losetup /dev/block/loop0 /encrypted-data/data.encrypted
I created the "data.encrypted" file on my computer with cryptsetup and losetup, and copied all files from my old unencrypted userdata partition to it and then copied it back as a file to the formated userdata partition.
The sdcard "/dev/block/mmcblk0p2" partition is formated with "cryptsetup luksFormat", I did this also on my computer, saves some time. And then copy everything from the old unencrypted sdcard.
I did run in to one problem recently, my phone hung during boot, about 4 months after I started encrypting my phone.
Had to copy my data.encrypted file to my computer, mount it as a loopback device and do a fsck, and then copy it back to my phone.
I suspect this has to do with the filesystem not being umounted properly. (I have had this on my to do list for a while hehe)
Probably should make a script run during shutdown to cleanly "luksClose" the encrypted partition and then umount them. Not doing this is probably very crazy
I also want to fix it so my "/dev/block/mmcblk0p2" partition gets presented to my computer when i attach my usb cable (as it should do), so i can unlock it in ubuntu and copy images and files. Right now i have to take my memorycard out and put it into the computer.
I hope this post makes sense, it was written in haste =) Good luck!
Click to expand...
Click to collapse
I figured most of that out without your post and tried it on my desire (I created the luks partitions with adb on the phone though, worked anyway ). Then I couldn't figure out where my regular init.rc is stored (I could only find the one used by Clockwork Recovery), and then I figured I already spent enough time, tried a reboot (which of course didn't work). Then I couldn't even get into recovery (probably because its init.rc tries to mount /data which doesn't work? I didn't investigate any further). Flashed my backup with fastboot and was stuck again with my un-encrypted pre-experiment state
Oddly enough, it was no problem to unlock my encrypted SD-card from my computer (running ubuntu) while in recovery (clockword has an option to present the sd card to a computer connected via usb). Maybe the booted system handles this differently than recovery though? I didn't get a chance to try, as I couldn't boot after my encryption attempt.
I will try again after my algorithm and data structure exam this friday and report back
Is anybody using the UI on another device than the Wildfire? Does it work?
How much is the performance drain when using an encrypted /data partition?
Amazing work!
Did anyone manage to make sigkill1337's luksunlock build from source ?
I would like to change the path of the data/sdcard partitions to match my device but I tried many ways using the NDK and I can't get it to compile properly.
Is there any way to do this ?
I have been trying for days, I am getting literaly insane !
@sigkill1337 : could you give me some pointers ? I would appreciate a lot.
mount manpage said:
The bind mounts.
Since Linux 2.4.0 it is possible to remount part of the file hierarchy somewhere else. The call is
mount --bind olddir newdir
or shortoption
mount -B olddir newdir
or fstab entry is:
/olddir /newdir none bind
After this call the same contents is accessible in two places. One can also remount a single file (on a single file).
This call attaches only (part of) a single filesystem, not possible submounts. The entire file hierarchy including submounts is attached a second place using
mount --rbind olddir newdir
or shortoption
mount -R olddir newdir
Note that the filesystem mount options will remain the same as those on the original mount point, and cannot be changed by passing the -o option along with --bind/--rbind. The mount options can be changed by a separate remount command, for example:
mount --bind olddir newdir
mount -o remount,ro newdir
Click to expand...
Click to collapse
If nothing helps, you should always be able to bindmount it
I'd rather get sigkill1337's UI to compile...
Lots of nice security tweaks and settings could be done with a pre-boot GUI
Anyway, concerning encryption, I'll use the bind option for now, thanks for the tip.
But if anyone here could give me some pointers about compiling this stuff it would be great.
I managed to compile it by integrating luksunlock in Android source externals and main.mk but when I push it to my phone and modify init.rc to call it, it just does not work...
Other modifications are working (mount, mkdir, etc.) but the GUI won't show up
Sorry for the late reply.. But you could try running it from a shell when the phone is booted, just to verify that the binary starts (thats how I tested it without having to reboot my phone all the time)
My environment for building the source was setup using one of the tutorials online, nothing out of the ordinary
Im still running this on my phone, for almost 8 months now, I havent noticed that much in performance problems, the Wildfire was slow before i started using luks.
When i get a new phone (maybe SE Arc) i will be easier to see if performance is affected
There is an Issue for getting CM support for encrypted filesystems during boot:
Issue 2736: support encrypted filesystem from boot
If you want to get that feature, just "star" it, so it may get more attention.

Boot Logo Wipeing

I know this is a pissed off issue by many of you but I want to use my archos as an industrial tablet.
I've made a fancy boot animation but there is still the Archos entertainment your way logo at early boot.
I read about it at an archos gen5 thread that with aos-tools and the famous flash binary the logo can be altere to another 800x480 logo by flashing with the 0x060000 starting address. Other threads said that this works no more so I turned to the data/customization way but here the early logo is problem for.
A solution could be to wipe out and to have animation only at late stage. Is it possible somehow?
br, sodjas
Update:
I successfully compiled the flash utility:
http://code.google.com/p/aos-tools/
But ran into the problem the it needs flashrw.ko module.
I found it on openAOS site but unfortunately it is compiled for gen5 armv5 the load fails with vermagic assert error.
I read on archosfans forum thread that flashrw.ko is non public and confidential thing but it only contains a bunch of ioctl calls.
I disassembled it and it showed that it is made of intel_flash_cmd.c file.
Could anyone help me how to get the flashrw.ko module for armv7-a?
Sad news modinfo shows:
alias: char-major-10-243
license: Proprietary
description: flashrw
author: Archos
depends:
vermagic: 2.6.10_mvl402 ARMv5 gcc-3.4
It is Proprietary
Hi sodjas,
you should do a little more research on this issue.
sodjas said:
I've made a fancy boot animation but there is still the Archos entertainment your way logo at early boot.
I read about it at an archos gen5 thread that with aos-tools and the famous flash binary the logo can be altere to another 800x480 logo by flashing with the 0x060000 starting address. Other threads said that this works no more so I turned to the data/customization way but here the early logo is problem for.
A solution could be to wipe out and to have animation only at late stage. Is it possible somehow?
Click to expand...
Click to collapse
As you started to point out, there are different bootlogos for the differnt stages on start-up.
1. bootloader logo
2. ramdisk bootlogo
3. Android logo (animated)
The logo inside Android could be easily removed or replaced (at least using Urukdroid).
Also the ramdisk logo could be modified with some technical skills (ramdisk needs to be rebuild and replaced).
Replacing the first hardcoded bootloader logo, is something for the freaks, but in fact it is possible.
First of all you'll need read/write access to the mtd block devices created by the kernel. This would require at least SDE or Urukdroid installation.
The Archos tablets use embedded MMC as persistant storage.
All partitions of this device are mounted as block devices and could be tweaked by directly accessing them (e.g. using dd for low level access).
One could start by reading some sectors of the first raw partition, examine the structure, do some disassembly and find the location where the bootloader logo is stored. Not sure if it could be deleted without changing some lines of code.
In fact this is an expert thing, if something goes wrong, you'll have a true brick .
There'd been some posts around covering this topic.
sodjas said:
Update:
I successfully compiled the flash utility:
http://code.google.com/p/aos-tools/
But ran into the problem the it needs flashrw.ko module.
I found it on openAOS site but unfortunately it is compiled for gen5 armv5 the load fails with vermagic assert error.
I read on archosfans forum thread that flashrw.ko is non public and confidential thing but it only contains a bunch of ioctl calls.
I disassembled it and it showed that it is made of intel_flash_cmd.c file.
Could anyone help me how to get the flashrw.ko module for armv7-a?
Click to expand...
Click to collapse
AFAIK, there's no need for this kernel module on gen8 devices.
The gen8 devices do not use any raw NOR flash or NAND devices.
All access to the eMMC is done with mtd kernel driver using the OMAP mmc interface.
BTW there might be some parts of storage used as hidden sectors, but this is a kernel thing only.
But back to topic:
In fact you'll need to find the bootlogo in raw data of the bootcode, determine the format and replace the raw blocks of memory.
Maybe you'll also need to tweak the security checks in bootcode as well, because checksum will change is the bootlogo is replaced.
Anyway it's slightly difficult to do so, but it's not impossible
Have fun,
scholbert
Lot of interesing information thank you, I'll check the hints out... The checksum thing sounds serious
Anyway, thank you very much for your answer it contains a lot interesting and useful things for me!
br, sodjas
Hi sodjas,
you're welcome!
This might be of interest to:
http://forum.xda-developers.com/showthread.php?t=1018260
This guy already made a disassembly of boot code.
http://forum.xda-developers.com/showthread.php?t=1214674
This guy wrote some tools for mmc low level access.
Maybe they might help you as well.
Keep on posting, this is an interesting topic
Regards,
scholbert
@sodjas:
Just being curious, why do you want the archos as an industrial PC?
I'M asking because we have bought a very cheap development board
http://embedded-computing.com/low-runs-main-line-linux-android
where you can install everything you want.
It is definately not as powerfull as the archos, but it costs less then half of it.
And if you search for OK6410 you will find others that even have the Android 2.3 for that.
@scholbert:
Thank you very much one more time , hope we can bring out something interesting
@fzelle:
The answer for this is the circumstance when you are at a software development deparment surrounded with high level software guys and have an interesting and impressing task to build an RFID enabled industrial terminal with WIFI capability and a platform where you can easly build fancy touch based UI-s in just 3 months then you made choices like these -> to have a proof of concept thing -> to prove that your software is unique and feasible to develop -> to be able to go to exhibitions to make this interesting to investors -> later it is more then possible that we will say somebody who has the experience in hw building: OK we have this HW build us a similar one from OEM parts bundled in an industrial box...
@both:
Thank you guys for replying, this is such a nice community!
br, sodjas
Hey Guys!
This is what I've done:
1. studied the linked threads by scholbert
2. used the extended aos-tools and successfully extracted .aos file
3. now I'm seeing a:
Code:
-rw-r--r-- 1 root root 432 2011-10-10 17:21 digest
drwxr-xr-x 2 root root 4096 2011-10-10 17:21 raw
-rw-r--r-- 1 root root 10 2011-10-10 17:20 repack.sh
drwxr-xr-x 3 root root 4096 2011-10-10 17:20 root
-rw-r--r-- 1 root root 10 2011-10-10 17:20 unpack.sh
structure.
If I understood right scholbert the ramdisk is under root/data/androidnerged.squeashfs.secure
How can I manipulate this part?
How can I rebuild the ramdisk?
If I understand correct the GPL released part is only the initramfs and the kernel itself...
Another question is that the most interesting thing here for me is the aos-fix tool
What is the:
Code:
--clear-signature Clear the signature out of a SIGN block, or a flash segment header.
part excatkly good for?
Sorry for the lots of questions, I'm still very green on low level
br, sodjas
One more thing:
I have the following structure under raw:
Code:
-rw-r--r-- 1 root root 264 2011-10-10 17:21 11_EXT2
-rw-r--r-- 1 root root 264 2011-10-10 17:21 15_EXT2
-rw-r--r-- 1 root root 8 2011-10-10 17:20 4_EXT0
-rw-r--r-- 1 root root 3264456 2011-10-10 17:20 7_MMCF
-rw-r--r-- 1 root root 2878728 2011-10-10 17:20 8_MMCF
I guess 7_ and 8_ MMCF files are the interesting ones...
Can I find a desc about these because in vitalif's thread about tweaking the bootloaders he tells about mmcblk0 / 1 ...
I also wasn't be able to find the hex parts found by scholbert when he linked vitalif's thread...
Still very confused but keep on learning
br, sodjas
Of course i understand that, i'm a sw dev for 25 years.
I was lucky to see that board before we had some similar needs as you have.
What do you use for the rfid part?
Hi sodjas,
it's late but i'll try to answer your questions
sodjas said:
This is what I've done:
1. studied the linked threads by scholbert
2. used the extended aos-tools and successfully extracted .aos file
3. now I'm seeing a:
Code:
-rw-r--r-- 1 root root 432 2011-10-10 17:21 digest
drwxr-xr-x 2 root root 4096 2011-10-10 17:21 raw
-rw-r--r-- 1 root root 10 2011-10-10 17:20 repack.sh
drwxr-xr-x 3 root root 4096 2011-10-10 17:20 root
-rw-r--r-- 1 root root 10 2011-10-10 17:20 unpack.sh
structure.
Click to expand...
Click to collapse
So this is the firmware structure before it is installed on the device.
The update process is done by the bootcode and there's not that much information about it and not much we could actually do with these files.
So you'd better have a look at the installed partitions and the way to modify thoose.
sodjas said:
If I understood right scholbert the ramdisk is under root/data/androidnerged.squeashfs.secure
How can I manipulate this part?
How can I rebuild the ramdisk?
If I understand correct the GPL released part is only the initramfs and the kernel itself...
Click to expand...
Click to collapse
No, the squashfs file is the final rootfs mounted as a loop device by the stock firmware.
It's possible to modify this file, but if you do the checksum won't match and you'll have to tweak bootcode to ignore security checking.
So in fact this is not very comfortable, but doable.
The ramdisk is the the cpio file archive also beeing updated and included in the update. Don't know the structure right now because it's on my linux laptop.
sodjas said:
Another question is that the most interesting thing here for me is the aos-fix tool
What is the:
Code:
--clear-signature Clear the signature out of a SIGN block, or a flash segment header.
part excatkly good for?
Click to expand...
Click to collapse
I don't know this tool and i guess it has been made for the older platforms.
sodjas said:
One more thing:
I have the following structure under raw:
Code:
-rw-r--r-- 1 root root 264 2011-10-10 17:21 11_EXT2
-rw-r--r-- 1 root root 264 2011-10-10 17:21 15_EXT2
-rw-r--r-- 1 root root 8 2011-10-10 17:20 4_EXT0
-rw-r--r-- 1 root root 3264456 2011-10-10 17:20 7_MMCF
-rw-r--r-- 1 root root 2878728 2011-10-10 17:20 8_MMCF
I guess 7_ and 8_ MMCF files are the interesting ones...
Can I find a desc about these because in vitalif's thread about tweaking the bootloaders he tells about mmcblk0 / 1 ...
Click to expand...
Click to collapse
Yeah, as i pointed out:
By extracting the update file you got an "external view" of the system.
After the firmware is placed on the device these files are flashed to eMMC and got mounted as block devices.
So it's little different then.
sodjas said:
I also wasn't be able to find the hex parts found by scholbert when he linked vitalif's thread...
Still very confused but keep on learning
Click to expand...
Click to collapse
It's a bit complicated to explain... but quite easy in the end.
You'll have to read out the partitions as raw blocks.
All the low level stuff is mounted as /dev/block/mmcblk0p1
Please read out first using the dd command.
It will give a file at about 32MByte, ands it's all cryptic binary format (rawfs and below).
So if you like to enter this, there's not much information here and you'll have to digg out pieces.
Maybe it's better to modify the higher level parts...
Anyway, the very first bootlogo is called banner. The format is unkown, at least to me, and you'll have ot understand the rawfs file structure used by Archos.
Attached you'll find the mounts of stock and Uruk firmware.
I know that this is little abstract right now, but i'll have to take some sleep
Have fun!
scholbert
@fzelle:
the rfid part is for workflow monitoring in glass houses. we would like to deploy N terminals in each house and the workers can check-in, define a task they are working on and after they've finished can check out... simple but all info is gathered on a central place and is in order to make easier planning/observing/and calculating financial/investment related things...
the only problem is the musb_hdrc.ko -> it is not picking the FTDI chip if its plugged-in with the OTG cable at the same time. It is a known issue but I still have a lots of problem here:
1. if a change musb_hdrc.ko to my instance musb_hdrc.ko in /lib/modules it is not working at all, if I check it with modinfo it is different than the one in the GPL release. I guess these files under /lib/modules are also proprietary
2. I degbugged around and saw that the state changes for musb only work well if you first attach the OTG micro which has a grounded 5th pin ->then the state goes to a_idle and then attach the FTDI chip -> this is a working scenario
3. If you attach the OTG with already connected FTDI then it stuck at b_idle mode...
I started a thread about this:
http://forum.xda-developers.com/showthread.php?t=1288522
but it seems the proprietary drivers will be the root of the problem here...
@scholbert:
a mininum thing I owe you is a beer a lot of useful infos here again I'll check around and come back if there are some updates.
thank you guys!
br, sodjas
Hi,
thanks for appreciating.
But stupid me, i forgot one thing...
Quoting myself:
Anyway, the very first bootlogo is called banner. The format is unkown, at least to me, and you'll have ot understand the rawfs file structure used by Archos.
Click to expand...
Click to collapse
So there's a kernel driver for rawfs of course
The rawfs parts got mounted to /mnt/rawfs and present themselfs as files (avboot, banner,...).
No need to fiddle with the raw binaries to investigate the structure.
You'll have to be root to access this directory.
I'll do some research about the file format of the banner file
EDIT:
O.K., here we go... it is a gz compressed file representing raw pixel data.
So in fact this is the very first boot logo!
Should be possible to import this file to gimp or something.
Don't know if it breaks the avboot security check if it get's replaced. So please be careful!
EDIT2:
I got a Archos 101 so filesize will vary on other platforms.
The pixel data is put into 32bit format so each pixel requires a 4-byte value.
On A101 the resulting file size is of the uncompressed banner file is 2457600 bytes -> 1024x600x4
The simple framebuffer inside avboot uses only the lower 24bit of 32bit pixel data.
The most significant byte of each pixel is always set to 0xFF (0xFF000000 written as MSB first)
To completely blank screen (delete archos logo) you'll need to blank out all pixel.
Pixel data should look like this:
Code:
0xFF000000 x 1024 x 600 (for A101)
0xFF000000 x 800 x 480 (for A70)
You might create such a file with a hex-editor or use some scripting.
Good luck with your USB driver stuff!
Regards,
scholbert
Update
I modified both mmcblk0 and mmcblk0p1, my tab is still booting.
The modification of /mnt/rawfs/banner directly was my idea too, but I'm still afraid of some parts
I pulled the banner file and on ubuntu I can list the content, but can't extract it, and there are lots of questions like:
1. The file inside banner is named i240x400 -> this means that it is a 240x400 image but it would be more logical that it is 400x240 based on how "Entertaiment your way " looks...
2. Ubuntu's file roller can't extract it
3. When I open it in hex editor it has some meta info at the start of the file
and a question at the end:
How did you uncompress your banner file? I always get errors, maybe I used wrong syntax...
br, sodjas
Hi Sodjas,
Let me jump in on this to complement your study:
First, a BIG WARNING: touching any of this without patching signature check will result in bricking device.
Second BIG WARNING: Vitalif's mmc offsets for bootloader patches are valid for his device only. Mine has completely different values, I presume there are multiple bootloader versions out there. If patch is incorrect, or not done in the right order, instant brick.
7_MMC and 8_MMC are indeed interesting parts, these are the kernel+initrd images for android and recovery.
As stated by scholbert, to get a better understanding, you should take a look at /mnt/rawfs:
You'll see few files there:
avboot (second stage bootloader)
init (normal boot android, kernel+initrd)
recovery (recovery boot, kernel+initrd)
custom (sde boot, kernel+initrd)
banner (boot logo as it seems)
7_MMCF is flashed to init
8_MMCF is flashed to recovery
Splitting these files into zImage+initrd.gz is quite easy, I can give you some hints if you want. But I don't think it would serve you much for what you're trying to do: what you want is changing bootloader logo, so your goal is avboot+banner.
But again, don't modify anything on mmc0 until you're sure of what you do. First bootloader checks avboot signature and avboot checks init and recovery signature for sure. Without patch, you'll brick your device.
I don't know if avboot checks banner file though.
Hi Letama,
Thank you for joining.
Yes sure you are right the values vitalif mentioned were on different addresses BUT occured only once in the whole binary for both binaries, so I tried my luck and I think it is working because after reboot I have mmcblk0 and mmcbl0p1 still with the patched content and the tab boots without any problem
If I'm right then now I can start playing with altering mmcblk0p1 content because I have patched verify_hash function. Am I right?
Two big questions still open for me:
1. How to modify banner in an efficient way?
2. I understand now I have two patched bootloader binaries and can dd them on any A70IT, am I right or the patching process needs to be done/ device? I suppose not.
Update 2
In the meantime I uncompressed it on win with 7-zip I see the content I should modify to 0xFF000000 but I'm still not sure how flush this to all 0xFF000000 because there is some meta info at start. And as second, how to compress it, maybe the gzip -9 i240x400 will do its job as it was described at Gen5 boot logo tutorial...
br, sodjas
sodjas said:
because there is some meta info at start.
br, sodjas
Click to expand...
Click to collapse
Sorry AFAIK, no metainfo, just the pure 0xAABBCCDD 32bit values as scholbert told me before, sorry for that
br, sodjas
I realized again I'm a fool, or just archos guys wanted to make a joke
1. the banner file is named i240x400 BUT
2. when you extract it you got a 1 536 000 bytes sized file
3. I used my awsome maths skills and found out that: 1 536 000 / 4 <byte> = 384000 / 800 <pixels> = 480
So the raw image size is 800x480 and no 240x480 as the file name indicates...
I just need to flush 0xFF000000 384000 times in a file I think.
br, sodjas
sodjas said:
Yes sure you are right the values vitalif mentioned were on different addresses BUT occured only once in the whole binary for both binaries, so I tried my luck and I think it is working because after reboot I have mmcblk0 and mmcbl0p1 still with the patched content and the tab boots without any problem
Click to expand...
Click to collapse
Yes, search pattern was the same for me too, only different offsets. Good thing that code didn't change.
sodjas said:
If I'm right then now I can start playing with altering mmcblk0p1 content because I have patched verify_hash function. Am I right?
Click to expand...
Click to collapse
I only modified init and recovery, but I guess they wouldn't implement a specific signature check for boot logo. I'm suspecting that there is no signature check at all on it but I never checked avboot for that.
sodjas said:
1. How to modify banner in an efficient way?
Click to expand...
Click to collapse
To modify init and recovery, I wrote a small app that directly open /dev/block/mmcblk0p1, seek for the right position (with some file signature check to be sure I'm doing it right) then write. I make sure that I don't write a bigger file than current ones and it works fine for init/recovery. I believe that archos flasher does the same as existing file sizes are bigger than the firmware dump file sizes.
For your needs, I don't know if you will have to adjust size in the rawfs directory entry and/or avboot. Rawfs is quite straightforward, you can take a look at linux driver if you need to adjust directory entry.
sodjas said:
2. I understand now I have two patched bootloader binaries and can dd them on any A70IT, am I right or the patching process needs to be done/ device? I suppose not.
Click to expand...
Click to collapse
A dd of mmcblk0 (not mmcblk0p1, you need also first bootloader) should do the trick if the hardware doesn't change and doesn't need a different bootloader. I think that there is multiple revisions of hardware out there, improper bootloader for a specific hardware revision could not boot.
Safest bet would be to write a small patcher that would check pattern and stop if you don't have a known bootloader.

Completely Ruined my Partitions - Need Glow Restore IMG

Hello everyone,
Yesterday evening I bought a Nook Touch with Glow, went home, backed it up, or so I thought (my backup in retrospect is only 75mb and when I restore it, it does try to boot but says "Install Failed"), then proceeded to install android with Glownooter. Most of the programs I tried to launch closed after a few seconds (though I followed the instructions and installed both .zip parts), so I was going to restore and try again.
Following the restore instructions, I blew out the entire Nook partition table in preparation and now I feel I am screwed without external help. I tried everything last night for three hours...
Could anyone upload a stock .img file for me please? I really want to use the device and don't think it would be right for me to return it to the store for an exchange because of a mistake I made. Currently my SD card has nooter on it, but last night I had CWM open with the factory.zip someone posted and tried installing that zip to no avail... I even tried the n2T-Recovery_0.2.
Thank you.
trimalchioinwestegg said:
Hello everyone,
Yesterday evening I bought a Nook Touch with Glow, went home, backed it up, or so I thought (my backup in retrospect is only 75mb and when I restore it, it does try to boot but says "Install Failed"), then proceeded to install android with Glownooter. Most of the programs I tried to launch closed after a few seconds (though I followed the instructions and installed both .zip parts), so I was going to restore and try again.
Following the restore instructions, I blew out the entire Nook partition table in preparation and now I feel I am screwed without external help. I tried everything last night for three hours...
Could anyone upload a stock .img file for me please? I really want to use the device and don't think it would be right for me to return it to the store for an exchange because of a mistake I made. Currently my SD card has nooter on it, but last night I had CWM open with the factory.zip someone posted and tried installing that zip to no avail... I even tried the n2T-Recovery_0.2.
Thank you.
Click to expand...
Click to collapse
The partition table of the NSTG is the same as the NST.
I am in the same situation, and so far I have not had a huge success reviving mine but perhaps this thread could assist you in the right direction. Remember to save /rom information before trying anything
http://forum.xda-developers.com/showthread.php?t=1805936
good luck!
srgarfi said:
The partition table of the NSTG is the same as the NST.
I am in the same situation, and so far I have not had a huge success reviving mine but perhaps this thread could assist you in the right direction. Remember to save /rom information before trying anything
http://forum.xda-developers.com/showthread.php?t=1805936
good luck!
Click to expand...
Click to collapse
I know - I read that thread front to back last night and made no progress either.
Am I correct to assume that a backup image from someone would restore all partitions and completely solve our problem?
If so, if someone would upload an image in virgin state it would solve problems for everyone. I'm completely surprised that such an image is so elusive.
Anybody's full backup image will wipe out all your personalized data in /rom and /factory/rombackup.zip.
Generally, AFAIK, all these Nooters can screw up your Nook but not re-partition it or format it.
Make an effort to get to get your /rom back.
Renate NST said:
Anybody's full backup image will wipe out all your personalized data in /rom and /factory/rombackup.zip.
Generally, AFAIK, all these Nooters can screw up your Nook but not re-partition it or format it.
Make an effort to get to get your /rom back.
Click to expand...
Click to collapse
Is /rom an item unique to each device, or are you worried about me losing books/login information in "personalized data"? I had done nothing with my device except get past initial startup when I rooted it, so I have no personal items (books or otherwise) invested. I'm sorry if this is a silly question, but I don't understand.
Edit: Also, I used the magic (something) application to delete all partitions from the nook prior to the restore because it would not let me restore until then. If I had known my backup was invalid I would never have done that.
Attached is an image of what my restore contains. It does try to boot, but then says "Install Failed."
Note there is a romrestore.zip.
trimalchioinwestegg said:
I know - I read that thread front to back last night and made no progress either.
Am I correct to assume that a backup image from someone would restore all partitions and completely solve our problem?
If so, if someone would upload an image in virgin state it would solve problems for everyone. I'm completely surprised that such an image is so elusive.
Click to expand...
Click to collapse
Yes, that's the idea.
But as Renate mentions, that would overwrite you /rom partition with invalid data from another device (mac address, serial, and things like that).
But in the same situation I managed to salvage my /rom partition, so if I ever install such an image from someone elses' NSTG i coudl overwrite /rom with the data from my own device.
It could be also possible to generate such an image of an NSTG and then carefully unpack, delete the most sensitive files from /rom and repack the image to share. That way no sensitive infromation would be shared/compromised.
If you happen to stumble on such an image, please let me know.
BTW, those /boot files you have, could you pack them in a zip file and send it to me or post it here in the forums? I formatted my /boot partition and I could make good use of yours (no sensitive/personal information contained in there)
srgarfi said:
Yes, that's the idea.
But as Renate mentions, that would overwrite you /rom partition with invalid data from another device (mac address, serial, and things like that).
But in the same situation I managed to salvage my /rom partition, so if I ever install such an image from someone elses' NSTG i coudl overwrite /rom with the data from my own device.
It could be also possible to generate such an image of an NSTG and then carefully unpack, delete the most sensitive files from /rom and repack the image to share. That way no sensitive infromation would be shared/compromised.
If you happen to stumble on such an image, please let me know.
BTW, those /boot files you have, could you pack them in a zip file and send it to me or post it here in the forums? I formatted my /boot partition and I could make good use of yours (no sensitive/personal information contained in there)
Click to expand...
Click to collapse
I'm throwing in the towel because my /rom partition is gone and I understand all of that now. Tonight I will exchange for another (against my conscience) and make a proper backup before I do anything going forward.
In my research I found this:
search.4shared.com/postDownload/2YsbIxQJ/nook_glow_partition_files__023.html
It is all of the files except rom, and you will find the boot files in the 0 directory.
Good luck, and thanks for the help everyone.
Did you check both the p1 (/boot) and p3 (/factory) partitions to see if you had rombackup.zip?
Of course check p2 (/rom) for devconf.
Try repartitioning your Nook. You'll need CWR on an SD card with ADB or Noogie and Linux tools.
The script nookpart.sh is in my signature.
trimalchioinwestegg said:
I'm throwing in the towel because my /rom partition is gone and I understand all of that now. Tonight I will exchange for another (against my conscience) and make a proper backup before I do anything going forward.
In my research I found this:
search.4shared.com/postDownload/2YsbIxQJ/nook_glow_partition_files__023.html
It is all of the files except rom, and you will find the boot files in the 0 directory.
Good luck, and thanks for the help everyone.
Click to expand...
Click to collapse
Are you sure you can't recreate the partition table and mount /rom to get access to your files?
It is explained in the thread I mentioned. If so, then it would be fairly easy to recover your device.
Be careful when returning the NSTG to B&N, some of the operations performed are not covered in the warranty and they could want to charge you....
Anyway, thanks for that pointer! I'll see if I can use it to revive my NSTG
srgarfi said:
Are you sure you can't recreate the partition table and mount /rom to get access to your files?
It is explained in the thread I mentioned. If so, then it would be fairly easy to recover your device.
Be careful when returning the NSTG to B&N, some of the operations performed are not covered in the warranty and they could want to charge you....
Anyway, thanks for that pointer! I'll see if I can use it to revive my NSTG
Click to expand...
Click to collapse
Good thing I bought it at Staples.
Renate NST said:
Did you check both the p1 (/boot) and p3 (/factory) partitions to see if you had rombackup.zip?
Of course check p2 (/rom) for devconf.
Try repartitioning your Nook. You'll need CWR on an SD card with ADB or Noogie and Linux tools.
The script nookpart.sh is in my signature.
Click to expand...
Click to collapse
I fired up CWR but saw no USB activity on the computer (for ADB). Could you please tell me how to get ADB running? I did download your script and was interested in trying, but only got USB Disk mode on Noogie (which I couldn't get ADB to work with).
Thank you!
ADB on CWR can be a bit tricky.
It seems like the daemon dies sometimes on disconnecting and stuff.
http://forum.xda-developers.com/wiki/BN_Nook_Simple_Touch/Installing_ADB
http://forum.xda-developers.com/wiki/ADB
Boot it up on CWR first, then connect the USB cable.
In Windows it should show both Removable storage and ADB on the taskbar.
Code:
adb usb
adb shell
Make sure that you have the CWR with USB ADB and not Wifi ADB.
trimalchioinwestegg said:
I fired up CWR but saw no USB activity on the computer (for ADB). Could you please tell me how to get ADB running? I did download your script and was interested in trying, but only got USB Disk mode on Noogie (which I couldn't get ADB to work with).
Thank you!
Click to expand...
Click to collapse
Some easy instructions here http://forum.xda-developers.com/wiki/BN_Nook_Simple_Touch/Installing_ADB
And search for a file named "ADB + Fastboot + Drivers.zip" in the forum.
With all that you can get ADB running in a Windows machine in no time.
Renate NST said:
ADB on CWR can be a bit tricky.
It seems like the daemon dies sometimes on disconnecting and stuff.
http://forum.xda-developers.com/wiki/BN_Nook_Simple_Touch/Installing_ADB
http://forum.xda-developers.com/wiki/ADB
Boot it up on CWR first, then connect the USB cable.
In Windows it should show both Removable storage and ADB on the taskbar.
Code:
adb usb
adb shell
Make sure that you have the CWR with USB ADB and not Wifi ADB.
Click to expand...
Click to collapse
Forgive me, but where would I find CWR with USB ADB? I currently have CWM-based Recovery v5.0.2.7 from the Glownooter thread. The 2gb image.
At the bottom of the black screen I have some errors, though:
E:Can't mount /cache/recovery/command
E:Can't mount /cache/recovery/log
E:Can't open /cache/recovery/log
E:Can't mount /cache/recovery/last_log
E:Can't open /cache/recovery/last_log
Nothing reacts when I plug in USB.
srgarfi said:
Some easy instructions here http://forum.xda-developers.com/wiki/BN_Nook_Simple_Touch/Installing_ADB
And search for a file named "ADB + Fastboot + Drivers.zip" in the forum.
With all that you can get ADB running in a Windows machine in no time.
Click to expand...
Click to collapse
I did successfully install ADB and the Android SDK earlier, but it is not running on my Nook under CWM and I do not know how to get it on there. The guide says "The Nook must specifically have an adbd daemon running on either WiFi or USB. The stock Nook has no adbd."
Do you know how?
trimalchioinwestegg said:
I did successfully install ADB and the Android SDK earlier, but it is not running on my Nook under CWM and I do not know how to get it on there. The guide says "The Nook must specifically have an adbd daemon running on either WiFi or USB. The stock Nook has no adbd."
Do you know how?
Click to expand...
Click to collapse
You should have adb.exe somewhere. From a command window in windows (start menu, execute cmd.exe), go to the path where adb.exe resides and type "adb devices": this will tell if your nook is hooked and accessible.
srgarfi said:
You should have adb.exe somewhere. From a command window in windows (start menu, execute cmd.exe), go to the path where adb.exe resides and type "adb devices": this will tell if your nook is hooked and accessible.
Click to expand...
Click to collapse
I do.
C:\Users\XXXX\AppData\Local\Android\android-sdk\platform-tools>adb usb
error: device not found
C:\Users\XXXX\AppData\Local\Android\android-sdk\platform-tools>adb devices
List of devices attached
I don't believe ADB is running on the nook, which is currently booted into CWM.
I do see the showing USB Mass Storage Device in device manager, but I cannot access the device as I can in noogie.
You may have the CWR running WiFi ADB (which doesn't make sense to me because you can't select AP).
If you have USB ADB running on CWR you should see on the USB in the taskbar two things, Mass Storage and ADB.
Renate NST said:
You may have the CWR running WiFi ADB (which doesn't make sense to me because you can't select AP).
If you have USB ADB running on CWR you should see on the USB in the taskbar two things, Mass Storage and ADB.
Click to expand...
Click to collapse
How can I make CWR use USB?

Where can I locate (if anywhere) a full cyanoboot?

I'm looking for a full copy of Cyanoboot for the HD+. I know that there is a copy installed with CM 10.1 SD card installs, which works fine for me, however I would like to be able to have the full menu, fastboot, ect.
Thread for the Nook Color
http://forum.xda-developers.com/showthread.php?t=1522226
If I can find this, I plan to port Arch, and Debian Linux to this device, without android. I already have a chroot with full framebuffer access, but I think that this would be the next logical step. It runs really well.
Also, as a quick side question, has anyone gotten USB host mode to work? I haven't been able to try (female to female USB cable needed, same as the nook color)
EDIT:
https://github.com/NookieDevs/u-boot-hummingbird-ovation
I'm willing to compile from source, but I'm having trouble with finding what type of CPU is in this. I know it's a Dual core, 1500 MHz, ARM Cortex-A9, but I don't know what CPU in that lost would equate to.
kdb424 said:
I'm looking for a full copy of Cyanoboot for the HD+. I know that there is a copy installed with CM 10.1 SD card installs, which works fine for me, however I would like to be able to have the full menu, fastboot, ect.
Thread for the Nook Color
http://forum.xda-developers.com/showthread.php?t=1522226
If I can find this, I plan to port Arch, and Debian Linux to this device, without android. I already have a chroot with full framebuffer access, but I think that this would be the next logical step. It runs really well.
Click to expand...
Click to collapse
There is not a prebuilt cyanoboot (u-boot.bin) for the HD+. There is a github here. This is what verygreen built his with, and in his it is named uImage in his boot partition. It is also known as the second bootloader which is what breaks the lock from B&N.
He has not included the normal menu items because he could not get the volume up/down keys to work. Bokbokan on the HD overcame that by using just the n key to manipulate the cursor by a series of n pushes. So the HD has a boot menu. You can see his source posted on his CM10 thread. He does not have a github set up but the source is there so you can look how he set up the menu for HD.
Any chance that you know what CPU type (from the list that uboot has to offer) that the nook HD+ has in it? I have the source, and I'm ready to compile, but not sure which one it is. Once I'm past the bootloader issue, I should have no trouble setting up linux on this device.
kdb424 said:
Any chance that you know what CPU type (from the list that uboot has to offer) that the nook HD+ has in it? I have the source, and I'm ready to compile, but not sure which one it is. Once I'm past the bootloader issue, I should have no trouble setting up linux on this device.
Click to expand...
Click to collapse
Be sure to use the one from fattire, not the nookiedevs. It is an omap4.
EDIT: I added some commands I got from bokbokan some time back. See attached zip
EDIT 2: I removed the attchment and just going to post the commands here
export ARCH=arm
export CROSS_COMPILE=arm-none-linux-gnueabi-
export PATH=<location where u-boot source is extracted>/tools:$PATH
cd <location where u-boot source is extracted>
make distclean
make bn_ovation_config
make
This will compile the original source from verygreen initial u-boot source.
mkimage -A arm -O linux -T kernel -C none -a 0x83000000 -e 0x83000000 -n "2nd Bootloader" -d u-boot.bin uImage
Click to expand...
Click to collapse
Having trouble getting it to find OMAP4, but I'll continue looking into it after work. There's a compiled uImage, I'll try that also. I don't need to change the source really, so if it's compiled, I should be able to skip that step. Wish me luck.
seems that my cross compile environment is currently broken, and it looks like the uboot images for the HD won't work on the HD+. That'll stall my development until I can either fix it, or if someone else can compile and send it to me.
Booting to a black screen after compiling as per your instructions. Replaced u-boot.bin and uImage. Any ideas?
kdb424 said:
Booting to a black screen after compiling as per your instructions. Replaced u-boot.bin and uImage. Any ideas?
Click to expand...
Click to collapse
U-boot.bin is stock and should remain the same as before. Only uImage gets added to the boot partition so that it can be the second bootloader loaded by the stock u-boot.bin. Like you said, you can just copy verygreen's uImage and it should boot. You can get it from his image zips on his thread. The HD and HD+ uImage files are not compatible with each other.
Sent from my Nook HD+ running CM10.1 on emmc.
Grabbed the source from Bokbokan's thread for uboot, got compile to work as per your instructions, replaced uImage with my newly compiled uImage, and it just boots the EMMC without even acting like there is an SD card in there. It was booting the old uImage (I started with the CM10.1 SD card install and made sure that booted)
kdb424 said:
Grabbed the source from Bokbokan's thread for uboot, got compile to work as per your instructions, replaced uImage with my newly compiled uImage, and it just boots the EMMC without even acting like there is an SD card in there. It was booting the old uImage (I started with the CM10.1 SD card install and made sure that booted)
Click to expand...
Click to collapse
You should be using the source from the fattire github, not bokbokan's source if you want HD+.
Sent from my Nook HD+ running CM10.1 on emmc.
Whoops. That explains it. I misread. I'll check back in here once I get that done.
leapinlar said:
You should be using the source from the fattire github, not bokbokan's source if you want HD+.
Sent from my Nook HD+ running CM10.1 on emmc.
Click to expand...
Click to collapse
I got an error with the fattire source, but not the other sources, so I know my env is set up correctly.
{standard input}:265: Error: selected processor does not support ARM mode smc #0 Ideas?
EDIT:
Could be this. Looking into it.
http://forum.xda-developers.com/showpost.php?p=21393475&postcount=424
EDIT2: This is "wrong" but compiles. Testing
http://ding34.blogspot.com/2013/05/error-selected-processor-does-not.html
EDIT3: Still bypassing the SDcard. With the original uImage, it boots my SD, but with my new uImage from fattire source, it skips it.
kdb424 said:
I got an error with the fattire source, but not the other sources, so I know my env is set up correctly.
{standard input}:265: Error: selected processor does not support ARM mode smc #0 Ideas?
EDIT:
Could be this. Looking into it.
http://forum.xda-developers.com/showpost.php?p=21393475&postcount=424
EDIT2: This is "wrong" but compiles. Testing
http://ding34.blogspot.com/2013/05/error-selected-processor-does-not.html
EDIT3: Still bypassing the SDcard. With the original uImage, it boots my SD, but with my new uImage from fattire source, it skips it.
Click to expand...
Click to collapse
I got that error and it had to do with version of the toolchain. I had to downgrade to an earlier codesourcery, I think.
Sent from my Nook HD+ running CM10.1 on emmc.
It compiled just fine. If you want the fixed source (well, by fixed, I mean more compatible) let me know. It doesn't boot as far as I can tell, but I may just be oblivious to something.
kdb424 said:
It compiled just fine. If you want the fixed source (well, by fixed, I mean more compatible) let me know. It doesn't boot as far as I can tell, but I may just be oblivious to something.
Click to expand...
Click to collapse
Oh, you used the wrong branch in fattire. You need to do the second loader branch, not the master.
Sent from my Nook HD+ running CM10.1 on emmc.
leapinlar said:
Oh, you used the wrong branch in fattire. You need to do the second loader branch, not the master.
Sent from my Nook HD+ running CM10.1 on emmc.
Click to expand...
Click to collapse
Well, your were right, I cloned the master the first time. This time, I had the same errors, which that fixed also worked, but this time, I sit at a black screen. No fastboot, no anything. Just hangs.
kdb424 said:
Well, your were right, I cloned the master the first time. This time, I had the same errors, which that fixed also worked, but this time, I sit at a black screen. No fastboot, no anything. Just hangs.
Click to expand...
Click to collapse
Well, I know I was able to build it and made a change so that you hold the n key and it booted to stock instead of the hybrid. So you must have something wrong in your setup.
Sent from my Nook HD+ running CM10.1 on emmc.
Isn't there supposed to be a menu or something? I though there was a screen telling you what options you had. I mainly need fastboot access. I mean, I can do it with recovery, butI know fastboot a lot better.
kdb424 said:
Isn't there supposed to be a menu or something? I though there was a screen telling you what options you had. I mainly need fastboot access. I mean, I can do it with recovery, butI know fastboot a lot better.
Click to expand...
Click to collapse
That is why I pointed you to bokbokan's source for the hummingbird. He has an example in his of the menu. I think it is menu.c, but remember the hardware is different for the hummingbird so his will not work on the ovation. Also, I thought fastboot was only for partitions that were in fastboot format. The SD install is all MTD partitions.
Sent from my Nook HD+ running CM10.1 on emmc.
Got ya. I'll get on that. I was under the impression that one could simply be reconfigured. I'll look into the code when I finally get a day off. Thank you for all of your help.

Categories

Resources