Skip to first unread message

Harshdeep Dhatt

unread,
Feb 14, 2017, 1:01:40 PM2/14/17
to BeagleBoard
Is Android being actively supported on BBB? I found resources online which said Android 4.4 was ported sometime back - http://www.2net.co.uk/tutorial/android-4.4-beaglebone

Does it make sense to support the latest Android versions on the BBB? is there an audience for such a project? I know its not straightforward to port android to latest bbb kernels. But i just want to know if there is such a need. Then maybe the effort is worth the pain :)

Thanks,
Harshdeep

prasad...@gmail.com

unread,
Feb 16, 2017, 5:59:59 AM2/16/17
to BeagleBoard
Yes..I am looking for latest version.

Andrew Henderson

unread,
Feb 21, 2017, 11:03:35 AM2/21/17
to BeagleBoard
The limiting factor in supporting Android on the BBB with newer kernels is support for SGX OpenGL ES. Newer Androids rely heavily on GLES for rendering. You can always fall back to PixelFlinger for software rendering, but a variety of apps will not work (or will work very slowly) when you use software rendering. For post 3.2 kernels, there are additional Android graphics libraries that are missing that you need for accelerated GLES. These libraries are proprietary and must be supplied by TI. Unfortunately, they are not supported any more, as support for the Android Graphics SDK has ended.   

For non-GLES builds, I recommend that you look at Android4Beagle: http://www.2net.co.uk/android4beagle.html

Andrew

sskc.k...@gmail.com

unread,
Sep 1, 2017, 9:57:06 AM9/1/17
to BeagleBoard
The later android builds on Android4Beagle dont have i2c tools i presume. How do we make a build with i2c tools?

Andrew Henderson

unread,
Sep 1, 2017, 10:54:41 AM9/1/17
to BeagleBoard, sskc.k...@gmail.com
There are two parts to this: getting the i2c-tools source package into your Android source tree and telling the build process to include that package for your device. Since i2c-tools isn't in the XML manifest for A4B, you'll have to manually grab the i2c-tool source and put it in the correct place. You could also fork the XML manifest for A4B, add an entry for i2c-tools in there, and then point the repo tool to your forked manifest. Whichever way you do it, there is a copy of the i2c-tools source package here: https://github.com/hendersa/bbbandroid-external-i2c_tools

Assuming that you didn't fork the manifest XML and want to manually add it in, use repo to check out all of the A4B Android code like you normally would. Find the "external" directory in your Android source tree that hosts all of the external source code packages. Git clone the i2c-tools repo into that external directory. rename the "bbbandroid-external-i2c_tools" directory you just checked out to "i2c-tools".

Once you have the code in place in the "external" directory , you'll need to make sure that external source package is built for your device. Take a look at: https://github.com/csimmonds/a4b-beagleboneblack/blob/master/device.mk

After running repo and fetching all of the various source packages, this device.mk file will be living somewhere in your Android source tree. I forget its exact location where it ends up, but you can grep around and find it. Once you find it, add "i2c-tools" to the "PRODUCT_PACKAGES" list to include it in the build process. Take a look at the bottom of the BBBAndroid device.mk file to see an example: https://github.com/hendersa/bbbandroid-vendor-ti-beagleboneblack-aosp/blob/master/device.mk 

Now build Android as you normally would, and i2c-tools will be in your system. This same process can be used to add in other external source packages into Android.

Andrew  
Reply all
Reply to author
Forward
0 new messages