The Thunderboard™ React is a cloud-connected, Bluetooth
Smart-enabled, sensor-driven platform that enables customers to
demo, evaluate, and develop their own unique applications.
It leverages Silicon Labs’ BGM111 Bluetooth Smart module as a wireless system-on-achip (SoC) to collect to various sensor data and deliver it to the cloud through Bluetooth
Low Energy (BLE)-enabled iOS/Android mobile apps. This document provides an overview of the kit including hardware, software application, cloud platform, and mobile app.
It also contains instructions and guidelines to evaluate the simplicity of adding Blue-tooth to your project to connect to the cloud.
®
KEY POINTS
• Low-cost, Bluetooth Smart solution that
collects and delivers data to the cloud
• Hardware includes BGM111 Bluetooth
Smart module linked to sensor inputs
• ThunderBoard React connects to BLEenabled iOS/Android mobile apps
•
Apps connect to a cloud-based multi-client,
real-time synchronization database
Thunderboard™ React is a low-cost, BLE solution that collects and delivers data to the cloud.
Introduction
Figure 1.1. System Application Diagram
The Thunderboard React is a great demonstration and evaluation tool to easily add BLE connectivity to a sensor or actuator application. The mobile
or control the LED states on the Thunderboard React hardware. Individual components of the Thunderboard React can be easily integrated and modified in order to add BLE-to-cloud connectivity for a user’s particular application.
All instructions, collateral, and source files for this solution can be found here: http://www.silabs.com/thunderboardreact.
app seamlessly communicates between the Thunderboard and the cloud database to visualize sensor data collected
This section describes how to quickly get started using the Thunderboard React with its mobile apps and cloud database. For detailed
instructions, refer to Section 4. Operation.
1. Download the mobile app.
a. Links to the iOS and Android mobile app can be found here: http://www.silabs.com/thunderboard
2. Supply power to the Thunderboard React.
a. Remove the battery tab.
b. Set SW3 switch where its toggle is closest to Vbat.
3. Connect the Thunderboard React to the mobile app.
a. Launch the mobile app on the phone, ensuring the phone’s Bluetooth radio is enabled.
b. On the Thunderboard React, press the SW-0 button. The blue LED (LED-B) will blink to indicate it is sending a beacon adver-
tisement.
c. Locate the device on the app which should display “Thunderboard React #nnnnn”, and click on the device in the mobile app to
connect to it.
d. If the device successfully pairs, the mobile app displays available demos and the blue LED on the hardware will stop flashing.
4. Select the demo.
a. For this quick start, select the I/O demo.
b. Once the demo is activated, it will take you to the demonstration screen.
5. Use the demo.
a. Press the SW-0 and SW-1 on the Thunderboard React and witness its visual response along the top area of the phone
screen.
b. On the mobile app itself, press the two buttons in the middle and witness that the Thunderboard React's blue LED (LED-B)
and green LED (LED-G) are statically illuminated.
c. Press both buttons again on the mobile app to extinguish the LEDs.
6. Stream to the Cloud.
a. Ensure the mobile phone has the ability to connect to the internet either through Wi-Fi or cellular connection for this portion of
the demonstration.
b. While in the I/O demo, along the top portion of the screen, drag the toggle switch to activate cloud streaming.
c. Data is now being sent from Thunderboard React to the mobile app to a cloud database on the internet.
d. To see the live stream, select the share icon (up arrow in an open box) next to the toggle switch on the mobile app, and then
select the phone’s mobile browser. This will launch the browser, placing the mobile app in the background while still streaming
data to the cloud.
e. The switch and LED real-time data will now be shown in the browser.
f. While still connected, press the buttons on Thunderboard React and witness the resulting change in states on the cloud.
7. Share the Cloud stream session.
a. While streaming, in the mobile app, select the share icon and then select an email, message client, or social media tool. This
should launch the tool with a pre-populated message containing a hyperlink to the streaming session.
b. Send the message to another device client (such as a laptop or another mobile phone with a web browser).
c. From the device client, launch the hyperlink and witness the simultaneous cloud session being displayed on this device while
the original phone is connected to the Thunderboard React. The cloud platform supports real-time data synchronization across
multiple clients.
8. End the cloud stream.
a. Return to the mobile app and move the upper toggle switch to disable the cloud stream session.
9. Turn off the device.
a. On the Thunderboard React, move the SW3 toggle switch to where it is the closest to Vext.
10. Review the cloud session.
a. If emailed, this provided link will display the resulting summary of the cloud streaming session.
• Open-source, native iOS, and Android mobile apps
• A cloud database (Google Firebase) that supports multiple clients
This solution allows customers to demo, evaluate, and develop their own unique applications.
3.1 Part Number
The part number convention is RD-XXX-YYYY, where:
RDReference Design
XXXXReference Design Number
YYYYReference Design Component
This document will use the reference design number (RD-XXXX) when describing the complete design, and the reference design component (RD-XXXX-YYYY) when describing a specific component.
The following table provides a description and PCB marking for each part number.
Note: Some cases lack
ber.
sufficient space on the PCB, and an internal “IST” marking appears on the PCB instead of the “RD” part num-
Table 3.1. Part Numbers and Description
Part NumberPCB MarkingDescription
CARKITN/ACloud-connected, Bluetooth-enabled pinewood derby car kit with included
RD-0057-0101 Thunderboard React Evaluation Board
RD-0057-0201N/AThunderboard React Bluetooth Sensor Reference Design Kit with BGM111, Si7021,
Si7201, and Si1133.
RD-0057-0101IST-A0057 Rev 2.0Thunderboard React Bluetooth Sensor Evaluation Board with BGM111, Si7021,
Si7201, and Si1133.
3.2 Reference Design Kit
3.2.1 RD-0057-0201 Kit Contents
• Thunderboard React evaluation board
• Quick start card to obtain the latest design collateral
3.2.2 RD-0057-0101 Kit Contents
•
Thunderboard React evaluation board
• Car shell
• Pinewood car base
• Wheels and axles
• Metal screws and stand-offs
• Quick start card to explain assembly and obtain the latest design collateral
This section describes the various operational modes of the Thunderboard React hardware, the Silicon Labs ThunderBoard mobile
apps, the Thundercloud database and how each interact to create a low-cost, BLE-enabled, cloud-connected solution. For this section,
the screen captures will be using the iOS mobile app even though the instructions apply to both mobile apps. For features where the
Android mobile app operates differently than iOS, these instructions will also be provided.
Open App
BLUETOOTH
BLUETOOTH
DISABLED
DISABLED
Prompts to
prompts to
enableBT
enable BT
DEVICE
SETTINGS
bluetooth
settings
NO DEVICE
FOUND
prompts to
turn on device
DEVICE(S)
FOUND
Beacon info
& connect
APP
SETTINGS
Personalize &
preferences
4.1 Download the Mobile Apps
Specific links to
the iOS AppStore and Google Play Store to obtain the free Silicon Labs ThunderBoard mobile apps can be found here:
http://www.silabs.com/thunderboard-react.
Beacon Notification
CHOOSE
DEMO
shows
available
demos
DEMO
shows current
data & cloud
stream option
CLOUD
SYNC
option to send
link or view
now
SEND LINK
choose SMS
or Email
Opens
default
browser
Figure 4.1. Mobile App and Cloud Flow Diagram
SEND SMS/
EMAIL
link to cloud,
link to more
info
SEND SMS/
EMAIL
link to cloud,
link to more
info
VIEW
CLOUD
SYNC
data over time
and summary
MORE INFO
Product
collateral,
code
4.2 Supply Power to the Thunderboard React
If present, remove the battery tab from the battery holder. Set the SW3 switch where its toggle is closest to Vbat to supply power to the
device. Setting the toggle closest to Vext will power-down the device. At power up, the device will enter a self-test mode. If it discovers
an error, it will emit alternating green and blue LEDs. For more information on the self-test, refer to the firmware section. If changing
CR2032 batteries, ensure the positive side of the battery (+) is aligned to the metal battery tab’s plus marking (+).
Figure 4.2. Thunderboard React with Battery Tab
The hardware can additionally be powered via the mini-simplicity debug connector (J3). To do this, ensure the SW3 switch is set to
where its toggle is closest to Vext.
Upon selecting the Silicon Labs ThunderBoard icon on an iOS/Android mobile phone, the app will launch with this introduction screen
for a few seconds, and will then look for nearby Thunderboard React devices:
app is successfully installed on the phone and the hardware is powered, the following sub-sections will describe how
On the Thunderboard
beacon. To save power, the beacon will only be enabled for 30 seconds. If it is necessary to re-activate the BLE beacon, re-press one
of the buttons.
React, press either the SW-0 or SW-1 button. The LED-B will blink to indicate it is sending an advertisement
Figure 4.4. LEDs and Buttons on Thunderboard React
After the launch
screens should either have the message “Looking for Devices” or display the found device(s).
screen completes, the app will display various informal messages as it is looking for a ThunderBoard device. Valid
Figure 4.5. Valid Screens While the App Looks for Device(s)
Once a device is found, it can be selected as described in the next section. The detected device will display its unique name and measured received signal level from the perspective of the mobile phone.
If “Bluetooth is Disabled” is displayed, go to the mobile phone’s settings and ensure its airplane mode is not enabled and the Bluetooth
radio is enabled. If “No Devices Found” is displayed, ensure the Thunderboard React is in nearby range, is powered, and its Blue LED
is flashing.
After Thunderboard React device(s) have been found, tap on the desired device to connect to it.
Operation
A successful connection
the blue LED should stop flashing and the green LED should flash once.
will display available demos, and the device’s information will show along the bottom border. On the hardware,
Figure 4.7. App Screen after Successful Connection
From this screen along the bottom border, the device’s unique name will display along with its estimated battery health. Clicking the
back arrow from this screen will disconnect (un-pair) the device from the mobile app.
To enable opening the app using the advertisement beacon, click on the gear icon for global settings, as described in the user app
settings section.
User-defined settings can be configured in the looking for devices or choose demo screens.
Operation
Figure 4.8. User App Settings
While in this screen, the user can specify their contact information that will then be displayed when sharing links. The user can also
specify desired measurement and temperature units, as well as which 3D model to render in the motion demo (ThunderBoard or ReactCar). The user can also enable beacon notifications that will alert the app when a beaconing Thunderboard React is within the radio’s
signal range and available for connection.
Within the User
board React can be allowed to notify the mobile app of its nearby presence and once clicked, the app will automatically pair with the
device and directly open the choose demo screen. To allow or remove a Thunderboard React, click on ALLOW or REMOVE for that
particular device.
Note: To allow a device it must have already been connected to the app.
App Settings, a user can enable/disable beacon notifications. When these notifications are enabled, a known Thunder-
Figure 4.9. Device Beacon Notification Settings
For iOS devices: In iOS, beacon notifications alert a mobile phone that it is within a nearby beacon. As a result, the phone's OS can
sometimes inhibit notifications so as to avoid flooding the mobile phone with continual notifications as it resides on a boundary of a
beacon’s radio signal range. The best method to reliably demonstrate this feature is to have the allowed Thunderboard React device
powered off, power it up, and then press the SW0 or SW1 button. Within seconds, the beacon should trigger a notification and the
dialog box will allow a user to open the mobile app.
For Android devices: As of Android OS version 4.4, beacon notifications with this demonstration only work if the mobile app is launched
and is at least residing in the phone’s background.
Once the mobile app is connected (paired) to a Thunderboard React, it will display the following available demos:
• Motion: Uses the accelerometer, gyroscope, and hall-effect sensors
• Environment: Uses the temperature, relative humidity, ambient, and UV sensors
I/O: Uses the two momentary push buttons and two LEDs
•
The next sub-sections will describe each demo and how to operate them. The subsequent sub-sections will then describe how to
stream each of these demos to the cloud where they can be viewed and shared by multiple device clients. Both live and completed
streamed demo sessions can be viewed by multiple clients for up to 30 days.
• 3-axis orientation, shown numerically and visually via a 3D rendered model
• 3-axis acceleration, shown numerically
Speed and distance via the hall-effect sensor’s output displayed as a CSC (Cycling Speed and Cadence) service
•
For the rendered 3D model, either the ThunderBoard or the React Car can be displayed in the demo. To change what is displayed, go
to the device settings and select the desired model, as shown in 4.4 User App Settings.
For orientation and acceleration, the Thunderboard React’s axes can be calibrated. To do so, rest the Thunderboard React in an upright position (top of the device facing up). While leaving the device untouched and not moving, click on “calibrate”. The mobile app will
perform a calibration calculation for a few seconds, displaying a pop-up message while it is doing so until it completes. Once completed, move the Thunderboard React and notice the device is now aligned to the 3D model on the mobile app screen. The specifics of the
device-to-app refresh rate as well as the angle values shown in the app can be found in the firmware section.
For speed and distance, the hall-effect sensor is to be paired with a magnet. The firmware is designed to display this sensor as a CSC
service, which means it will assume every nearby magnetic sensor contact point will be counted as a full wheel revolution. From each
revolution, it will determine a speed and distance based on a specific wheel diameter commonly found in pinewood derby races. For
more information on refresh rates and speed values, refer to 6. Firmware.
For a simple demonstration, the mobile app can show how a button press on the device can result in a change on the mobile app
screen, and vice versa. Upon pressing either SW-0 or SW-1, the mobile app will animate the two circle icons along the top area of the
demo screen. Upon pressing either the left or right icons in the lower section of the screen, the blue and green LEDs on Thunderboard
React can be statically illuminated.
While connected to
device clients can view its live stream. The same link will also display the final results of the stream, and will remain available for later
viewing for up to 30 days. All available demos can be streamed to the cloud.
To stream to the cloud while in a demo, move the toggle stream to ON (located along the top right area of the mobile app). The demo’s
results are now being simultaneously transmitted on the app screen and streamed into the cloud. While in this streaming mode, the
session can be shared via a link (see 4.7.1 Send a Link to the Cloud Session), or it can be immediately viewed from the same mobile
device by using its mobile browser and placing the app in the phone’s background (see 4.7.2 View the Cloud Session).
Thunderboard React, the mobile app can simultaneously stream the live demo session to the cloud where multiple
Once a cloud
the same mobile device. To do any of these options, select the share icon along the top right of the app screen (the share icon looks
like an up arrow out of an open box). Upon selecting, the mobile app will display a pop-up window with various available options.
stream session is enabled, the user has the ability to share the stream to others and view the session from the cloud on
Figure 4.15. Sharing the Cloud Session
To share the link, select from a multitude of sharing options (e.g., Email, Twitter, Facebook). For this document, the SMS message and
the email link will be described.
To share via email in iOS, select the email client and a draft email will appear. Add a recipient(s), edit the draft email as needed, and
send the email. On completion, the phone will return the user to the mobile app.
To share via SMS message in iOS, select the message client and a draft message will appear. Add a recipient(s), edit the draft as
needed, and send the message. Upon completion, the phone will return the user to the mobile app.
Figure 4.17. Sharing the Cloud Session via Message
While in the
session directly from the cloud. If connected to the internet, the screen will now display a mobile view of the cloud streaming session.
While in this mode the app will move to the background and maintain the connections to the connected Thunderboard React device and
the cloud database in the internet. The cloud database is a responsible web design and will render the session based on the screen’s
size. For live streams, the cloud view will show the last 30 seconds of collected data. Once a live stream ends, the same link will display
the entire stream session in a summary format.
mobile phone with the app streaming to the cloud, open the share icon and select the mobile browser to view the live
While viewing the
React platform, one of the innovative features of this demo is its ability to support multiple clients from its cloud database using
Firebase.
To view from another device client, this client should be sent a shared link. The other device(s) can then click on the link and open up a
separate, synchronized view from the cloud database.
cloud session from the same mobile client is a great way to demonstrate the cloud-connectivity of the Thunderboard
Figure 4.19. Large Screen Viewing of a Live Cloud Session
Each device’s last
Sessions” in the lower center section of the screen. These past sessions will be available for 30 days from the end of their session time.
ten sessions that have been shared to the cloud can be viewed from the cloud screen. To do so, click on “Past
This section describes the ThunderBoard-React application firmware.
6.1 Obtaining the Firmware Application
The firmware for the ThunderBoard-React can be found within the Silicon Labs Bluetooth Smart SDK as a sample application. This
sample application is provided as both a pre-compiled binary and as a source project that can be opened can be opened and built with
Simplicity Studio.
6.2 Tools Needed for Firmware Modification
The following additional hardware and software is needed to modify the firmware application on the ThunderBoard-React evaluation
board:
Hardware Tools:
• Wireless STK with supplied USB-to-mini-USB cable
Figure 6.3. Verify Bluetooth Smart SDK Installation
The IAR ARM compiler is used to compile the ThunderBoard-React sample application. The compiler is included in IAR Embedded
Workbench for ARM (EWARM), which needs to be installed. To point Simplicity Studio to your IAR installation, go to Settings (Green
cog wheel in upper left hand corner of the Launcher perspective). Then navigate to IAR Embedded Workbench and set the Path to the
IAR Embedded Workbench IDE installation directory.
6.4 Open ThunderBoard-React Project in Simplicity IDE
In the Simplicity Studio Launcher screen, select the Solutions tab on the left-hand side and click the Add Devices button.
Figure 6.5. Add Devices
In the Add Devices box, search for the ThunderBoard React RD-0057-0201 kit, select it, and click OK.
Firmware
Figure 6.6. Add ThunderBoard-React
Once the ThunderBoard-React kit is added and selected, you should see all available resources—like Documentation, Compatible
Tools, etc.—in the Simplicity Studio main screen.
Select a suitable name for your project and click Next. In the Project Setup screen, make sure ThunderBoard-React is selected in the
Board section. Once this is done, the Part section should be automatically set to EFR32BG1B232F256GM48. Then click Finish.
Simplicity Studio will then create a project and open it in the Simplicity IDE and Configurator. In the soc-thunderboard-react.isc tab, click
Generate to fully populate the project with the appropriate files and settings. Click OK to overwrite any files when prompted.
In order to
(SLSDA001A), and a10-pin ribbon cable (supplied with SLSDA001A).
Follow these steps to connect the Wireless STK as a debugger to the Thunderboard React, as shown in the picture above:
1. Remove the radio module plugin on the Wireless Starter Kit.
2. Attach 10-pin adapter board (SLSDA001A) to the two male 20-pin connectors on the Wireless STK.
3.
4. Connect the other end of the 10-pin ribbon cable to the 10-pin Mini Simplicity connector on the ThunderBoard-React
5. Connect the Wireless STK to the platform running Simplicity Studio via either USB or Ethernet.
6. Make sure the power switch on the bottom of the Wireless STK is in the rightmost position, marked AEM.
7. Make sure the power switch on the ThunderBoard React is in the Vext position (away from the battery holder).
program ThunderBoard-React, you need an external debugger/programmer, like a Wireless Starter Kit, a 10-pin adapter
Figure 6.11. Connect Simplicity Studio to a Thunderboard React via Wireless STK
Connect the 10-pin ribbon cable to the middle 10-pin connector, marked MINI. The key tap on the ribbon cable connector should
be pointing down.
In Simplicity Studio return to the main perspective, and left-click on the connected J-link device from the Device list on the left and click
on Device Configuration… from the menu that appears.
Figure 6.12. Device Configuration
In the Configuration menu that appears, go to the Adapter Configuration tab and set Debug Mode to OUT.
In the Device hardware tab, set the Target part to EFR32BG1B232F256GM48 and set the Boards selection to ThunderBoard React
(RD-005701 Rev01). This will ensure Simplicity Studio is set to communicate with ThunderBoard-React through the external adapter
interface.
Once the Debug connection is set up, you can choose to program the ThunderBoard-React with a pre-compiled binary from the Bluetooth Smart SDK or start a debug session from a ThunderBoard React Sensors Demo project in the Simplicity IDE (Press F11 in Simplicity IDE with ThunderBoard React project active).
To program a pre-compiled demo, select the ThunderBoard React RD-0057-0201 from the Solutions tab on the left-hand side of the
main perspective where we added it earlier. Click on Getting Started in the main window, and click on the SOC – ThunderBoard React
box in the Demos list below. In the Demos box that appears, you can select Mode to run with or without the Energy Profiler, and click
Start. When asked to select the kit to run the demo, select the J-Link device that you configured for Debug=OUT earlier. Click OK and
the demo should be programmed to the ThunderBoard-React.
Figure 6.15. Program ThunderBoard React Sample Application
You have successfully programmed a ThunderBoard-React! Note that in some cases when performing this step, the ThunderBoardReact’s Si1133 power supply will drop and cause the board to flash both Blue and Green LEDs. If this occurs, remove both the cable
and the coin-cell battery, and let the ThunderBoard-React sit without power for at least ten minutes. This will clear the Si1133’s low
supply detection circuitry.
The accelerometer and
of the board is divided into three axes: X, Y, and Z, as shown in the figure below.
gyroscope in the MPU-6500 is used to present acceleration and orientation of the sensor board. The orientation
Figure 6.16. Hardware Axis Orientation
To minimize offset in the gyroscope data, the firmware supports a calibration (reset orientation) command. When a calibration is started, the sensor board must be left stationary until the calibration is complete. LED-G will be lit as long as the calibration is ongoing.
When the calibration
equal to the hardware’s actual X, Y, and Z positioning. After calibration successfully completes, any change in orientation after the orientation reset will be represented in the angle difference between X, Y, and Z and x, y, and z, according to the figure below. The angles
presented are Alpha (α), Beta (β), and Gamma (γ).
(reset orientation) command is issued, a reference coordinate system (x, y, z in the figure below) is defined to be
The accelerometers and gyroscope sensors are sampled at 200 Hz by the firmware and the sensor data is used to calculate acceleration and orientation, which can be sent as GATT notifications at 5 Hz.
Note that these
accelerometers has a measurement range of ±16 g and the gyroscopes can detect maximum ±2000 deg/s. If the user rotates the device quickly or drops it on a table, the sensors will most likely enter an overflow situation. There is no indication that an overflow has
occurred.
Normally, the accelerometers are used to calculate the acceleration and the gyroscopes are used to calculate orientation. However, the
combination of accelerometers and gyroscopes makes it possible to zero out drift in the x and y-axis orientations as long as the x and yaxis are within ±80° or the x-axis is within 180 ±80° of the horizontal plane. In this case, the calculated orientation for the x and y-axis
will converge towards the angles calculated from the accelerometers with a time constant of approximately five seconds. There are no
adjustments for the z-axis orientation. Consequently, the calibration will reset the z-angle but not the x and y-angles. The X and Y-axis
is always pointing along the horizontal plane.
There are different rotations that can put the device in a given orientation. However, the convention to bring the device back to its reference where x, y, and z are zero is to first rotate z degrees in the Z-axis, then y degrees in the Y-axis and finally x degrees in the X-axis.
Because of this convention, the x and z-axis will have a range of ±180° and the y-axis has a range of ±90°.
A few examples can illustrate this. All rotations are done “clockwise”, which is at increasing angles when started at zero. All examples
should start at an orientation approximately zero degrees in all three axes.
Rotate the device 360° around the X-axis: During rotation, the x orientation will increase from 0 to 180° when the device is upside
down. Then the x orientation will “jump” from 180 to –179 and continue to increase up to 0 when it is back in the start orientation.
Rotate the device 360° around the Y-axis: During rotation, the y orientation will increase from 0 to 90° when pointing downwards. Rotating it further will make the x-axis to “flip” from 0 to 180° indicating that the device is upside down and “flip” the z-axis from 0 to 180
indicating that it is pointing in the opposite direction relative to start. Rotating it further from pointing down to pointing up will decrease
the y orientation from 90 to –90°. At the top, the x and z orientation will again “flip” back to 0 and the y orientation will increase from –90
to 0. Note that when the device is upside down, the x orientation can easily “flip” between 180 and –179° for small rotations in the Xaxis.
sensors have measurement limitations, and exposing them to excessive inputs will cause measurement errors. The
Rotate the device 360° around the Z-axis: During rotation, the z x orientation will increase from 0 to 180°. Then the z orientation will
jump from 180 to –179 and continue to decrease down to 0 when it is back in the start position.
6.6.2 Environment Sensors
The Si7021 measures both relative humidity and temperature, whereas the Si1133 measures ambient light and UV index. The sensors
are measured when a read command is received and the measurement data is included in the read response.
6.6.3 Battery Level
The battery level is sensed by the BGM111 as it measures the supply voltage level and translates this into a percentage of remaining
charge using a look-up table specific for a given CR2032 battery. The battery level is measured every ten seconds.
6.6.4 Hall-effect Sensor
The hall-effect sensor is used to count wheel revolutions by detecting nearby magnetic fields beyond a threshold and will increment a
revolution counter every time the sensor outputs a rising edge. The GATT client is notified of the updated revolution count at a 5 Hz rate
through the CSC service.
After the device
ware failures. If the test is OK, the device transitions to the Sleep state. If a failure is found, the device enters the Error state.
6.7.2 Error State
If an error is found, the device stays in the Error state until the device is reset by removing and re-installing the battery. While in this
state, the blue LED (LED-B) and green LED (LED-G) will blink in an alternating pattern.
wakes up from Reset, it performs a Self-test to check that all sensors are can be accessed and that there are no hard-
SELF TESTERROR
Figure 6.18. Firmware Application State Diagram
Not OK
ADVERTISEMENT
BEACONING
Connection
opened
Connection
closed
6.7.3 Sleep State
In this state the Bluetooth Smart stack is not operational, all sensors are put in their lowest power state and the BGM111 is put in a
Deep Sleep state (EM2). The current consumption in this state is around 10 µA. While in this state, both the blue and green LEDs are
extinguished.
6.7.4 Advertisement State
In this state, the Bluetooth Smart stack is in Advertising mode using the data found in Table 6.1 Beacon Advertisement Data on page
45. All sensors are put in their lowest power state and the BGM111 is in Sleep (EM1) between each advertisement transmission. If a
connection is made to a central device, the advertisement is stopped and the device enters the Connected state. If no connection is
made within 30 seconds, the device goes back to the Deep Sleep state. While in Deep Sleep state, the blue LED (LED-B) is blinking
once a second and the green LED (LED-G) is off.
6.7.5 Connected State
This state is entered once a device is connected to a central device. In this state, the device acts as a GATT server and all sensors are
configured to their respective operational states. The BGM111 is in Sleep (EM1) when not handling the stack or the sensors.
• The green LED (LED-G) blinks once when a connection is opened.
• Both LEDs can be set/cleared by the central device (GATT client) through the Bluetooth Smart connection (Automation IO service).
6.8 Bluetooth Smart Over-the-air Definition
This section describes the over-the-air interface between the phone application and the Thunderboard React including advertisement
data, scan response, and GATT services and characteristics.
6.8.1 Advertisement
The EFR32 Blue Gecko alternates between two advertisement payloads every second. One payload is an iBeacon payload and the
other is a regular non-beacon payload containing the local name and a manufacturing-specific firmware ID.
The major and minor values of the beacon payload together constitute a 24-bit ID that is unique to an individual ThunderBoard device.
The two Least
Least Significant Octet of the major value. The unique ID is equal to the #nnnnnnnn decimal value given in the Device Name in the
table above. The unique ID is also equal to the three Least Significant Octets of the Manufacturer Identifier in 6.9.3 Device Information
Service (0x180A).
Significant Octets of the unique ID equals the 16-bit minor value. The Most Significant Octet of the unique ID equals the
This section describes how to obtain the mobile app and cloud software. Each application also includes a readme.md that provides an
overview and how to make use of the source code if one wants to modify the particular application.
Android Mobile App
The android mobile app source code can be found here:
Silicon Laboratories Inc.
400 West Cesar Chavez
Austin, TX 78701
USA
Smart.
Connected.
Energy-Friendly.
Products
www.silabs.com/products
Quality
www.silabs.com/quality
Support and Community
community.silabs.com
Disclaimer
Silicon Labs intends to provide customers with the latest, accurate, and in-depth documentation of all peripherals and modules available for system and software implementers using or
intending to use the Silicon Labs products. Characterization data, available modules and peripherals, memory sizes and memory addresses refer to each specific device, and "Typical"
parameters provided can and do vary in different applications. Application examples described herein are for illustrative purposes only. Silicon Labs reserves the right to make changes
without further notice and limitation to product information, specifications, and descriptions herein, and does not give warranties as to the accuracy or completeness of the included
information. Silicon Labs shall have no liability for the consequences of use of the information supplied herein. This document does not imply or express copyright licenses granted
hereunder to design or fabricate any integrated circuits. The products are not designed or authorized to be used within any Life Support System without the specific written consent of
Silicon Labs. A "Life Support System" is any product or system intended to support or sustain life and/or health, which, if it fails, can be reasonably expected to result in significant
personal injury or death. Silicon Labs products are not designed or authorized for military applications. Silicon Labs products shall under no circumstances be used in weapons of mass
destruction including (but not limited to) nuclear, biological or chemical weapons, or missiles capable of delivering such weapons.
Trademark Information
Silicon Laboratories Inc.® , Silicon Laboratories®, Silicon Labs®, SiLabs® and the Silicon Labs logo®, Bluegiga®, Bluegiga Logo®, Clockbuilder®, CMEMS®, DSPLL®, EFM®,
EFM32®, EFR, Ember®, Energy Micro, Energy Micro logo and combinations thereof, "the world’s most energy friendly microcontrollers", Ember®, EZLink®, EZRadio®, EZRadioPRO®,
Gecko®, ISOmodem®, Precision32®, ProSLIC®, Simplicity Studio®, SiPHY®, Telegesis, the Telegesis Logo®, USBXpress® and others are trademarks or registered trademarks of
Silicon Labs. ARM, CORTEX, Cortex-M3 and THUMB are trademarks or registered trademarks of ARM Holdings. Keil is a registered trademark of ARM Limited. All other products or
brand names mentioned herein are trademarks of their respective holders.
Not Recommended for New Designs
Loading...
+ hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.