← Back to team overview

ubuntu-phone team mailing list archive

Initial stab at Nook Color support

 

Seeing as no one has reported success or failure yet, I decided to
give this a try based on the basic porting instructions.

First some basic notes for those unfamiliar with the Nook Color.  The
biggie, it comes unlocked out of the crate.  If you insert a micro-sd
card with the correct partition layout and uboot setup, it'll boot
from it rather than the local flash, no mods required.  In the past
someone managed to mangle together an android kernel with full Ubuntu
desktop userland using this and got a semi-working setup but sadly
never pursued it.  Anyways, it's an OMAP 3 series cpu with 512MB RAM,
and a 1024x600 display.  No GPS, BT is working but there isn't an
antenna wired to it so the range is very limited, no cellular support.
 Officially CM supports CM7 and CM10, the community has CM10.1 up and
running unofficially which I use.  Current kernel is 3.0.8.

Following the guide I setup a dev environment inside a chroot on my 12.10 box.

First step after phablet-dev-bootstrap fills my volume with src is to
enable the new device.  Because CM10.1 isn't directly supported I
added the current official repositories to my manifest as below:

  <project path="device/bn/encore"
name="CyanogenMod/android_device_bn_encore" remote="github"
revision="refs/heads/jellybean" />
  <project path="kernel/bn/encore"
name="CyanogenMod/android_kernel_bn_encore" remote="github"
revision="refs/heads/encore-omap3-3" />

Binary blobs were extracted, init.encore.rc and ramdisk_tools.sh were
modified to remove nosuid from any mounts.  encore_defconfig was
modded as required.  main.mk modded as directed.  This leads up to
trying brunch, which fails.

CHROOT jcoombs@Colossus:~/encore$ brunch encore
including vendor/cm/vendorsetup.sh
build/core/config.mk:160: *** TARGET_ARCH not defined by board config:
device/bn/encore/BoardConfig.mk.  Stop.
Device encore not found. Attempting to retrieve device repository from
CyanogenMod Github (http://github.com/CyanogenMod).
Found repository: android_device_bn_encore
Default revision: phablet-10.1
Checking branch info
Default revision phablet-10.1 not found in android_device_bn_encore. Bailing.
Branches found:
gb-release-7.2
gingerbread
gingerbread-release
jellybean
Use the ROOMSERVICE_BRANCHES environment variable to specify a list of
fallback branches.
build/core/config.mk:160: *** TARGET_ARCH not defined by board config:
device/bn/encore/BoardConfig.mk.  Stop.

** Don't have a product spec for: 'cm_encore'
** Do you have the right repo manifest?

No such item in brunch menu. Try 'breakfast'
CHROOT jcoombs@Colossus:~/encore$ export ROOMSERVICE_BRANCHES=jellybean
CHROOT jcoombs@Colossus:~/encore$ brunch encore
including vendor/cm/vendorsetup.sh
build/core/config.mk:160: *** TARGET_ARCH not defined by board config:
device/bn/encore/BoardConfig.mk.  Stop.
Device encore not found. Attempting to retrieve device repository from
CyanogenMod Github (http://github.com/CyanogenMod).
Found repository: android_device_bn_encore
Default revision: phablet-10.1
Checking branch info
Using fallback branch: jellybean
Adding dependency: CyanogenMod/android_device_bn_encore -> device/bn/encore
Syncing repository to retrieve project.
warning: local_manifest.xml is deprecated; put local manifests in
`/home/jcoombs/encore/.repo/local_manifests` instead
warning: local_manifest.xml is deprecated; put local manifests in
`/home/jcoombs/encore/.repo/local_manifests` instead
fatal: duplicate project CyanogenMod/android_device_bn_encore in
/home/jcoombs/encore/.repo/manifest.xml
Repository synced!
Looking for dependencies
Adding dependencies to manifest
Adding dependency: CyanogenMod/android_kernel_bn_encore -> kernel/bn/encore
Syncing dependencies
warning: local_manifest.xml is deprecated; put local manifests in
`/home/jcoombs/encore/.repo/local_manifests` instead
warning: local_manifest.xml is deprecated; put local manifests in
`/home/jcoombs/encore/.repo/local_manifests` instead
fatal: duplicate project CyanogenMod/android_device_bn_encore in
/home/jcoombs/encore/.repo/manifest.xml
Done
build/core/config.mk:160: *** TARGET_ARCH not defined by board config:
device/bn/encore/BoardConfig.mk.  Stop.

** Don't have a product spec for: 'cm_encore'
** Do you have the right repo manifest?

No such item in brunch menu. Try 'breakfast'

That's where I'm currently at.  I'm going to try tracking down the
community CM10.1 repos to see if those improve things next.  So not a
spectacular start, but at least the next person looking for nook color
notes will see an attempt now.

Joshua Coombs


Follow ups