Publishing for Bluetooth Asia 2018 developer session: mesh session. This repo is for GenericOnOff client side firmware.

EULA

PLEASE READ MESH_DEMO_TUTORIAL_EULA.TXT BEFORE START DEVELOPMENT.

Overview

This sample demonstrates Bluetooth Mesh functionality on micro:bit. It doesn't need provisioning because all the credential material (DevKey, NetKey, AppKey, Key Index, IVI and Unicast address) is pre-configured. This sample work as a GenericOnOff client:

  • Pressing Button A on micro:bit will send GenericOnOffSet access message with on or off state alternatively and specific group address;
  • Pressing Button B on micro:bit will switch the group address from 0xC000 to 0xC003 and back to 0xC000 again like round robin;

Requirements

micro:bit board

Building and Running

0. Download source code, it's zip file, the link is on this page, Download repository.

1. Following below link to set the development environment up on your Windows computer. http://docs.zephyrproject.org/getting_started/installation_win.html . Please make sure git checkout this commit, commit: 88dfd399f480b1593a8e13f5a68d512921a55502 , the detail is here, https://github.com/zephyrproject-rtos/zephyr/commit/88dfd399f480b1593a8e13f5a68d512921a55502

2. copy zip file into ./zephyr/sample/ in the Zephyr tree.

3. unzip the file by "Extract Here".

3. access into the extracted folder and rename prj_bbc_microbit.txt to prj_bbc_microbit.conf

4. if adopting Windows Command Prompt, use it to access into the unzip folder and type following commands on the console:

mkdir build & cd build

cmake -GNinja -DBOARD=bbc_microbit ..

ninja

if adopting MSYS2, use it to access into the unzip folder and type following commands on the console:

mkdir build & cd build

cmake -GNinja -DBOARD=bbc_microbit ..

ninja

5. connect micro:bit with your computer by USB cable, the board will be enumerated as a massive storage device;

6. drag the hex file (which is in ./zephyr/sample/[unzip folder]/build/zephyr/zephyr.hex) into Microbit massive storage device to flash the firmware;

7. micro:bit is ready to work as a GenericOnOff client.

Committer:
krenbluetoothsig
Date:
Mon May 28 13:15:31 2018 +0000
Revision:
16:64e0ae95d4f1
Parent:
5:ac22dae133d2
Child:
14:0c48375896d2
1. update for code publish testing.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
krenbluetoothsig 5:ac22dae133d2 1 **
krenbluetoothsig 5:ac22dae133d2 2 EULA
krenbluetoothsig 5:ac22dae133d2 3 **
krenbluetoothsig 3:608b3e14dd31 4
krenbluetoothsig 3:608b3e14dd31 5 PLEASE READ EULA.TXT BEFORE START DEVELOPMENT.
krenbluetoothsig 3:608b3e14dd31 6
krenbluetoothsig 5:ac22dae133d2 7 **
krenbluetoothsig 3:608b3e14dd31 8 Overview
krenbluetoothsig 5:ac22dae133d2 9 **
krenbluetoothsig 5:ac22dae133d2 10
krenbluetoothsig 3:608b3e14dd31 11 This sample demonstrates Bluetooth Mesh functionality on micro:bit. It doesn't need provisioning
krenbluetoothsig 3:608b3e14dd31 12 because all the credential material (DevKey, NetKey, AppKey, Key Index, IVI
krenbluetoothsig 3:608b3e14dd31 13 and Unicast address) is pre-configured.
krenbluetoothsig 3:608b3e14dd31 14 This sample work as a GenericOnOff client:
krenbluetoothsig 3:608b3e14dd31 15 * Pressing Button A on micro:bit will send GenericOnOffSet access message with on or off state alternatively and
krenbluetoothsig 3:608b3e14dd31 16 specific group address;
krenbluetoothsig 3:608b3e14dd31 17 * Pressing Button B on micro:bit will switch the group address from 0xC000 to 0xC003 and back to
krenbluetoothsig 3:608b3e14dd31 18 0xC000 again like round robin;
krenbluetoothsig 3:608b3e14dd31 19
krenbluetoothsig 5:ac22dae133d2 20 **
krenbluetoothsig 3:608b3e14dd31 21 Requirements
krenbluetoothsig 5:ac22dae133d2 22 **
krenbluetoothsig 5:ac22dae133d2 23
krenbluetoothsig 3:608b3e14dd31 24 micro:bit board
krenbluetoothsig 0:876e59f87d50 25
krenbluetoothsig 5:ac22dae133d2 26 **
krenbluetoothsig 3:608b3e14dd31 27 Building and Running
krenbluetoothsig 5:ac22dae133d2 28 **
krenbluetoothsig 5:ac22dae133d2 29
krenbluetoothsig 3:608b3e14dd31 30 1. Following below link to set the development environment up on your Windows computer.
krenbluetoothsig 3:608b3e14dd31 31 http://docs.zephyrproject.org/getting_started/installation_win.html
krenbluetoothsig 3:608b3e14dd31 32
krenbluetoothsig 3:608b3e14dd31 33 2. copy zip file into './zephyr/sample/' in the Zephyr tree.
krenbluetoothsig 3:608b3e14dd31 34
krenbluetoothsig 4:72457391f1b9 35 3. unzip the file by "Extract Here".
krenbluetoothsig 4:72457391f1b9 36
krenbluetoothsig 4:72457391f1b9 37 3. access into the extracted folder and rename prj_bbc_microbit.txt to prj_bbc_microbit.conf
krenbluetoothsig 3:608b3e14dd31 38
krenbluetoothsig 4:72457391f1b9 39 4. if adopting Windows Command Prompt, use it to access into the unzip folder and
krenbluetoothsig 4:72457391f1b9 40 type following commands on the console:
krenbluetoothsig 4:72457391f1b9 41
krenbluetoothsig 3:608b3e14dd31 42 mkdir build & cd build
krenbluetoothsig 3:608b3e14dd31 43 cmake -GNinja -DBOARD=bbc_microbit ..
krenbluetoothsig 3:608b3e14dd31 44 ninja
krenbluetoothsig 0:876e59f87d50 45
krenbluetoothsig 0:876e59f87d50 46
krenbluetoothsig 4:72457391f1b9 47 if adopting MSYS2, use it to access into the unzip folder and type following commands
krenbluetoothsig 4:72457391f1b9 48 on the console:
krenbluetoothsig 0:876e59f87d50 49
krenbluetoothsig 4:72457391f1b9 50 mkdir build & cd build
krenbluetoothsig 4:72457391f1b9 51 cmake -GNinja -DBOARD=bbc_microbit ..
krenbluetoothsig 4:72457391f1b9 52 ninja
krenbluetoothsig 0:876e59f87d50 53
krenbluetoothsig 4:72457391f1b9 54 5. connect micro:bit with your computer by USB cable, the board will be enumerated as a massive
krenbluetoothsig 4:72457391f1b9 55 storage device;
krenbluetoothsig 0:876e59f87d50 56
krenbluetoothsig 4:72457391f1b9 57 6. drag the hex file (which is in './zephyr/sample/[unzip folder]/build/zephyr/zephyr.hex') into
krenbluetoothsig 4:72457391f1b9 58 Microbit massive storage device to flash the firmware;
krenbluetoothsig 4:72457391f1b9 59
krenbluetoothsig 4:72457391f1b9 60 7. micro:bit is ready to work as a GenericOnOff client.
krenbluetoothsig 0:876e59f87d50 61