What's the Brillo?

Brillo has four components that work together: the OS, core services, developer kit, and the developer console. Kylin board is available from a number of chip vendors so that you can get started quickly, and wide industry support enables extensive hardware customization.

For more information about the Brillo, see the briilo-develop.

Kylin Introduction

Kylin board is a reference design of RK3036 SoC targeted at IOT/OTT solutions, including almost all functions of RK3036 chip such as HDMI, USB(OTG & Host), Ethernet, GPIO, codec, WIFI, Bluetooth, SD card.

Here is a brief introduce about these interfaces on Kylin as the image shown on below side.
medium.jpg

Buttons
Reset Key, button to reset system.
Maskrom Key, button to enter Maskrom mode for loader/uboot flashing.
Fastboot Key, button to enter Fastboot mode for images downloading.
Recovery Key, button to enter Recovery mode
For more information about Kylin board, you can refer the kylin-hardware to get Kylin hardware information.

If you want to develop your own application, drivers on RK3036 Kylin board, you're in the right place.

Target audience

The target audience of this guide is anyone who wants to obtain, build, or contribute to RK3036 SDK. That includes new developers who are interested in the project and who simply want to browse through the RK3036 SDK source code, as well as developers who have been working on RK3036 for a long time.

Setting up a Brillo build environment

You need a 64-bit version of Ubuntu. Ubuntu 14.04 is recommended.

$ sudo apt-get install git-core gnupg flex bison gperf build-essential \
  zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 \
  lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z-dev ccache \
  libgl1-mesa-dev libxml2-utils xsltproc unzip openjdk-7-jdk python-networkx bc
Working with open source software

Brillo is open source software hosted on AOSP. To access Brillo source code, use the repo tool with the Brillo manifest:

repo init -u https://android.googlesource.com/brillo/manifest -b master
repo sync -jn -c

where n is the number of simultaneous jobs. This option speeds up command execution on multi-core machines. Typical values start at -j2 and go up to -j24 or -j32.

These commands check out the active development branch of Brillo, which is not guaranteed to perform like a production build. All product development should proceed from one of the official releases, above.

Build/Flash image

Instructions to bring up Brillo

1. prepare build source(master branch)

2. lunch kylin board:

./tools/bdk/brunch/brunch bsp install kylin
. ./build/envsetup.sh
lunch kylin-eng

3. build images:

make -j 32

4. flash images:

adb reboot bootloader
${OUT}/provision-device