User manual Getting started with the ST BlueNRG-Mesh ios application Introduction The BlueNRG-Mesh ios app is the Bluetooth LE Mesh implementation for ios. The app implements BLE Mesh Profile 1.0 specifications to allow ios devices to communicate with BLE mesh nodes based on BlueNRG-1, BlueNRG-2 and BlueNRG-MS platforms. The app lets you evaluate the functionality of the ST Mesh solution. You can use it to provision and control BlueNRG-Mesh nodes in a distributed control system for applications such as smart lighting and home automation. Figure 1. ST BlueNRG-Mesh scenario UM2361 - Rev 1 - February 2018 For further information contact your local STMicroelectronics sales office. www.st.com
STSW-BNRG-Mesh ios app overview 1 STSW-BNRG-Mesh ios app overview The BlueNRG-Mesh ios app lets you perform the following tasks in a BLE Mesh network: View the BlueNRG-Mesh nodes available in the BLE Mesh network. Add new nodes to the network via the provisioning process. Control the BlueNRG-Mesh node (On and Off commands). Remove nodes from the network using the unprovisioning process. Create and manage groups of nodes. Set subscription address (target address of a node). Bluetooth Mesh Profile can be used for various home, office and industrial scenarios. This app implements a smart lighting scenario to manage and control a single or a group of lighting nodes. UM2361 - Rev 1 page 2/21
How to install and launch the app 2 How to install and launch the app Follow the instructions below to install the STSW-BNRG-Mesh app on a compatible ios device. Step 1. Step 2. Step 3. Follow the link to Apple Store at STSW-BNRG-Mesh to download the app directly to your ios device. Ensure that Bluetooth radio is enabled. Launch the app by clicking on the icon. Step 4. If Bluetooth is off or not supported, you are presented with a dialog box that prompts you to enable Bluetooth on your device. At this stage, you can either: go to settings and switch Bluetooth on, or run the app in dummy mode, which simulates the functionality of the app without actually communicating with nodes over BLE UM2361 - Rev 1 page 3/21
Introduction to the app controls 2.1 Introduction to the app controls The home page of the app is a Network page that lists the MAC addresses or universally unique identifiers (UUIDs) of provisioned nodes on a network. The network page is blank the first time you run the app. UM2361 - Rev 1 page 4/21
Introduction to the app controls Figure 2. BNRG-Mesh app home page with provisioned nodes The circled plus (+) icon at the top of the page opens the provisioning page, where you can add new devices to the mesh network. When you open this page, the app scans for unprovisioned mesh devices and lists the devices it finds. Each device in the list has an RSSI value with signal strength and device identification information. UM2361 - Rev 1 page 5/21
Introduction to the app controls Figure 3. Provisioning page The tab bar at the bottom of the Network view gives you access to the Groups and About pages. In the Groups page, you can group nodes to control them collectively. UM2361 - Rev 1 page 6/21
Introduction to the app controls Figure 4. Groups view The More tab at the bottom of the page opens the About view, where you can find version information, third party components and the software license agreement. UM2361 - Rev 1 page 7/21
Hardware and software requirements Figure 5. About View 2.2 Hardware and software requirements The app is tested for iphone 5s or above, with ios version 10.0 or above. The device should be 64-bit capable with BLE support. The app works with the following boards running ST BlueNRG-Mesh firmware: NUCLEO-L152RE STM32 Nucleo-64 development board with the X-NUCLEO-IDB05A1 Bluetooth Low Energy expansion board based on the SPBTLE-RF module STEVAL-IDB007V1 evaluation platform based on the BlueNRG-1 board STEVAL-IDB008V2 evaluation platform based on the BlueNRG-2 board UM2361 - Rev 1 page 8/21
How to use the app 3 How to use the app 3.1 Provisioning a node Provisioning is a process of authenticating the nodes and bringing them into the BLE Mesh network. Step 1. Step 2. Step 3. Launch the app. Ensure the device you want to add to your mesh network is powered and in signal range. Go to the provisioning page. The page lists any unprovisioned devices in signal range, along with their MAC address or UUID. The RSSI number on the right of each device indicates your approximate distance from it. Step 4. Tap the circled plus (+) button on a listed device to start provisioning. Once the provisioning starts, you will see a window showing the provisioning status. UM2361 - Rev 1 page 9/21
Provisioning a node Step 5. Step 6. Keep the kit stationary and near your ios device during provisioning. Provisioning may take between 10 and 12 seconds depending on the smartphone hardware, channel congestion and other apps running on the phone. After provisioning, you will see a configuration screen. Provisioning only adds a node to your mesh network so it can send and receive packets. To enable the node to perform user actions, however, you must configure the node. UM2361 - Rev 1 page 10/21
Network view Step 7. Enter initial node settings, such as group subscription. 3.2 Network view After provisioning a node, you return to Network view, where you will find New Node xx (you can change this name in the settings) as the last node in the list of provisioned nodes. Each node also has a MAC address or UUID below the name. From the Network view page, you can perform the following actions: Toggle a node on and off with the switch button next to the node name. Repeat provisioning with the circled plus button Show node information with the circled i button Open the Node setting menu with the settings symbol Open the Groups or About views through their respective icons at the bottom of the page UM2361 - Rev 1 page 11/21
Node Setting view Figure 6. Provisioned nodes in Mesh Network 3.3 Node Setting view From the Node Setting view, you can set the following parameters for a node. Node Control: switches the node on and off (same as Network view). Node renaming: tap on the edit icon to change the default name of the node to something more meaningful. Tap done on your onscreen keyboard or enter on your physical keyboard to finish editing. Publish Target: when a node initiates a command, it is sent to the publish address assigned to the node. A node can only publish to a unicast address (for a node) or a group address.s Groups: shows all the groups the current node is subscribed to. Change configuration: opens the Node configuration page, where you can update the group assignment and publish target for a node. Remove Node: unprovisions the node. If you select this button, a confirmation box appears. If you confirm, the network information (including keys) saved on the node is erased. It also removes node information stored on the provisioner (smart phone). UM2361 - Rev 1 page 12/21
Groups view 3.4 Groups view You can access the Groups View from the Groups tab at the bottom of your screen. In this page, you can view and manage the node groups. Here each group is identified by group address. From this view, you can perform the following actions: Toggle a group on and off with the switch button next to the group name Add a new group with the circled plus button Open the Group Settings menu with the settings symbol Open the Nodes or About views through their respective icons at the bottom of the page Figure 7. Groups view 3.5 Add Group view You can create a new group by clicking the plus symbol on the Groups View page. You can enter a logical name for your group in the name field. The Address field will have a default value which you can change, but you must ensure that the new address is a valid group address and that it is not already being used by another group. UM2361 - Rev 1 page 13/21
Group Settings view Figure 8. Add Group fields 3.6 Group Settings view From this view, you can perform the following actions: Toggle group control on and off with the switch button next to the group name. Edit group names. Add or remove mesh nodes from the group subscribers (nodes that subscribe to the group) and group publishers (nodes that publish to the group) list. UM2361 - Rev 1 page 14/21
Group Settings view Figure 9. Group Settings view UM2361 - Rev 1 page 15/21
Network data persistence 4 Network data persistence When you close the app and run it again, it loads any stored nodes and network information. New nodes detected by the network appear in the app as unprovisioned nodes and must undergo provisioning before they can be controlled. UM2361 - Rev 1 page 16/21
Communication security 5 Communication security All communication between BlueNRG-Mesh App and the mesh network is secured by encryption and authentication. The underlying standards of secured communication are compliant with the official BLE mesh specifications. UM2361 - Rev 1 page 17/21
Revision history Table 1. Document revision history Date Version Changes 06-Feb-2018 1 Initial release. UM2361 - Rev 1 page 18/21
Contents Contents 1 STSW-BNRG-Mesh ios app overview...2 2 How to install and launch the app...3 2.1 Introduction to the app controls...4 2.2 Hardware and software requirements...8 3 How to use the app...9 3.1 Provisioning a node...9 3.2 Network view...11 3.3 Node Setting view...12 3.4 Groups view...12 3.5 Add Group view...13 3.6 Group Settings view...14 4 Network data persistence...16 5 Communication security...17 Revision history...18 UM2361 - Rev 1 page 19/21
Glossary Glossary Mesh Address Each node in the network has (atleast) one unique unicast address. Mesh addresses are represented by an unsigned short number (2 bytes). Mesh Node A device that is a member of a mesh network is called node. provisioner A provisioner is a node in the mesh network that provisions and configures device nodes There can be more than one provisioner in the mesh network. provisioning The process of including an unprovisioned device as a node in a mesh network. proxy node To allow a smartphone that cannot receive/transmit BLE Mesh messages to interact with a mesh network, the network assumes the role of Proxy node. publication address A publication address is the default address targeted by the node when it sends a message. A publication address may be a unicast of group addresses. subscription The assignment of a node to one or more groups. universally unique identifier A 128-bit number used to uniquely identify some object or entity on a network. Unprovisioned device A device that is not part of a mesh network. UM2361 - Rev 1 page 20/21
IMPORTANT NOTICE PLEASE READ CAREFULLY STMicroelectronics NV and its subsidiaries ( ST ) reserve the right to make changes, corrections, enhancements, modifications, and improvements to ST products and/or to this document at any time without notice. Purchasers should obtain the latest relevant information on ST products before placing orders. ST products are sold pursuant to ST s terms and conditions of sale in place at the time of order acknowledgement. Purchasers are solely responsible for the choice, selection, and use of ST products and ST assumes no liability for application assistance or the design of Purchasers products. No license, express or implied, to any intellectual property right is granted by ST herein. Resale of ST products with provisions different from the information set forth herein shall void any warranty granted by ST for such product. ST and the ST logo are trademarks of ST. All other product or service names are the property of their respective owners. Information in this document supersedes and replaces information previously supplied in any prior versions of this document. 2018 STMicroelectronics All rights reserved UM2361 - Rev 1 page 21/21