aboutsummaryrefslogtreecommitdiff
path: root/CHANGES.md
blob: 6ec77285f8535c3287a100945fe19909bbffef63 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
Milestone 7
===========

Changes done in each Brillo Development Kit (BDK) release. Other places to get news about Brillo are TBD

You can discuss the latest BDK changes by subscribing to TBD

BDK 7.5.6 has been released on Thursday, January 28, 2016

**Summary**: This release contains the bare minimum for getting started. The Brillo Development Kit (BDK) current works with the Qualcomm Dragonboard and Intel Edison board for development and testing purposes. Basic weave commands are supported on these boards as well as use of the Weave Developer Console. Details follow.

1. Features
    1. Bdk command
    2. Support for fastboot and adb
    3. Support for custom kernel config
    4. Support for A/B updates via update_engine daemon
    5. Basic audio support and an Audio HAL
    6. Manual End to End tests via Autotest with a Moblab in a VM
    7. Open Sourced with Apache2 license
    8. Weave supported on devices
    9. Support for: updates, metrics, crash reports and Weave commands via the Weave
    10. Developer Console
2. Supported Boards
    1. Qualcomm Dragonboard
    2. Intel Edison
    3. ARM and x86 Emulators

Features
--------

### Bdk Commands

* `version` - Display BDK version
* `bsp`
    * `list` - List available BSPs, and their current installation status.
    * `download` - Download a BSP. The software that you are downloading is the property of the software owner and is distributed by the software owner. Google is providing the download service as a convenience.
    * `uninstall` - Uninstall BSP.
* `config`
    * `metrics` - Check or control what data you are sending to the Brillo team.
* `product`
    * `create` - Create a product project in the current directory
    * `envsetup` - Emit the environment for the product in the CWD
    * `gdb` - Run gdbclient.py for a given product
    * `tool` - Run a host tool for a given product
    * `build` - Build a product project from the current directory
    * `provision` - Run provision-device for a given product

A one-pager for this work can be found here <[link]>.

For details about the internal design of this feature, see this Design Doc
<[link]>.

Code:
<[link](https://android.googlesource.com/platform/tools/bdk/+log/brillo-m7-mr-dev)>

### Support for fastboot and adb
fastboot is the preferred method of communicating with a bootloader. Brillo will use fastboot for all devices. ADB is the standard Debug Bridge used for debugging Android Devices and now Brillo devices.

More documentation about fastboot can be found here
<[link](https://android.googlesource.com/platform/system/core/+/master/fastboot/fastboot_protocol.txt)>.

More documentation about adb can be found here
<[link](http://developer.android.com/tools/help/adb.html)>.

Developer Site for bootload:
<[link](https://developers.google.com/brillo/eap/guides/develop/bootloader)>

Developer Site for ADB:
<[link](https://developers.google.com/brillo/eap/guides/testing-debugging/debugging-tools)>

Code:
<[link](https://android.googlesource.com/platform/system/core/+/master/adb/)>

### Support for custom kernel config
In your product’s .mk file:

```makefile
include device/generic/brillo/brillo_base.mk
$(call add_kernel_configs, $(realpath $(LOCAL_PATH)/my_kernel.config))
```

Code:
<[link](https://android.googlesource.com/device/generic/brillo/+/brillo-m7-mr-dev/brillo_base.mk)>

### Push updates to a device via the Cloud (OTA)
The Brillo OTA (over-the-air) update feature makes it easy for product developers to securely, reliably update products in the field. It enables the following scenarios:

* Quickly address a serious bug or security problem.
* Simplify your marketing and support by having nearly all products on the latest software.
* Continue to add features to a product post-launch, keeping your users happy.

This page describes the entire update cycle for Brillo devices, from the developer creating an updated image to the product running updated software.

Developer Site Documentation:
<[link](https://developers.google.com/brillo/eap/guides/maintain/ota-updates)>

Codelab: <[link](https://www.code-labs.io/codelabs/brillo-ota/#0)>

Code:
<[link](https://android.googlesource.com/platform/system/update_engine/+log/brillo-m7-mr-dev)>

### Basic audio support and an Audio HAL
Audio in and out support via a hardware abstraction layer (HAL) for all supported boards. We’ve added the Audio HAL tests to the Platform Test Suite (PTS).

Code:
<[link](https://android.googlesource.com/device/generic/brillo/+/bb97d49da8db680b5fc8cc738f6f754bb7717bb7/pts/audio/)>

### Weave supported on devices
Weave is a communications platform for IoT devices that enables device setup, phone-to-device-to-cloud communication, and user interaction from mobile devices and the web.

Brillo’s support for Weave involves wrapping libWeave in a daemon (weaved)

Developer Site: <[link](https://developers.google.com/weave/)>

libWeave v1.0 Code:
<[link](https://weave.googlesource.com/weave/libweave/+log/weave-release-1.0)>

weaved Code:
<[link](https://android.googlesource.com/platform/system/weaved/+log/brillo-m7-mr-dev)>

### Weave Developer Console: Metrics, Crashes, OTA, Weave Commands
Developer Site - Metrics:
<[link](https://developers.google.com/brillo/eap/guides/maintain/monitoring)>

Developer Site - Crash Reporting:
<[link](https://developers.google.com/brillo/eap/guides/maintain/crash-reporting)>

### PTS
Platform Test Suite will be the means of certifying a board. While the current suite of tests is growing, there is still a lot of work happening on the test framework. Stay tuned for future releases.

Code:
<[link](https://android.googlesource.com/device/generic/brillo/+log/brillo-m7-mr-dev/pts)>

### Open Sourced with Apache2 license
Using the default Android Open Source Project (AOSP) licenses for Brillo, we’ve decided to move all development to the open. Only certain aspects of Weave and new board bring-up will be developed within Google.

Supported Boards
----------------
Use [this
page](https://developers.google.com/brillo/eap/guides/get-started/get-hardware) to see the current list of supported hardware.

### Qualcomm Dragonboard 410c
### Intel Edison