While there are many embedded Android development boards on the market, my criteria substantially narrowed the list of suitable candidates. I settled on the following requirements:Horsepower: the device must capture, compress, and transmit the screen’s contents in realtime at high frame rates.
- Compatibility: the device must run the latest version of Android (version 6.0.1 Marshmallow at the time of this writing).
- Size: the board must be small and thin — approximately the dimensions of a credit card, the height of a USB connector.
- Connectivity: The board needs built-in Wi-Fi and Bluetooth because I don’t want to write drivers to bridge these to the iPhone’s connections. Also, it needs built-in USB 2.0 for a high-speed, reliable connection to the host iPhone.
With these criteria in mind, I chose the Lemaker HiKey. While its 8-core, 64-bit ARM Cortex-A53 processor has more than enough power to run virtually any Android app on the market, it sports a unique party piece: it’s the official reference board of the Android Open Source Project. As a result, most of the HiKey’s necessary components are included directly in the AOSP source tree (a lifesaver). That said, getting my custom AOSP build to run successfully was still a tall order, requiring me to (among other things) recompile the kernel with performance-oriented tweaks to the USB driver.