SensorTile
The SensorTile is an IoT module from STMicroelectronics based on the STM32L476JG chipset and used on the STEVAL-STLKT01V1 development kit. The SensorTile development kit offers Bluetooth Low Energy connectivity, and comes standard with onboard sensors to measure acceleration, magnetic force, rotation, barometric pressure, and temperature.
Project Specifics
SensorTile projects start with the following sensor elements imported from the Element Library:
Hardware Specifics
Some devices may have limitations or design restrictions that cause unexpected behavior when used with Atmosphere. Specific information and details pertaining to the SensorTile and its performance on Atmosphere is noted below.
- The SensorTile has no UART support. As a result, SensorTile projects don’t include the UART element.
- The SensorTile has no analog inputs. As a result, SensorTile projects don’t include the ADC pin element.
- The SensorTile has no PWM outputs. As a result, SensorTile projects don’t include the PWM pin element.
Code Export
Code exported from the Atmosphere Studio will be in the format of an STM32 Workbench project. If you are importing the code into STM32Cube IDE, then select “Import STM32 Workbench Project” from the import options dialog.
ST Driver Requirements
When you plug a SensorTile into your computer via USB, the device should mount itself as a USB mass storage device. Most computers and operating systems come with the necessary drivers to display this device. However if you experience the device not appearing while plugged in, you likely need to install drivers to enable this. This behavior has been noticed on Windows and Linux operating systems.
To access and download drivers for ST development boards, see the STM32 Utilities page on the ST website.
Default Pin Mapping
Atmosphere configures each peripheral to a default pin for every supported device, based on ideal pairing of pins and their usage. The default pin configuration is set for convenience and enables each peripheral to work naturally without needing to be modified.
All pins can be used as general purpose input/output (GPIO) unless otherwise specified.
SensorTile projects start with the following pin configuration:
Pin Table
Pin | Description | Notes |
---|---|---|
D6 |
Arduino D2 Pin | Maps to PC1 |
D7 |
Arduino D7 Pin | Maps to PC0 |
The default pin for any peripheral can be changed within an element's properties, from an element that references that particular peripheral.
Internal SensorTile Pins
Each GPIO pin can be accessed using the following nomenclature: P[PORT][PIN]
. For example, port A pin 6 can be accessed with PA6
.
The development kit doesn't provide pin labels, so it's recommended to use the internal pin port and number to reference the pin.
For more detailed information on SensorTile pin information, download the SensorTile Raw Pin Mapping file in the Resources section of this page.
Peripherals
Below is information regarding the SensorTile’s exposed peripherals.
I2C
I2C1
This I2C bus is exposed via the I2C pins on the Arduino connector of the cradle.
SPI
This SPI bus is exposed via the SPI pins on the Arduino connector of the cradle.
UART
The SensorTile has no user accessible UART.
PWM
The SensorTile has no PWM support.
Programming Method
Programming the SensorTile can be done by downloading its project firmware from Atmosphere Studio and directly transferring it to the device over USB. However, unlike many devices supported in Atmosphere the SensorTile doesn’t contain a built-in programmer. Instead you must use an external ST Nucleo board in order to program it.
Setup Configuration
In order to program a SensorTile, ensure you have the following initial setup:
- Connect a 5-pin ST-LINK header to the SWD pins of the SensorTile cradle and the SWD pins on ST-LINK.
If you're using an ST Nucleo board, remove the two jumpers on CN2. This will disconnect the ST-LINK on the Nucleo board from the rest of the Nucleo board, allowing it to connect to the SensorTile cradle.
For further information and pictures detailing programming the SensorTile, visit the official SensorTile User Guide (Page 18).
With the initial setup finished, complete the remaining setup configuration steps:
- The SensorTile is connected to the computer via USB to an available communication port.
- An Internet connection is maintained.
- The project to be programmed has been compiled.
Programming Instructions
With setup complete, you can program the SensorTile:
Once the ST Nucleo board is connected to the computer via USB, it will be mounted as a USB mass storage device, allowing for drag-and-drop programming:
- From Atmosphere Studio’s Embedded tab, click the
button from the tab’s toolbar. This will download the .bin file.
- Locate the downloaded file on your computer, and move it into the ST Nucleo board’s mounted drive.
- After around 20 seconds of programming, the ST Nucleo board will remount itself and your project will begin running on the SensorTile.
If your SensorTile is not appearing as a mounted drive on your computer, it's possible you need to install the proper drivers from STMicroelectronics in order for the board to mount. See this page's Hardware Specifics for information on accessing and installing these drivers.
Guides and Tutorials
Get started using the SensorTile with Atmosphere by walking through the following guides:
SensorTile Guides |
---|
Getting Started with SensorTile |
Demo Projects
Atmosphere includes a variety of SensorTile demo projects for users of all levels. Check them out by clicking the demo’s name to open the project in Atmosphere.
Name | Description |
---|---|
Onboard Sensor Demo | A complete demo that showcases the onboard sensors of the SensorTile. Measure temperature and pressure data and send it to the cloud, while other sensors have their data printed out on the serial debug console. |
Videos
The Atmosphere video library contains the following videos on the SensorTile:
Resources
The following additional resources and downloadable files are available for the SensorTile: