yashsingh1/xdaforums huggingface dataset:
[Nook Color Android Development] jschill31:
Hello all,

Either someone fixed the black screen after wake or I found an app that helps as a temp fix. On the build I made this evening the UI is running smooth and quick. I installed a free app from the market called Wake Lock. It seems to keep some small resources running when the screen is shut off. The screen has been coming back to life, I have not tested it for long periods of time yet but it is working for 5 minutes or so... I am going to laugh if one of you pushed something that fixed the black screen but for now I am happy to continue to play with the UI and actually get a true feel for some Jelly love. BTW, WiFi is also surviving reboot for me at this point...things are looking good!

You guys rock!

Update, the screen survived overnight which was about 7 hours.
[Nook Color Android Development] krylon360:
libwvm.so error suppression change is now merged in cm.
[Nook Color Android Development] newellj79:
Newbie trying here, trying to build. Can I pull the proprietary files from a device running cm7, or does it need to be cm9? Thanks.
[Nook Color Android Development] newellj79:
A couple of questions. I went ahead and pulled the proprietaries from a cm7 device. Anyways, when i run the envsetup.sh script and try to select encore userdebug it says dependency's not found. Running brunch encore kicked out the same error but the build started anyways. We'll see what happens. Am I on the right track and/or missing something. (ive been following fattires google docs build guide. Thanks guys!
[Nook Color Android Development] eyeballer:
You'll need to pull from a CM9 rom, or get them from the repo that was posted a few pages back.

---------- Post added at 09:09 AM ---------- Previous post was at 08:51 AM ----------

Yeah a wake lock should save it. Probably not great for battery life but at least it doesn't die. We originally had to do similar workarounds on cm7 too.
[Nook Color Android Development] jschill31:
BTW, both WiFi and the display did finally stop responding after about 8 hours. Wipe of dalvik and cache brings them back to life again. My guess is the WakeLock app let go of whatever resources it was holding. I am sure some tweaking will advance this and keep the Nook alive. I used the default settings just to test the theory so I am sure there is room to fine tune...battery life was not a huge drain. It will at least allow for further testing than I had before so I am a happy camper.:good: BTW, the UI is very responsive...reminds me of CM7. The overall speed is not there yet but it has huge potential.

Cheers
[Nook Color Android Development] fattire:
krylon--

don't forget that if you wnat hwcomposer and other parts of omap3 to build you'll need to add "hwcomposer.omap3" etc in device.mk
[Nook Color Android Development] newellj79:
Eyeballer, i pulled the files from the zip like you recomended on irc but i am still getting the dependency file errors. Any suggestions?
[Nook Color Android Development] ManelScout4Life:
Doesn't seemed to have worked but I will try once again just to be sure
[Nook Color Android Development] krylon360:
That error is fine. Its because we aren't merged into cm yet.
[Nook Color Android Development] krylon360:
We could prob re-enable the feature in init. Its still there, just commented out
[Nook Color Android Development] inportb:
If you've been building with AndBot, you might have run into a couple of issues. Here's how you could fix them.

adb not detecting the Nook

inside AndBot, do

sudo cp -a ~/.android /root/
adb kill-server
sudo adb devices

make: *** No rule to make target `vendor/bn/encore/proprietary/usr/share/alsa/pcm/surround71.conf', needed by `out/target/product/encore/system/usr/share/alsa/pcm/surround71.conf'. Stop.

inside AndBot, do

touch vendor/bn/encore/proprietary/usr/share/alsa/pcm/surround71.conf

"mkimage" command not found - U-Boot images will not be built

inside AndBot, do

sudo apt-get update
sudo apt-get install u-boot-tools

If you cannot get adb working, I'd recommend getting the prebuilt/proprietary files from an existing cm9/cm10 update.zip. As of now, surround71.conf seems to be a common issue because it is missing in some cm9 update.zip's, but I expect the workaround to hold up for now.

If you haven't started building your own, I encourage you to do so; it's easy ;)

Good luck!
[Nook Color Android Development] krylon360:
there were some things he left out. Those will need to be added before your touch screen will work.
[Nook Color Android Development] newellj79:
thanks. i will try a build then.
[Nook Color Android Development] haze_nme:
I just made a new branch that has another commit to attempt to get the ft5x06 drivers working.

The branch is called ts-fix-test. If you want to test it out, change encore-omap3-3 to ts-fx-test for the revision in your local_manifest.xml if you are syncing with my repo.
[Nook Color Android Development] newellj79:
My build is getting stuck here. This is the last little bit..

ost/linux-x86/obj/EXECUTABLES/mksnapshot_intermediates/experimental-libraries.cc EXPERIMENTAL off external/v8/src/collection.js external/v8/src/proxy.js

Protoc: out/target/product/encore/obj/STATIC_LIBRARIES/libwebrtc_apm_intermediates/proto/external/webrtc/src/modules/audio_processing/debug.pb.cc <= external/webrtc/src/modules/audio_processing/debug.proto

Protoc: out/target/product/encore/obj/STATIC_LIBRARIES/libwebrtc_apm_intermediates/proto/external/webrtc/src/modules/audio_processing/test/unittest.pb.cc <= external/webrtc/src/modules/audio_processing/test/unittest.proto

Install: /home/jeremy/android/system/out/target/product/encore/system/usr/icu/icudt48l.dat

Install: /home/jeremy/android/system/out/target/product/encore/system/vendor/etc/audio_effects.conf

Copy: out/target/product/encore/system/usr/idc/cyttsp-i2c.idc

Copy: out/target/product/encore/system/usr/idc/ft5x06-i2c.idc

Copy: out/target/product/encore/system/usr/keylayout/gpio-keys.kl

Copy: out/target/product/encore/system/etc/firmware/ti-connectivity/wl128x-fw-4-mr.bin

Copy: out/target/product/encore/system/etc/firmware/ti-connectivity/wl128x-fw-4-plt.bin

Copy: out/target/product/encore/system/etc/firmware/ti-connectivity/wl128x-fw-4-sr.bin

Copy: out/target/product/encore/system/etc/firmware/ti-connectivity/wl127x-fw-4-mr.bin

Copy: out/target/product/encore/system/etc/firmware/ti-connectivity/wl127x-fw-4-plt.bin

Copy: out/target/product/encore/system/etc/firmware/ti-connectivity/wl127x-fw-4-sr.bin

Copy: out/target/product/encore/system/etc/firmware/ti-connectivity/wl1271-nvs.bin

Copy: out/target/product/encore/system/etc/firmware/ti-connectivity/wl1271-nvs_127x.bin

Copy: out/target/product/encore/system/etc/firmware/TIInit_7.2.31.bts

Copy: out/target/product/encore/system/lib/hw/overlay.omap3.so

Copy: out/target/product/encore/system/etc/vold.fstab

Copy xml: out/target/product/encore/system/etc/media_profiles.xml

Copy xml: out/target/product/encore/system/etc/media_codecs.xml

Copy: out/target/product/encore/system/bin/clear_bootcnt.sh

Copy: out/target/product/encore/system/lib/hw/alsa.omap3.so

Copy: out/target/product/encore/system/lib/libaudio.so

Copy: out/target/product/encore/system/bin/log_battery_data.sh

make: *** No rule to make target `vendor/bn/encore/proprietary/usr/share/alsa/pcm/surround71.conf', needed by `out/target/product/encore/system/usr/share/alsa/pcm/surround71.conf'. Stop.

make: *** Waiting for unfinished jobs....

jeremy@jeremy-VGN-FW560F:~/android/system$

Can anyone get me past this?
[Nook Color Android Development] haze_nme:
Just a few posts back ^^^

touch vendor/bn/encore/proprietary/usr/share/alsa/pcm/surround71.conf

Or sync your vendor files with this repo:

https://github.com/hazenme/android_vendor_bn_encore
[Nook Color Android Development] ManelScout4Life:
I believe you have a slight typo. ts-fix-test not ts-fx-test

It's building now. I'll post the outcome when it's done

---------- Post added at 01:54 PM ---------- Previous post was at 01:23 PM ----------

Here's a new forwarded PM

I also have no ts support with the latest changes
[Nook Color Android Development] keyodi:
We'll need to modify the cyttsp driver to release the OMAP_CYTTSP_RESET_GPIO and OMAP_CYTTSP_GPIO gpios, if the ft5x06 ts is detected.

As a simple test change the static int cyttsp_dev_init(void) in the board-encore-peripherals.c to this:

static int cyttsp_dev_init(void)
{
gpio_free(OMAP_CYTTSP_GPIO);
gpio_free(OMAP_CYTTSP_RESET_GPIO);

return 0;
}
[Nook Color Android Development] ManelScout4Life:
I don't want to seem like a noob but how would I do this

Edit: i think i got it
[Nook Color Android Development] tomsawyer14:
It's probably a dumb question but how can I determine the version of screen hardware I have? The build I'm using is fresh as of a few hours ago and I can confirm the black screen issue and having to wipe cache/dalvik on reboot for wifi to start working again. Also Wake Lock does appear to help, as does installing the JB gapps which I of course remembered to do without installing the old ones 3 times *ahem*.

So, better question: how can I help without being in the way or annoying?
[Nook Color Android Development] haze_nme:
I am adding an else statement to make it release the GPIO's only if it does not detect the GPIOs for cyttsp.

There will be a new branch to test soon that will work for both touchscreens.

Thanks Keyodi!
[Nook Color Android Development] ManelScout4Life:
If your touchscreen works, you have the old hardware
[Nook Color Android Development] eyeballer:
If your touchscreen currently works with fattire's local_manifest then you have the older one and what you're experiencing is perfectly normal. Once it enters deep sleep the screen dies (other than backlight) and wifi is hit or miss.

bowguy just confirmed that with haze_nme earlier changes and keyodi's update from a couple of posts back the touchscreen driver now works for the newer touchscreens!

Building together and fixing together, this is what the "no posted builds" policy is all about, more contributions from the community :)
[Nook Color Android Development] ManelScout4Life:
Keyodi's fix works!
[Nook Color Android Development] haze_nme:
The code keyodi posted was to test it. The else statement is needed for the cyttsp drivers to work. Your build with the test fix probably will break the touchscreen on older nooks.
[Nook Color Android Development] jromney:
I've been able to repo sync and build successfully for the past couple of days. Today when I when to build I got the following error

frameworks/native/libs/ui/FramebufferNativeWindow.cpp: In constructor 'android::FramebufferNativeWindow::FramebufferNativeWindow()':
frameworks/native/libs/ui/FramebufferNativeWindow.cpp:100:19: error: 'framebuffer_device_t' has no member named 'numFramebuffers'
frameworks/native/libs/ui/FramebufferNativeWindow.cpp:101:19: error: 'framebuffer_device_t' has no member named 'numFramebuffers'
frameworks/native/libs/ui/FramebufferNativeWindow.cpp:102:34: error: 'framebuffer_device_t' has no member named 'numFramebuffers'
make: *** [out/target/product/encore/obj/SHARED_LIBRARIES/libui_intermediates/FramebufferNativeWindow.o] Error 1
[Nook Color Android Development] krylon360:
We haven't touched the frame buffer code. This means something broke upstream.
[Nook Color Android Development] eyeballer:
This. But it was noticed quickly and the fix is merged, so just re-sync and rebuild.
[Nook Color Android Development] newellj79:
Well my build was a success, except.... no touch screen :( I'll read back thru the thread and see if a fixed was mentioned.
[Nook Color Android Development] newellj79:
I'm building straight from the build guide, not sure whos repo that is. Alot of this is over my head. Is this the fix I need since I don't have touchscreen support? Simply changing these few words?

edit... so i looked at my local manifest and it appears that line comes from keyodi's repo. what do i need to change my local_manifest to in order to pick up this fix? that is, how do i change it to yours?
[Nook Color Android Development] haze_nme:
You will want to change keyodi to hazenme and encore-omap3-3 to ts-fix-test3 in your kernel line. Once the change is merged with keyodi's repo you will want to switch it back.

<project name="hazenme/ti-omap-kernel3" path="kernel/bn/encore" revision="ts-fix-test3" />
[Nook Color Android Development] ManelScout4Life:
wake lock cured my black screen after lock screen issues
[Nook Color Android Development] jschill31:
May be something worth trying? Using the app allowed the Nook to work all day so far...going on 12 hours now of light use and no games.

CM10 Nook
[Nook Color Android Development] fattire:
Yeah keyodi should accept it... my kernel source is hosed right now....
[Nook Color Android Development] krylon360:
I'm a little concerned about the memory leak pull request though, its got a ton of extra commits from omapzoom that might break our source.
[Nook Color Android Development] newellj79:
Thanks. Rebuilding now. Probablly wont be finished before I go to bed, but will give it a try tomorrow. You guys rock!

edit... a few minutes after starting my build it stopped at this...

host C++: aapt <= frameworks/base/tools/aapt/CrunchCache.cpp

host C++: aapt <= frameworks/base/tools/aapt/Main.cpp

/home/jeremy/android/system/kernel/bn/encore/arch/arm/mach-omap2/board-encore-peripherals.c: In function 'cyttsp_dev_init':

/home/jeremy/android/system/kernel/bn/encore/arch/arm/mach-omap2/board-encore-peripherals.c:181: error: 'else' without a previous 'if'

make[3]: *** [arch/arm/mach-omap2/board-encore-peripherals.o] Error 1

make[2]: *** [arch/arm/mach-omap2] Error 2

make[1]: *** [sub-make] Error 2

make[1]: Leaving directory `/home/jeremy/android/system/kernel/bn/encore'

make: *** [TARGET_KERNEL_BINARIES] Error 2

make: *** Waiting for unfinished jobs....

:(
[Nook Color Android Development] haze_nme:
Re sync and it should work. You must have syncd right before I pushed the last fix.

edit2: Ok resync now. I really suck at git sometimes. The ts-fix-test3 branch is cleaned up now.
[Nook Color Android Development] jdpdata:
I'm also trying to build my own using Andbot.

Getting this after a few minutes into the build

Already re-sync. What should I do next?
[Nook Color Android Development] haze_nme:
You need to run ./get_prebuilts in vendor/cm
[Nook Color Android Development] newellj79:
Well my build finished and booted up with the touch screen kernel fixes, but alas the touch screen still doesn't work. :( I'm going to check the manifest and build again for the hell of it.
[Nook Color Android Development] haze_nme:
Can you pm me your local_manifest.xml?
[Nook Color Android Development] krylon360:
looks like a header file was left out. I let haze know.
[Nook Color Android Development] fattire:
Why aren't missing header files resulting in build errors?
[Nook Color Android Development] newellj79:
pm sent. Thanks for the help.
[Nook Color Android Development] krylon360:
its there. Just the location moved.

Btw....the A1 pvr version matches omapzooms pvr source.
[Nook Color Android Development] newellj79:
is there some change I can make so that the fix works?
[Nook Color Android Development] haze_nme:
Resync and rebuild. New fix is up.
[Nook Color Android Development] newellj79:
Thanks! Building now!
[Nook Color Android Development] haze_nme:
cpmessina reported that the maxx and maxy settings were incorrect resulting in problems with the touchscreen. New test branch is up.

ts-fix-test4

Please report if this works for you as I do not have a newer NC to test with.
[Nook Color Android Development] newellj79:
Ouch... My machine has now been building for over five hours. :( When it finishes I'll try it for the hell of it before I start building again. :) Thanks again!
[Nook Color Android Development] krylon360:
you don't have to rebuild the entire rom.

Delete the kernel-obj dir in $out/target/product/encore/obj then sync and build.

It'll only rebuild the kernel :)

Btw, I relooked at the memory leak pull request. Everything looked good. All of the extra commits from omapzoom, keyodi had already merged into our source; so I accepted the pull request from haze and the memory leak fixes are now in keyodi's source.
[Nook Color Android Development] jdpdata:
So I had a couple successful build, but neither one will boot-up, stuck at BLANK SCREEN.

What could I be doing wrong? Re-synced already, still stuck at BLANK SCREEN.
[Nook Color Android Development] RileyGrant:
Which toolchain are you compiling with?
[Nook Color Android Development] jdpdata:
Honestly, I don't know what toolchain is, I'm a total newb at this.

Just trying out Andbot, seems very easy to build, but I'm clueless.

I'd appreciate anyone giving me some pointers. Would like to learn how to do this.
[Nook Color Android Development] krylon360:
Did you pull the vendor files from cm9?
[Nook Color Android Development] jdpdata:
yes, I used one of Eyeballer CM9 build.

Edit: Success! WiFi is wonky but I'm happy I finally got it to boot. Many thanks to inportb for Andbot and all the fine devs here that made this possible.
[Nook Color Android Development] Hephaestus_:
Hi. For some reason, when repo-syncing, this happened; how do I fix it? Thanks.:

Receiving objects: 100% (643623/643623), 835.65 MiB | 79 KiB/s, done.

Resolving deltas: 100% (396846/396846), done.

From git://github.com/CyanogenMod/android_frameworks_base

* [new branch] cm-9.0.0 -> github/cm-9.0.0

* [new branch] donut -> github/donut

* [new branch] eclair -> github/eclair

* [new branch] froyo -> github/froyo

* [new branch] froyo-stable -> github/froyo-stable

* [new branch] gb-release-7.2 -> github/gb-release-7.2

* [new branch] gingerbread -> github/gingerbread

* [new branch] gingerbread-release -> github/gingerbread-release

* [new branch] ics -> github/ics

* [new branch] ics-release -> github/ics-release

* [new branch] jellybean -> github/jellybean

* [new branch] missing-master-patches -> github/missing-master-patches

* [new branch] themes-exp -> github/themes-exp

* [new tag] cm-7.0.0 -> cm-7.0.0

* [new tag] cm-7.0.1 -> cm-7.0.1

* [new tag] cm-7.0.2.1 -> cm-7.0.2.1

* [new tag] cm-7.0.3 -> cm-7.0.3

* [new tag] cm-7.1.0 -> cm-7.1.0

error: Exited sync due to fetch errors
[Nook Color Android Development] fattire:
What's a toolchain anyway?

So a toolchain just refers to the various tools-- compilers, linkers, and such-- that are used to build android by converting the source code and other files into runnable binary files. Usually the toolchain refers to a bunch of binary files that all hang out together in a single directory or directory tree. Think a C-language compiler, a C++ compiler, a linker, maybe a debugger, etc. They're called a "chain" (I think) because normally a few steps are needed to go from source code to binary. You need to first compile the source from whatever language into an object file (usually seen with a .o extension) and then those object files are linked together (or made to refer to each other) via a linker program to make one or more final runnable binaries. There may be other steps involved in the build process too. (or maybe they're called a toolchain because they're all together in one place, like how a keychain keeps your keys together.. hmm.. I dunno.)

In the sad old days these toolchains were really expensive software packages, sometimes in the multiple thousands of dollars. Now they're free. You can use the GCC (GNU Compiler Collection) toolchain that comes with your computer or the Code Sourcery toolchain, or the one that comes with Android's NDK.

One thing to remember about when you're compiling for Android is that while normally you compile a program into its binary form which you then run on the same computer you compiled on, that's not the case with Android.

Here's what I mean-- normally if you have a Macintosh, you'll compile Mac software with your Mac and run it on your Mac. If you have Windows or Linux, it's the same story-- you're building binaries from source code that you're going to run on the same computer that you built it on. Seems logical, right?

But with Android-- the processor type and manufacturer and everything are totally different than the computer you're building the software. You may be using an intel i7 chip to build, for example... but the Android device-- the nook color in this case-- is using an ARM-based processor. This is one reason why you can't build Android for your NC and then run it right on your PC-- the binaries are totally different.

So you don't just want a toolchain that builds a binary from source code, you want a cross compiler-- a compiler that runs on your computer but generates ARM binaries for your Nook.

The toolchains all do the same thing ultimately--> turn source code to binary files. But different versions may have different features, and some may generate faster or more stable code than others.

Try repo sync again. Seems like something got screwed up.
[Nook Color Android Development] Hephaestus_:
Same thing happened again, even when deleting android and starting from scratch; I have local_manifest set to sync from hazenme's repo as well as yours:

Edit: I've just noticed that hazenme's lines to add to the local manifest did not have a remote="gh" line like yours. Do you think that might have been the problem?

Edit 2: Even when adding the remote="gh" line, it still gets hung up at the same spot. :(

Edit 3: OK! I fixed it. If ANYONE is getting the error: "Exited sync due to fetch errors", execute

repo sync -f -j16

instead of

repo sync -j16

This will force the sync.

Also, on a side note, I'm getting a new error.

error: revision ts-fix-test4 in hazenme/ti-omap-kernel3 not found

-snip- (cmd log no longer needed)
[Nook Color Android Development] newellj79:
Sweet! Building now. Thanks!

Damn. Resynced with test4 and still no touchscreen support. :(
[Nook Color Android Development] jschill31:
Morning,

Looks like we are getting several builders out there...isn't it fun getting your build machined dialed in? :) Well I have been running my Nook (old style) for 3 days now without any screen death or wifi loss. As long as some type of "wake lock" is used you should be good, even on re-boot.

Cheers
[Nook Color Android Development] Hephaestus_:
Besides from staying up the whole night trying to get adb and repo sync to work, it's fine. ;D *haven't slept yet*

Well, I've fixed that problem. I had to restart the adb server using su, then add the sdk tools to $PATH, and then run the command again...A "bit" more complicated than the instructions. XD

IGNORE WHAT'S BELOW

Also, question: when I try to copy the proprietary files using ./extract-files.sh, it comes up with the error: "./extract-files.sh: line 27: adb: command not found". How do i fix it?

Extra info:

I've installed the platform tools in ~/android-sdks/platform-tools and my android directory is in ~/android/. Is that maybe what's causing it?
[Nook Color Android Development] newellj79:
It sounds like possibly you did not properly add the directory that adb is stored in, into your path.
[Nook Color Android Development] biohazrd51:
^

There are a couple different ways I've seen to add it to PATH, but only one has worked for me (10.04 x64).

I keep mine on a folder called "asdk" in my home directory, so the edits to my .bashrc are

export PATH="~/asdk/platform-tools:${PATH}"

Edit for additional info:

After this change (i usually reboot), and you can tell if it is working by typing "adb" in terminal. If it is not recognized you will received "command not found", if it is recognized, you will get a whole list of commands to use with ADB
[Nook Color Android Development] Hephaestus_:
I fixed it myself in my OP before you posted. :D

---------- Post added at 06:18 AM ---------- Previous post was at 06:14 AM ----------

One last question and everything will be perfect ;P. How would I add this to my local_manifest? I want to do this because surround71.conf doesn't like being copied from my cm9 eyeballer nightly. Thx.
[Nook Color Android Development] newellj79:
You don't need to add it to the manifest. Simply type "touch vendor/bn/encore/proprietary/usr/share/alsa/pcm/surround71.conf" (minus ") from your /android/system directory and the build will complete just fine.