Skip to content

Commit

Permalink
Merge pull request #15 in TIOP/connectedhomeip from feature/SLSTACKSW…
Browse files Browse the repository at this point in the history
…-29-readme-for-chip-example to connectedhomeip-next

Squashed commit of the following:

commit fc7d6d2a7da2e2ffc1fb97ece72d782e2074b280
Author: Toby Pan <[email protected]>
Date:   Fri Feb 12 14:58:06 2021 -0600

    some phrasing updates

commit 651b940ca472092b62b1d434c40bc39cbe68f6a6
Author: Toby Pan <[email protected]>
Date:   Fri Feb 12 12:16:21 2021 -0600

    updates based on comments

commit d88b25e98fde9abf089de9b845d67639bb636f19
Author: Toby Pan <[email protected]>
Date:   Thu Feb 11 13:20:31 2021 -0600

    updates from comments

commit 0c32fa044bb6df332a1793b210dd5e65ec8d77c1
Author: Toby Pan <[email protected]>
Date:   Tue Feb 9 14:35:48 2021 -0600

    removed highlight style

commit 27dfa85c9ff0a76f2c744d2b74e41b0d09a60031
Author: Toby Pan <[email protected]>
Date:   Tue Feb 9 14:34:06 2021 -0600

    updated eng SDK version

commit b987e1b2cae402b635f3791e590734b2f92587ba
Author: Toby Pan <[email protected]>
Date:   Tue Feb 9 10:05:15 2021 -0600

    first draft of README updates
  • Loading branch information
ti-tpan committed Feb 12, 2021
1 parent 93c725f commit 4563e3e
Showing 1 changed file with 79 additions and 9 deletions.
88 changes: 79 additions & 9 deletions examples/lock-app/cc13x2x7_26x2x7/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,12 @@ CC13X2_26X2 family of Wireless MCUs.
- [UniFlash](#uniflash)
- [Code Composer Studio](#code-composer-studio)
- [Viewing Logging Output](#viewing-logging-output)
- [Running the Example](#running-the-example)
- [Provisioning](#provisioning)
- [Bluetooth LE Advertising](#bluetooth-le-advertising)
- [Bluetooth LE Rendezvous](#bluetooth-le-rendezvous)
- [CHIP Remote Commands](#chip-remote-commands)
- [TI Support](#ti-support)

---

Expand All @@ -26,9 +32,10 @@ The CC13X2_26X2 lock example application provides a working demonstration of a
connected door lock device. This uses the open-source CHIP implementation and
the Texas Instruments SimpleLink™ CC13x2 and CC26x2 software development kit.

This example is enabled to build on all members of the `CC13X2_26X2` family of
MCUs [recommended for Thread][ti_thread_dnd]. By default this example targets
the [CC1352R1_LAUNCHXL][cc1352r1_launchxl] LaunchPad.
This example is enabled to build for CC2652R7 devices. This
upcoming devices are currently not yet in full production. For more information
on device availability or early access to an engineering build of our
CHIP-enabled SDK, please reach out [here][ti_cc13x2_26x2_r7_chip_request].

The lock example is intended to serve both as a means to explore the workings of
CHIP, as well as a template for creating real products based on the Texas
Expand All @@ -41,7 +48,7 @@ door lock and to control the state. The user LEDs on the LaunchPad are set on
when the lock is locked, and are set off when unlocked. The LEDs will flash when
in the transition state between locked and unlocked. The user buttons are used
for requesting lock and unlock of the door lock. The left button (`BTN-1`) is
used to request locking. The right button (`BTN-2`) us used to request
used to request locking. The right button (`BTN-2`) is used to request
unlocking.

## Building
Expand All @@ -51,8 +58,8 @@ unlocking.
Some initial setup is necessary for preparing the build environment. This
section will need to be done when migrating to new versions of the SDK.

- Download and install the [SimpleLink™ CC13x2 and CC26x2 software development
kit (SDK)][simplelink_sdk] ([4.30.00.54][simplelink_sdk_4.30.00.54])
- An engineering SDK from TI is required. Please request access for it
[here][ti_cc13x2_26x2_r7_chip_request].

- Follow the default installation instructions when executing the
installer.
Expand All @@ -64,7 +71,7 @@ section will need to be done when migrating to new versions of the SDK.
- Download and install [SysConfig][sysconfig]
([sysconfig-1.5.0_1397][sysconfig-1.5.0_1397])

- This may have already been installed with your SimpleLink SDK install
- This may have already been installed with your SimpleLink SDK install.

- If you have installed different versions, the build defaults will need to be
changed to reflect this in
Expand All @@ -82,7 +89,7 @@ section will need to be done when migrating to new versions of the SDK.
- You will have to ensure that the default version of Python 3 is Python
3.8.
- run the bootstrap script to setup the build environment.
- Run the bootstrap script to setup the build environment.
```
$ cd ~/connectedhomeip
Expand All @@ -106,7 +113,7 @@ Ninja to build the executable.
- Run the build to produce a default executable. By default on Linux both the
TI SimpleLink SDK and Sysconfig are located in a `ti` folder in the user's
home directory, and you must provide the absolute path to them. For example
`/home/username/ti/simplelink_cc13x2_26x2_sdk_4_40_05_01_eng` and
`/home/username/ti/simplelink_cc13x2_26x2_sdk_4_40_05_02_eng` and
`/home/username/ti/sysconfig_1.6.0`. On Windows the default directory is
`C:\ti`
Expand Down Expand Up @@ -146,8 +153,66 @@ terminal emulator to that port to see the output with the following options:
| Parity | `None` |
| Flow control | `None` |
## Running the Example
Once a device has been flashed with this example, it can now join and operate
in an existing Thread network. The following sections assume that a Thread
network is already active, and has at least one
[OpenThread Border Router][ot_border_router_setup].
### Provisioning
The first step to bring the CHIP device onto the network is to provision it.
Our example accomplishes this with Bluetooth Low Energy (BLE) and the
[CHIPTool](../../../src/android/CHIPTool/README.md) mobile app.
#### Bluetooth LE Advertising
To provision this example onto a Thread network, the device must be
discoverable over Bluetooth LE. BLE advertising is enabled by default and starts
after the device is powered. Once the device is fully provisioned, BLE
advertising will stop.
#### Bluetooth LE Rendezvous
In this example, the provisioning procedure (called Rendezvous) is done over
Bluetooth LE between a CHIP device (lock-app) and the CHIP controller
(CHIPTool), where the controller has the commissioner role.
To start the rendezvous, the controller must get the commissioning information
from the CHIP device.
This is done by scanning a QR code. A URL will be displayed on the lock-app's
log ([UART terminal](#viewing-logging-output)). It will look like the following:
```
SetupQRCode: [CH:.81TM -00 0C9SS0]
Copy/paste the below URL in a browser to see the QR Code:
https://dhrishi.github.io/connectedhomeip/qrcode.html?data=CH%3A.81TM%20-00%200C9SS0
```
You can directly navigate to the webpage URL displayed (which has QR payload
pre-loaded). Alternatively, you can navigate to
[the QR code generator][qr_code_generator] and enter in the payload shown in
`SetupQRCode` (in this case `CH:.81TM -00 0C9SS0`).
### CHIP Remote Commands
Once the CHIP device is provisioned and operating on the network, CHIPTool can
be used to control the device. During the provisioning process, the CHIP device
would have sent one of its newly assigned IPv6 addresses to the CHIPTool.
In the app, you should see an On/Off cluster; this corresponds to the lock-app.
You can now control the lock-app CHIP device from the smartphone!
## TI Support
For technical support, please consider creating a post on TI's
[E2E forum][e2e].
Additionally, we welcome any feedback.
[chip]: https://github.com/project-chip/connectedhomeip
[cc1352r1_launchxl]: https://www.ti.com/tool/LAUNCHXL-CC1352R1
[e2e]: https://e2e.ti.com/support/wireless-connectivity/zigbee-and-thread
[simplelink_sdk]: https://www.ti.com/tool/SIMPLELINK-CC13X2-26X2-SDK
[simplelink_sdk_4.30.00.54]:
https://www.ti.com/tool/download/SIMPLELINK-CC13X2-26X2-SDK/4.30.00.54
Expand All @@ -156,3 +221,8 @@ terminal emulator to that port to see the output with the following options:
http://software-dl.ti.com/ccs/esd/sysconfig/sysconfig-1.5.0_1397-setup.run
[ti_thread_dnd]:
https://www.ti.com/wireless-connectivity/thread/design-development.html
[ti_cc13x2_26x2_r7_chip_request]:
https://ti.com/chip_sdk
[ot_border_router_setup]:
https://openthread.io/guides/border-router/beaglebone-black
[qr_code_generator]: https://dhrishi.github.io/connectedhomeip/qrcode.html

0 comments on commit 4563e3e

Please sign in to comment.