STMicroelectronics STEVAL-MKI109V3 User Manual
Advertisement
Advertisement
UM2116
User manual
STEVAL-MKI109V3 Professional MEMS Tool motherboard for MEMS adapter boards
Introduction
The STEVAL-MKI109V3 motherboard provides users with a complete, ready-to-use platform for the evaluation of
STMicroelectronics MEMS products.
It includes a high-performance 32-bit microcontroller which functions as a bridge between the sensors and a PC, on which you can download and run the graphical user interface (GUI) or dedicated software routines for customized applications.
The board features a DIL24 socket to mount all available adapters for both digital and analog output MEMS devices.
UM2116 - Rev 8 - July 2020
For further information contact your local STMicroelectronics sales office.
www.st.com
1
UM2116
Demonstration kit description
Demonstration kit description
The Professional MEMS Tool is a complete demonstration kit for digital and analog MEMS sensors. Thanks to its
DIL24 connector, a wide range of MEMS adapter boards can be used.
Figure 1. Demonstration board block diagram
UM2116 - Rev 8
•
The Professional MEMS Tool demonstration kit is based on the STM32F401VE microcontroller and can be connected to a PC via USB. Data from MEMS sensors connected to the board can be read through the PC GUI provided with the kit.
The Professional MEMS Tool also implements the device firmware upgrade (DFU) feature, so it can be reprogrammed with a new firmware release without the need to use a programmer (see www.st.com/mems ).
•
The Professional MEMS Tool integrates:
Six LEDs:
– two LEDs connected via FET buffers to the interrupt pins of digital adapters
– a power/USB LED
– three general-purpose LEDs for firmware state indication
Three buttons:
– two user buttons on a dedicated GPIO of the microcontroller
– a microcontroller reset button
All the MEMS adapter pins are available on board connectors J1 and J3.
page 2/41
UM2116
Demonstration kit description
Figure 2. Top silkscreen of the Professional MEMS Tool kit
UM2116 - Rev 8 page 3/41
Figure 3. Top view of Professional MEMS Tool kit
UM2116
Demonstration kit description
UM2116 - Rev 8
Figure 3 highlights some of the main components on the top layer of the Professional MEMS Tool kit.
1.
Button BT3 is used to reset the STM32.
2.
Button BT2 connected to STM32 GPIOs and available to the user. To enter DFU mode: a.
press buttons BT3 (Reset) and BT2 together b.
first release BT3 and then release BT2
3.
BT1 connected to STM32 GPIOs and available to the user.
4.
Jumpers J13 (VDD) and J14 (VDDIO) allow the user to measure the sensor current consumption by connecting a multimeter in series with their terminals.
5.
Jumper J10 is used as a general purpose input to manually set certain features for several MEMS adapters.
6.
Jumper J12 is used as a general purpose input to manually set certain features for several MEMS adapters.
7.
Jumper J11 is used to set the self-test feature during testing of Professional MEMS Tool PCB.
8.
Jumper J7 is used to select either JTAG (JP7 open – NRST control not allowed from programming connector J6) or SWD mode (JP7 shorted – NRST control allowed from connector J6).
9.
J6 connector can be used to reprogram the STM32 and debug the code through the JTAG or SWD protocols.
10. Jumper J4 can be used to directly supply the board (from 4.5 V to 5.5 V) instead of through the USB connector.
11. LED D6 lights up when the board is powered.
12. J8 connector can be used for UART RX/TX communication.
page 4/41
UM2116
Demonstration kit description
13. LEDs D1, D2, and D3 are general-purpose LEDs used to indicate firmware states; e.g.: a.
LED D3 YELOW light up when specific firmware is selected from those available b.
LED D2 RED on indicates that the microcontroller is properly configured for communication with the sensor c.
LED D1 GREEN blinks according to the sensor data rate selected
14. J9 connector can be used for general purpose SPI bus.
15. LEDs D4 and D5 are directly connected to the interrupt pins of the MEMS digital adapters (if available on the sensor mounted on the adapter board).
Figure 4. How to plug the DIL24 adapter on STEVAL-MKI109V3 shows how to plug the DIL 24 adapter MEMS
module on the Professional MEMS Tool. VDD and VDDIO are in the top left corner (pins 1 and 2) and GND is in the bottom right corner (pin 13).
Figure 4. How to plug the DIL24 adapter on STEVAL-MKI109V3
UM2116 - Rev 8 page 5/41
2
2.1
UM2116
Professional MEMS Tool board installation
Professional MEMS Tool board installation
•
•
The software packages can be downloaded from the st.com website; it is arranged in the following directory structure:
DRIVER : it contains the installation package for the USB drivers needed to connect the Professional MEMS
Tool board to the PC. No driver is needed on Linux and Mac OS platforms, so this directory is included in the
Windows installation package only. On Windows 10, it is suggested to use Microsoft native drivers and avoid any additional installation.
FIRMWARE : it contains .dfu and .bin files for firmware upgrade.
Hardware installation (Windows® platforms before Windows 10)
•
• For Linux ® and Mac OS ® platforms, no driver installation is required.
For Windows platforms, install the STM32 virtual COM port driver by running VCP_V1.5.0_Setup.exe in the
DRIVER folder of the Windows installation package and follow the instructions.
Once the driver is installed, connect the demonstration kit board to a free USB port. A confirmation message should appear.
Figure 5. Successful device driver installation
Note:
Confirm which COM port has been assigned to the board: right click on My Computer and select Manage, then select Device Manager and scroll through the list to Ports (COM & LPT).
The STM32 virtual COM port driver for Windows platforms and related documents are packaged with the STSW-
STM32102 software download at www.st.com
Figure 6. Virtual COM port assignment
UM2116 - Rev 8 page 6/41
UM2116
Firmware upgrade
2.2
2.2.1
Note:
Note:
2.2.2
Firmware upgrade
The MEMS STEVAL-MKI109V3 demonstration board can be reprogrammed by a dedicated application via USB, in accordance with the DFU class specification defined by the USB Implementers Forum.. This direct reprogramming of the microcontroller is particularly suited to USB applications where the same USB connector can be used both for the standard operating mode and the reprogramming process.
•
•
To configure the Professional MEMS Tool board in DFU mode: press button BT2 before supplying the board and release it when LED D6 lights up or
1.
press BT3 (Reset) and BT2 together
2.
release BT3 followed by BT2.
Led D6 will light up and the device should appear in Windows Device manager as “STM device in DFU mode”.
Firmware upgrade on Windows
On Windows platform, we recommend the use of the multi-platform STM32CubeProgrammer software. Refer to user manual UM2237 on www.st.com for further details.
The STM32CubeProgrammer software uses *.bin source files for firmware upgrade.
In case you have installed older DfuSe software on your machine, you must uninstall it before installing the
STM32CubeProgrammer software.
DFU on Linux®
The DFU program for Linux operating systems is dfu-util. The procedure for Ubuntu Linux operating systems is described below.
Step 1.
Open a terminal and run (with sudo to ensure the correct permissions): sudo apt-get install dfu-util
Step 2.
Create a udev rules file: sudo gedit /etc/udev/45-Professional MEMS Tool.rules
Step 3.
Fill it with the following content:
# 0483:5740 - STM32F4 in USB Serial Mode (CN5)
ATTRS{idVendor}=="0483", ATTRS{idProduct}=="5740",
ENV{ID_MM_DEVICE_IGNORE}="1"
ATTRS{idVendor}=="0483", ATTRS{idProduct}=="5740",
ENV{MTP_NO_PROBE}="1" SUBSYSTEMS=="usb",
ATTRS{idVendor}=="0483", ATTRS{idProduct}=="5740",
MODE:="0666"
KERNEL=="ttyACM*", ATTRS{idVendor}=="0483",
ATTRS{idProduct}=="5740", MODE:="0666"
# 0483:df11 - STM32F4 in DFU mode (CN5) SUBSYSTEMS=="usb",
ATTRS{idVendor}=="0483", ATTRS{idProduct}=="df11", MODE:="0666"
Step 4.
Instruct udev to reload its rules: sudo udevadm control --reload-rules
You should now be able to program the board.
Step 5.
Connect the Professional MEMS Tool board in DFU mode and run: sudo dfu-util -a 0 -D dfu_path/file.dfu -d 0483:df11 where:
– dfu_path is the path to the dfu file
– file.dfu is the dfu file name example: sudo dfu-util -a 0 -D Desktop/Professional MEMS ToolV2_REL_4_0.dfu -d
0483:df11 .
UM2116 - Rev 8 page 7/41
UM2116
Firmware upgrade
2.2.3
Step 6.
Disconnect and reconnect the board to exit DFU mode and start using the board with the new firmware.
DFU on Mac OS®
The DFU program used for Mac operating systems is dfu-util.
Step 1.
Before installing DFU on your Mac OS, you need to install Homebrew. Open a terminal and run:
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/ install/master/install)"
Step 2.
Install dfu-utils: brew install dfu-util
You should now be able to program the board
Step 3.
Connect the Professional MEMS Tool board in DFU mode, and run: dfu-util -a 0 -D dfu_path/file.dfu -d 0483:0000 where:
– dfu_path is the path to the dfu file
– file.dfu is the dfu file name example: dfu-util -a 0 -D Desktop/Professional MEMS ToolV2_REL_4_0.dfu d0483:0000
Step 4.
Disconnect and reconnect the board to exit DFU mode and start using the board with the new firmware.
UM2116 - Rev 8 page 8/41
3
UM2116 - Rev 8
Adapter board
STEVAL-MKI154V1
STEVAL-MKI158V1
STEVAL-MKI159V1
STEVAL-MKI160V1
STEVAL-MKI161V1
STEVAL-MKI163V1
STEVAL-MKI164V1
STEVAL-MKI165V1
STEVAL-MKI166V1
STEVAL-MKI167V1
STEVAL-MKI168V1
STEVAL-MKI169V1
STEVAL-MKI170V1
STEVAL-MKI172V1
STEVAL-MKI173V1
STEVAL-MKI174V1
STEVAL-MKI175V1
STEVAL-MKI176V1
STEVAL-MET001V1
STEVAL-MKI087V1
STEVAL-MKI089V1
STEVAL-MKI092V1
STEVAL-MKI105V1
STEVAL-MKI106V1
STEVAL-MKI107V1
STEVAL-MKI107V2
STEVAL-MKI108V2
STEVAL-MKI110V1
STEVAL-MKI122V1
STEVAL-MKI125V1
STEVAL-MKI134V1
STEVAL-MKI135V1
STEVAL-MKI136V1
STEVAL-MKI137V1
STEVAL-MKI141V1
STEVAL-MKI142V1
STEVAL-MKI151V1
Supported MEMS adapter boards
Table 1. List of supported MEMS adapter boards
Device
LSM9DS0
AIS3624DQ
LSM9DS1
LSM6DS3
LSM6DS0
LSM303C
LIS2HH12
LPS25HB
H3LIS100DL
H3LIS200DL
IIS2DH
I3G4250D
IIS328DQ
LSM303AGR
LSM303AH
LIS2DS12
LIS2DE12
LSM6DS3H
LPS22HB
LIS331DL
LIS331DLH
LIS331HH
LIS3DH
LSM303DLHC
L3G4200D
L3GD20
9AXISMODULE v2 [LSM303DLHC + L3GD20]
AIS328DQ
LSM330DLC
A3G4250D
LIS3DSH
LIS2DH
L3GD20H
LIS3MDL
HTS221
LPS25H
LIS2DH12
UM2116
Supported MEMS adapter boards page 9/41
UM2116 - Rev 8
Adapter board
STEVAL-MKI177V1
STEVAL-MKI178V1
STEVAL-MKI178V2
STEVAL-MKI179V1
STEVAL-MKI180V1
STEVAL-MKI181V1
STEVAL-MKI182V1
STEVAL-MKI183V1
STEVAL-MKI184V1
STEVAL-MKI185V1
STEVAL-MKI186V1
STEVAL-MKI188V1
STEVAL-MKI189V1
STEVAL-MKI190V1
STEVAL-MKI191V1
STEVAL-MKI192V1
STEVAL-MKI193V1
STEVAL-MKI194V1
STEVAL-MKI195V1
STEVAL-MKI196V1
STEVAL-MKI197V1
STEVAL-MKI198V1K
STEVAL-MKI199V1K
STEVAL-MKI200V1K
STEVAL-MKI201V1K
STEVAL-MKI202V1K
STEVAL-MKI203V1K
STEVAL-MKI204V1K
STEVAL-MKI205V1
STEVAL-MKI206V1
STEVAL-MKI207V1
STEVAL-MKI208V1K
STEVAL-MKI209V1K
STEVAL-MKI210V1K
STEVAL-MKI211V1K
STEVAL-MKI213V1
STEVAL-MKI214V1
STEVAL-MKI215V1
Device
LPS35HW
LSM6DSL
LSM6DSL
LIS2DW12
LIS3DHH
LIS2MDL
ISM330DLC
LPS33HW
ISM303DAC
IIS2MDC
IIS3DHHC
L20G20IS
LSM6DSM
LIS2DTW12
IIS2DLPC
LPS22HH
ASM330LHH
LSM6DSR
LSM6DSRX
LSM6DSO
LSM6DSOX
STTS751
STLM20
STTS22H
STTS75
STDS75
STCN75
STLM75
LPS33W
AIS2DW12
ISM330DHCX
IIS3DWB
IIS2ICLX
ISM330DHCX
LIS25BA
LPS27HHW
LPS33K
LSM6DSO32
UM2116
Supported MEMS adapter boards page 10/41
UM2116
Supported commands
4
4.1
4.1.1
Supported commands
The microcontroller mounted on the Professional MEMS Tool board is equipped with dedicated firmware that allows control of the digital output MEMS sensor, and acquisition of the measured data.
The firmware also handles the communication between the board and the PC through the USB bus.
Getting started
Before using the commands supported by the firmware, the following procedure must be performed:
Step 1.
Connect the Professional MEMS Tool to the USB port
Step 2.
Launch an application that allows sending commands through the virtual serial port. The remainder of this document assumes the use of Microsoft ® HyperTerminal program available with the Windows XP operating system, but you can use any similar tool.
Step 3.
Create a new connection, enter a name (e.g. STEVAL-MKI109V3), and click OK .
Step 4.
In the Connect Using field, select the virtual COM port to which the USB port has been mapped, and click OK .
Step 5.
In port settings, set bits per second to 115200, data bits to 8, parity to none, stop bits to
1, and flow control to none; click OK
Step 6.
In the HyperTerminal application window, select files > properties > settings , then click
ASCII Setup .
Step 7.
Select Send line ends with line feeds and Echo typed characters locally
Step 8.
Click OK to close the ASCII Setup window
Step 9.
Click OK button to close the Properties window.
Once this procedure has been completed you can use the commands described in the following sections by typing them in the “HyperTerminal” window.
Quick start
The basic sequence of commands (based on the LIS3DH accelerometer) to start a data communication session and to retrieve X, Y, and Z acceleration data from the demonstration kit is:
Step 1.
Connect the Professional MEMS Tool to the USB port
Step 2.
Start “Microsoft© HyperTerminal” (or another similar application) and configure it as described in
Step 3.
Enter the *setdb105v1 command in the HyperTerminal” window, (supposing the LIS3DH adapter board is used – for other adapters see the relevant datasheets to check the register configuration), enter the command * Zoff to enable the control of the device by the STM32F401VE microcontroller, and *w2047 to switch on the LIS3DH and to set the data rate to 50 Hz
Step 4.
Send the *debug command to get the X, Y, and Z data measured by the sensor
Step 5.
Send *stop to end the continuous acquisition and visualization.
UM2116 - Rev 8 page 11/41
4.2
UM2116
Supported commands
Command
*setdbXXXVY
*start
*debug
*stop
*Zon
*Zoff
*dev
*ver
*board
*rAA
*wAADD
*grAA
*gwAADD
*mrAA
*mwAADD
*prAAx
*pwAADD
*hrAA
*hwAADD
*trAA
*twAADD
*single
*sindebug
*list
*listdev
*echoon
*echooff
*fiforst
*fifomde
*fifostr
*fifostf
*fifobtf
*fifobts
Supported commands
The firmware supports a wide range of MEMS adapters; the complete list of supported commands and their descriptions are given below. Commands are not case sensitive.
Table 2. List of supported commands
Description
Selects firmware according to the adapter connected
Starts continuous data acquisition
Returns the output data in readable text format
Stops data acquisition
Forces High impedance state. Turns off VDD and
VDDIO power supply.
Exits from High impedance state. Turns on VDD and VDDIO power supply
Device name
Firmware version
Returns board name
Accelerometer register read
Accelerometer register write
Gyroscope register read
Gyroscope register write
Magnetometer register read
Magnetometer register write
Pressure sensor register read
Pressure sensor register write
Humidity sensor register read
Humidity sensor register write
Temperature sensorregister read
Temperaturesensor register write
It gets a single point data acquisition
It gets a single point data acquisition in readable text
Prints the list of MKIs supported
Prints the list of devices supported
Activates the write verbose mode
Deactivates the write verbose mode
Accelerometer “Reset mode” enable
Accelerometer “FIFO mode” enable
Accelerometer “FIFO stream” enable
Accelerometer “Stream to FIFO” enable
Accelerometer “Bypass to FIFO” enable
Accelerometer “Bypass to stream” enable
Returned value
Device name e.g.: LIS3DH
(see
Table 4. Returned values for *start command
) e.g.: LIS3DH e.g.: V1.5.2
e.g.: RAAhDDh e.g.: GRAAhDDh e.g.: MRAAhDDh e.g.: PRAAhDDh e.g.: HRAAhDDh e.g.: TRAAhDDh
(see
Table 4. Returned values for *start command
) e.g.: 087V1 089V1 092V1 105V1...
e.g.: LIS331DL LIS331DLH LIS331HH… e.g.: RAAhDDh st XH XL YH YL ZH ZL IR FC FS st XH XL YH YL ZH ZL IR FC FS st XH XL YH YL ZH ZL IR FC FS st XH XL YH YL ZH ZL IR FC FS st XH XL YH YL ZH ZL IR FC FS st XH XL YH YL ZH ZL IR FC FS
UM2116 - Rev 8 page 12/41
UM2116 - Rev 8
UM2116
Supported commands
Command
*fifodstr
*gfiforst
*gfifomde
*gfifostr
*gfifostf
*gfifobtf
*gfifobts
*gfifodstr
*pfiforst
*pfifomde
*pfifostr
*pfifostf
*pfifobtf
*pfifobts
*pfifodstr
*rmAA
AA
3
…
1
*hrmAA
1
NN
*mutli-rAA
1
AA
2
AA
3
…
*grmAA
1
1
NN
*multi-grAA
AA
3
…
*mrmAA
AA
3
…
*prmAA
*multi-prAA
*trmAA
1
1
1
NN
*multi-mrAA
NN
NN
*multi-hrAA
AA
3
…
NN
1
1
1
AA
2
AA
2
AA
AA
2
2
Description
Accelerometer “Dynamic stream” enable
Gyroscope “Reset mode” enable
Gyroscope “FIFO mode” enable
Gyroscope “FIFO stream” enable
Gyroscope “Stream to FIFO” enable
Gyroscope “Bypass to FIFO” enable
Gyroscope “Bypass to stream” enable
Gyroscope “Dynamic stream” enable
Pressure sensor “Reset mode” enable
Pressure sensor “FIFO mode” enable
Pressure sensor “FIFO stream” enable
Pressure sensor “Stream to FIFO” enable
Pressure sensor “Bypass to FIFO” enable
Pressure sensor “Bypass to stream” enable
Pressure sensor “Dynamic stream” enable
Multiple read of NN Accelerometer successive registers
Accelerometer registers multiple read
Multiple read of NN Gyroscope successive registers
Gyroscope registers multiple read
Multiple read of NN Magnetometer successive registers
Magnetometer registers multiple read
Multiple read of NN Pressure sensor successive registers
Pressure sensor registers multiple read
Multiple read of NN Humidity sensor successive registers
Humidity sensor registers multiple read
Multiple read of NN Temperature sensor successive registers
*multi-trAA
AA
3
…
1
AA
2
*odr [param]
Temperature sensor registers multiple read
Sets ODR speed
Returned value
st XH XL YH YL ZH ZL IR FC FS st XH XL YH YL ZH ZL IR FC FS st XH XL YH YL ZH ZL IR FC FS st XH XL YH YL ZH ZL IR FC FS st XH XL YH YL ZH ZL IR FC FS st XH XL YH YL ZH ZL IR FC FS st XH XL YH YL ZH ZL IR FC FS st XH XL YH YL ZH ZL IR FC FS st XH XL YH YL ZH ZL IR FC FS st XH XL YH YL ZH ZL IR FC FS st XH XL YH YL ZH ZL IR FC FS st XH XL YH YL ZH ZL IR FC FS st XH XL YH YL ZH ZL IR FC FS st XH XL YH YL ZH ZL IR FC FS st XH XL YH YL ZH ZL IR FC FS
RMAA
1
GRMAA
PRMAA
HRMAA
TRMAA hNNhDD
MULTI-RAA
MRMAA
1
1
1
1
1
MULTI-PRAA
MULTI-HRAA
1 hDD
1 hDD hNNhDD
1
MULTI-GRAA
1 hDD
1 h AA
2 hNNhDD
MULTI-MRAA
1 hDD hNNhDD
1 hDD
1 hNNhDD hNNhDD
1
MULTI-TRAA
1
1
1 hDD
1
1
1
2 h AA hDD
1 hDD
...DD
hDD
2 hDD
2 hDD
2
2
2
2 h AA
1 h AA hDD h AA
NN
2
...DD
hDD
2 hDD
...DD
hDD
...DD
hDD
...DD
hDD
1 h AA
2
...DD
2
2
2 h h…. AAnDDnh
NN
NN
2
NN h…. AAnDDnh
NN
NN hDD
2
2
2 h h…. AAnDDnh h h…. AAnDDnh h h h…. AAnDDnh h h…. AA n
1. RP: Reference pressure XLSB.MSB, IR: interrupt byte; FC: FIFO control register; FS: FIFO source register
DD n h page 13/41
UM2116
Supported commands
4.2.1
4.2.2
Command
*power_on
*power_off
*setvddaX.Y
*setvddioX.Y
*adc_single
Table 3. List of supported commands for power supply control and I/V measurement
*get_i [param]
*get_v [param]
Description
Turns on VDD and VDDIO power supply
Turns off VDD and VDDIO power supply
Sets VDD voltage value “X.Y” Volts. e.g.: 1.8
Sets VDDIO voltage value “X.Y” Volts. e.g.: 1.8
Measures VDD, VDDIO, IDD, IDDIO and another values sent in binary form
Measures IDD, IDDIO with automatic / semiautomatic current ranges toggling and measurement method selection. Output values format selected by parameters [F / B / A] [S] [C] [L]
Returned value adc:D1D2D3…D20 e.g. param = A ida Idd = 152 µA IddIO =
0.092 µA e.g. param = A vda Vdd = 1.807 V VddIO =
1.806 V
*ranges_auto
*ranges_man
*range_ma [param]
*range_mb [param]
Measures VDD, VDDIO
Output values format selected by parameters [F/B/A]
Turns on automatic IDD/IDDIO ranges selection (default)
Turns off automatic IDD/IDDIO ranges selection (manual IDD/IDDIO ranges selection possible)
Selects current range for IDD
Selects current range for IDDIO
*adc_uni_stop Stops all measurements
or not, and also whether the STEVAL-MKIxxxxx of the adapter is selected or not (using the *Setdb command).
*setdbXXXVY
This command selects the part of the firmware able to handle the adapter board sensor connected to the board.
For example, *setdb105V1 selects the firmware for the LIS3DH.
The D3 LED (yellow) switches on automatically.
*start
This command initiates continuous data acquisition. When sent, the device returns a string of bytes (plus carriage return and line feed) like st OUT1 OUT2 OUT3 IR STP BT .
The first two bytes are always the ASCII char s and t which correspond to the hexadecimal values {73h 74h}.
OUT1 , OUT2 , and OUT3 contain the values measured at device outputs; if the output data is represented in more than 8 bits, OUT1 , OUT2 , and OUT3 are split into high byte (e.g., XH ) and low byte (e.g., XL ). In case of 24-bit resolution for some sensors, there is also an extra-low byte (e.g., pressure data: PXL PL PH ).
IR (INT1 INT2) contains the interrupt bytes and BT SW1|SW2 contains the bytes that describe the state of the buttons integrated on the board.
Specifically, bit#0 of the SW1|SW2 data corresponds to the status of the SW1 button on the demonstration kit board: it is set to 1 when the SW1 is pressed (otherwise 0). Bit#1 has the same behavior but is dedicated to the
SW2.
STP (STPL STPH) contains the step counter bytes for the internal device step counter value.
The string is ended with the carriage return ( \r ) and line feed ( \n ) bytes.
Before sending the *start command, the device must be out of 3-state (high impedance) and some registers must be configured according to user needs. Therefore, *start must be preceded by a * zoff and some
Register Write commands.
UM2116 - Rev 8 page 14/41
UM2116 - Rev 8
UM2116
Supported commands
As data is continuously acquired, LED D1 (green) blinks according to sensor data rate selected.
*start command is sent. Similar byte strings are returned for groups of commands related to FIFO, as is shown
in Table 5. Digital output accelerometers: supported commands list ,
Table 6. Digital output gyroscopes: supported commands list
,
Table 7. Digital output magnetometer: supported commands list ,
Table 8. Digital output pressure sensor: supported commands list ,
Table 9. Digital output humidity sensor: supported commands list
,
Table 10. Digital output temperature sensor: supported commands list and
Table 11. Analog output temperature sensor: supported commands list .
STEVAL # (Device)
STEVAL-MKI089V1 (LIS331DLH)
STEVAL-MKI092V1 (LIS331HH)
STEVAL-MKI105V1 (LIS3DH)
STEVAL-MKI110V1 (AIS328DQ)
STEVAL-MKI125V1 (A3G4250D)
STEVAL-MKI134V1 (LIS3DSH)
STEVAL-MKI135V1 (LIS2DH)
STEVAL-MKI136V1 (L3GD20H)
STEVAL-MKI151V1 (LIS2DH12)
STEVAL-MKI158V1 (AIS3624DQ)
STEVAL-MKI164V1 (LIS2HH12)
STEVAL-MKI168V1 (IIS2DH)
STEVAL-MKI170V1 (IIS328DQ)
STEVAL-MKI179V1 (LIS2DW12)
STEVAL-MKI180V1 (LIS3DHH)
STEVAL-MKI186V1 (IIS3DHHC)
STEVAL-MKI191V1 (IIS2DLPC)
STEVAL-MKI206V1 (AIS2DW12)
STEVAL-MKI087V1 (LIS331DL)
STEVAL-MKI175V1 (LIS2DE12)
STEVAL-MKI166V1 (H3LIS100DL)
STEVAL-MKI167V1 (H3LIS200DL)
STEVAL-MKI208V1K (IIS3DWB)
STEVAL-MKI174V1 (LIS2DS12)
STEVAL-MKI176V1 (LSM6DS3H)
STEVAL-MKI137V1 (LIS3MDL)
STEVAL-MKI181V1 (LIS2MDL)
STEVAL-MKI185V1 (IIS2MDC)
STEVAL-MKI107V1 (L3G4200D)
STEVAL-MKI107V2 (L3GD20)
STEVAL-MKI169V2 (I3G4250D)
STEVAL-MKI188V1 (L20G20IS)
Table 4. Returned values for *start command
s t XH XL YH YL ZH ZL int1 int2 sw1|sw2 \r \n s t X Y Z int1 int2 sw1|sw2 \r \n s t X 0 Y 0 Z 0 int1 int2 sw1|sw2 \r \n s t XH XL YH YL ZH ZL int1 sw1|sw2 \r \n s t XH XL YH YL ZH ZL int1 int2 stpL stpH 0 sw1|sw2 \r \n s t M_XH M_XL M_YH M_YL M_ZH M_ZL int1 sw1|sw2 \r \n s t G_XH G_XL G_YH G_YL G_ZH G_ZL
G_int1 G_int2 sw1|sw2 \r \n
STEVAL-MKI122V1 (LSM330DLC) s t A_XH A_XL A_YH A_YL A_ZH A_ZL G_XH G_XL G_YH G_YL G_ZH G_ZL
A_int1 A_int2 G_int1 G_int2 sw1|sw2 \r \n page 15/41
UM2116
Supported commands
UM2116 - Rev 8
STEVAL # (Device)
STEVAL-MKI106V1(LSM303DLHC)
STEVAL-MKI108V2 (9AXIS MODULE)
STEVAL-MKI159V1 (LSM9DS1)
STEVAL-MKI154V1 (LSM9DS0)
STEVAL-MKI159V1 (LSM9DS1)
s t A_XH A_XL A_YH A_YL A_ZH A_ZL M_XH M_XL M_YH M_YL M_ZH M_ZL
A_int1 A_int2 sw1|sw2 \r \n s t A_XH A_XL A_YH A_YL A_ZH A_ZL G_XH G_XL G_YH G_YL G_ZH G_ZL
M_XH M_XL M_YH M_YL M_ZH M_ZL
A_int1 G_int2 G_int3 0 sw1|sw2 \r \n s t A_XH A_XL A_YH A_YL A_ZH A_ZL G_XH G_XL G_YH G_YL G_ZH G_ZL
M_XH M_XL M_YH M_YL M_ZH M_ZL
A_int1 A_int2 sw1|sw2 \r \n s t A_XH A_XL A_YH A_YL A_ZH A_ZL G_XH G_XL G_YH G_YL G_ZH G_ZL
M_XH M_XL M_YH M_YL M_ZH M_ZL
A_int1 A_int2 G_int3 0 sw1|sw2 \r \n s t A_XH A_XL A_YH A_YL A_ZH A_ZL G_XH G_XL G_YH G_YL G_ZH G_ZL
Int1 Int2 sw1|sw2 \r \n
STEVAL-MKI161V1 (LSM6DS0)
STEVAL-MKI160V1 (LSM6DS3)
STEVAL-MKI178V1 (LSM6DSL)
STEVAL-MKI178V2 (LSM6DSL)
STEVAL-MKI182V1 (ISM330DLC)
STEVAL-MKI189V1 (LSM6DSM) s t A_XH A_XL A_YH A_YL A_ZH A_ZL G_XH G_XL G_YH G_YL G_ZH G_ZL
Int1 Int2 StpL StpH 0 sw1|sw2 \r \n
STEVAL-MKI163V1 (LSM303C)
STEVAL-MKI172V1 (LSM303AGR) s t A_XH A_XL A_YH A_YL A_ZH A_ZL M_XH M_XL M_YH M_YL M_ZH M_ZL
A_int G_int sw1|sw2 \r \n s t A_XH A_XL A_YH A_YL A_ZH A_ZL M_XH M_XL M_YH M_YL M_ZH M_ZL
A_int1 Aint2 G_int sw1|sw2 \r \n s t A_XH A_XL A_YH A_YL A_ZH A_ZL M_XH M_XL M_YH M_YL M_ZH M_ZL
A_int1 A_int2 M_int StpL StpH sw1|sw2 \r \n s t PXL PL PH TL TH REF_PXL REF_PL REF_PH
P_int1 sw1|sw2 \r \n
STEVAL-MKI173V1 (LSM303AH)
STEVAL-MKI184V1 (ISM303DAC)
STEVAL-MKI142V1 (LPS25H)
STEVAL-MKI165V1 (LPS25HB)
STEVAL-MET001V1 (LPS22HB)
STEVAL-MKI177V1 (LPS35HW)
STEVAL-MKI183V1 (LPS33HW)
STEVAL-MKI192V1 (LPS22HH)
STEVAL-MKI205V1 (LPS33W)
STEVAL-MKI213V1 (LPS27HHW)
STEVAL-MKI214V1 (LPS33K)
STEVAL-MKI141V1 (HTS221)
STEVAL-MKI190 (LIS2DTW12)
STEVAL-MKI193 (ASM300LHH)
STEVAL-MKI198V1K (STTS751)
STEVAL-MKI199V1K (STLM20)
STEVAL-MKI200V1K (STTS22H)
STEVAL-MKI201V1K (STTS75)
STEVAL-MKI202V1K (STDS75)
STEVAL-MKI203V1K (STCN75)
STEVAL-MKI204V1K (STLM75)
STEVAL-MKI194V1 (LSM6DSR)
STEVAL-MKI196V1 (LSM6DSO)
STEVAL-MKI215V1 (LSM6DSO32) s t PXL PL PH TL TH REF_PXL REF_PL REF_PH
P_int1 sw1|sw2 \r \n s t HL HH TL TH H_int1 sw1|sw2 \r \n s t A_XH A_XL A_YH A_YL A_ZH A_ZL Int1 Int2 TL TH sw1|sw2 \r \n s t TH TL Int1 sw1|sw2 \r \n s t TH TL sw1|sw2 \r \n s t TH TL Int1 sw1|sw2 \r \n s t A_XH A_XL A_YH A_YL A_ZH A_ZL G_XH G_XL G_YH G_YL G_ZH G_ZL
Int1 Int2 FSMLC_INT FSM1 FSM2 StpL StpH TL TH sw1|sw2 \r \n page 16/41
UM2116
Supported commands
4.2.6
4.2.7
4.2.8
4.2.3
4.2.4
4.2.5
4.2.8.1
STEVAL # (Device)
STEVAL-MKI211V1K (LIS25BA)
STEVAL-MKI195V1 (LSM6DSRX)
STEVAL-MKI197V1 (LSM6DSOX)
STEVAL-MKI207V1 (ISM330DHCX)
STEVAL-MKI210V1K (ISM330DHCX)
s t XH XL YH YL ZH ZL sw1|sw2 \r \n s t A_XH A_XL A_YH A_YL A_ZH A_ZL G_XH G_XL G_YH G_YL G_ZH G_ZL
Int1 Int2 FSMLC_INT FSM1 FSM2 StpL StpH MLC0 MLC1 MLC2 MLC3 MLC4 MLC5
MLC6 MLC7 TL TH sw1|sw2 \r \n
STEVAL-MKI209V1 (IIS2ICLX) s t A_XH A_XL A_YH A_YL Int1 Int2 FSMLC_INT FSM1 FSM2 StpL StpH MLC0
MLC1 MLC2 MLC3 MLC4 MLC5 MLC6 MLC7 TL TH sw1|sw2 \r \n
1. XH: X-axis output high byte (same for Y axis, Z axis, G gyroscope, M Magnetometer, P pressure, H humidity, T temperature,
Stp step counter). XL: X-axis output low byte (same for Y axis, Z axis, G gyroscope, M Magnetometer, P pressure, H humidity, T temperature, Stp step counter) . FSMx: Finite state machine bytes. MLCx:Machine Learning core source registers bytes
*debug
This command starts continuous data acquisition in debug mode. When sent to the board, it returns the output values measured by the device formatted in a readable text format.
*stop
This command interrupts any acquisition session that has been started with either the *start or *debug commands.
*Zon and *Zoff
These commands put the STM32F401VE microcontroller on the demonstration kit in 3-state (high impedance).
They allow the isolation of the sensor from the microprocessor and let the user interact with the sensor in a purely analog fashion.
When the kit is first turned on, the lines are in 3-state (high impedance) mode and you must send the * Zoff command to allow communication between the sensor and the microcontroller.
After this command has been executed, LED D2 (Red) is turned on. If the * Zoff command has not been launched, the firmware ignores any other command sent to sensor.
*dev
This command retrieves the name of the adapter connected to the demonstration kit; e.g., LIS3DH .
*ver
This command returns the version of the firmware loaded in the microprocessor; e.g., V1.5.2
.
*rAA
This command reads the contents of the accelerometer registers in the demonstration kit board. The hexadecimal value AA written in upper case represents the address of the register to be read.
Once the read command is issued, the board returns RAAhDDh , where AA is the address sent by the user and DD is the data present in the register.
For example, to read the register at address 0x20, the user issues the command *r20 , which would return a result like R20hC7h .
*rmAA1NN
This command allows the contents of multiple accelerometer registers in the demonstration kit board to be read in single data block. Once this command is issued, the board returns a set of NN values starting with
RMAA
1 hNNhDD
1 hDD
2 h… DD
NN h where AA register and so on for next registers.
1 is the starting address set by user and DD
1 is the data present in this
For example, *rm2006 reads six registers starting from 0x20, which would return a result like
RM20h06h27h00h00h00hA0h0Bh .
UM2116 - Rev 8 page 17/41
UM2116
Supported commands
4.2.8.2
4.2.9
4.2.10
4.2.10.1
4.2.10.2
4.2.11
4.2.12
4.2.12.1
*multi-rAA1AA2AA3...AAN
This command reads multiple accelerometer registers in the demonstration kit board in a single data block. Once this command is issued, the board returns set of N values starting RAA
1 h… AA
N hDDNh where AA
1 is the starting address set by user and DD
1
1 hDD is the data present in this register.
For example, *multi-r202425292B2D reads six register starting from 0x20, which would return a result like
MULTI-R20h27h24hA0h25h0Bh29hE0h2Bh3Fh2Dh90h .
*wAADD
This command writes the contents of the accelerometer registers in the demonstration kit board. The hexadecimal upper case values AA and DD represent the address of the register and the data to be written, respectively.
For example, *w20C7 writes 0xC7 to the register at address 0x20
*grAA
Section Revision historySection Revision history
This command allows the contents of the gyroscope registers in the demonstration kit board to be read. The hexadecimal, upper case AA represents the address of the register to be read.
Once the read command is issued, the board returns GRAAhDDh , where AA is the address sent by the user and
DD is the data present in the register.
For example, *gr20 reads the register at address 0x20, which would return a result like GR20hC7h .
*grmAA1NN
This command allows the contents of multiple gyroscope registers in the demonstration kit board to be read in single data block. Once this command is issued, the board returns set of NN values starting with
GRMAA
1 hNNhDD
1 hDD register and so on.
2 h… DD
NN h where AA
1 is the starting address set by user and DD
1 is the data present in this
For example, *grm2006 reads six registers starting from 0x20, which would return a result like
GRM20h06h27h00h00h00hA0h0Bh .
*multi-grAA1AA2AA3...AAN
This command reads multiple gyroscope registers in the demonstration kit board in a single data block. Once this command is issued, the board returns set of N values starting with is the starting address set by user and DD
1
MULTI-GRAA
1 hDD
1 h… is the data present in this register and so on.
AA
N hDDNh where AA
1
For example, *multi-gr202425292B2D reads six registers starting from 0x20, which would return a result like
MULTI-GR20h27h24hA0h25h0Bh29hE0h2Bh3Fh2Dh90h .
*gwAADD
This command writes the contents of the gyroscope registers in the demonstration kit board. The hexadecimal, upper case. AA and DD represent the address of the register and the data to be written, respectively.
For example, *gw20C7 writes 0xC7 to the register at address 0x20.
*mrAA
This command allows the contents of the magnetometer registers in the demonstration kit board to be read. The hexadecimal, upper case AA represents the address of the register to be read.
Once the read command is issued, the board returns MRAAhDDh , where AA is the address sent by the user and
DD is the data present in the register.
For example, *mr00 reads the register at address 0x00, which would return a result like MR00h10h .
*mrmAA1NN
This command readss the contents of multiple magnetometer registers in the demonstration kit board in a single data block. Once this command is issued, the board returns set of NN values starting with RMAA hDD
2 h…
DD
NN h where AA
1 is the starting address set by user and DD
1
1 is the data present in this register.
hNNhDD
1
For example, *mrm2006 reads six register starting from 0x20, which would return a result like
MRM20h06h27h00h00h00hA0h0Bh .
UM2116 - Rev 8 page 18/41
UM2116
Supported commands
4.2.12.2
4.2.13
4.2.14
4.2.14.1
4.2.14.2
4.2.15
4.2.16
4.2.16.1
*multi-mrAA1AA2AA3...AAN
This command reads multiple magnetometer registers in the demonstration kit board in a single data block. Once this command is issued, the board returns set of N values starting with MULTI-MRAA
AA
1 is the starting address set by user and DD
1
1 hDD
1 h… AA is the data present in this register, and so on.
N hDDNh , where
For example, *multi-mr202425292B2D reads six registers starting from 0x20, which would return a result like
MULTI-MR20h27h24hA0h25h0Bh29hE0h2Bh3Fh2Dh90h .
*mwAADD
This command writes the contents of the magnetometer registers in the demonstration kit board. Hexadecimal, upper case AA and DD represent the address of the register and the data to be written, respectively.
For example, *mw0120 writes 0x20 to the register at address 0x01.
*prAA
This command reads the contents of the pressure sensor registers in the demonstration kit board. The hexadecimal, upper case AA represents the address of the register to be read.
Once the read command is issued, the board returns PRAAhDDh , where AA is the address sent by the user and
DD is the data present in the register.
For example, *pr20 reads the register at address 0x20, which would return a value like PR20h10h .
*prmAA1NN
This command reads the contents of multiple pressure sensor registers in the demonstration kit in a single data block. Once this command is issued, the board returns set of NN values starting with PRMAA hDD
2 h…
DD
NN h where AA
1 is the starting address set by user and DD
1
1 hNNhDD
1 is the data present in this register, and so on…
For example, *prm2006 reads six registers starting from 0x20, which would return a value like
PRM20h06h27h00h00h00hA0h0Bh .
*multi-prAA1AA2AA3...AAN
This command reads multiple pressure sensor registers in the demonstration kit board in a single data block.
Once this command is issued, the board returns set of N values starting with MULTI-PRAA where AA
1 is the starting address set by user and DD
1
1 hDD
1 h… AA is the data present in this register, and so on.
N hDDNh
For example, *multi-pr202425292B2D reads six registers starting from 0x20, which would return a result like
MULTI-PR20h27h24hA0h25h0Bh29hE0h2Bh3Fh2Dh90h .
*pwAADD
This command writes the contents of the pressure sensor registers in the demonstration kit board. The hexadecimal, upper case AA and DD represent the address of the register and the data to be written, respectively.
For example, *pw20C7 writes 0xC7 to the register at address 0x20.
*hrAA
This command reads the contents of the humidity sensor registers in the demonstration kit board. The hexadecimal, upper case AA represents the address of the register to be read.
Once the read command is issued, the board returns HRAAhDDh , where AA is the address sent by the user and
DD is the data present in the register.
For example, *hr20 reads the register at address 0x20, which would return a result like HR20h10h .
*hrmAA1NN
This command reads the contents of multiple humidity sensor registers in the demonstration kit board in a single data block. Once this command is issued, the board returns set of NN values starting with
HRMAA
1 hNNhDD
1 hDD register, and so on.
2 h… DD
NN h where AA
1 is the starting address set by user and DD
1 is the data present in this
For example, *hrm2006 reads six registers starting from 0x20, which would return a result like
HRM20h06h27h00h00h00hA0h0Bh .
UM2116 - Rev 8 page 19/41
UM2116
Supported commands
4.2.21
4.2.22
4.2.23
4.2.24
4.2.16.2
4.2.17
4.2.18
4.2.18.1
4.2.18.2
4.2.19
4.2.20
4.2.25
*multi-hrAA1AA2AA3...AAN
This command reads multiple humidity sensor registers in the demonstration kit board in a single data block.
Once this command is issued, the board returns set of N values starting with MULTI-HRAA where AA
1 is the starting address set by user and DD
1
1 hDD
1 h… AA is the data present in this register, and so on.
N hDDNh
For example, *multi-hr202425292B2D reads six registers starting from 0x20, which would return a result like
MULTI-HR20h27h24hA0h25h0Bh29hE0h2Bh3Fh2Dh90h .
*hwAADD
This command writes the contents of the humidity sensor registers in the demonstration kit board. The hexadecimal, upper case AA and DD represent the address of the register and the data to be written, respectively.
For example *hw20C7 writes 0xC7 to the register at address 0x20.
*trAA
This command reads the contents of the temperature sensor registers in the demonstration kit board. The hexadecimal, upper case AA represents the address of the register to be read. Once the read command is issued, the board returns TRAAhDDh , where AA is the address sent by the user and DD is the data present in the register.
For example, *tr20 reads the register at address 0x20, which would return a result like TR20h10h .
*trmAA1NN
This command reads the contents of multiple temperature sensor registers in the demonstration kit board in a single data block. Once this command is issued, the board returns set of NN values starting with
TRMAA
1 hNNhDD
1 hDD
2 h… DD
NN h where AA
1
is the starting address set by user and DD
1
is the data present in this register, and so on. For example, *trm2006 reads six registers starting from 0x20, which would return a result like TRM20h06h27h00h00h00hA0h0Bh .
*multi-trAA1AA2AA3...AAN
This command reads multiple temperature sensor registers in the demonstration kit board in a single data block.
Once this command is issued, the board returns set of where AA
1
is the starting address set by user and DD
1
N values starting with MULTI-TRAA
1 hDD
1 h… AANhDDNh
is the data present in this register, and so on. For example,
*multi-tr202425292B2D reads six registers starting from 0x20, which would return a result like MULTI-
TR20h27h24hA0h25h0Bh29hE0h2Bh3Fh2Dh90h .
*twAADD
This command writes the contents of the temperature sensor registers in the demonstration kit board. The hexadecimal, upper case AA and DD represent the address of the register and the data to be written, respectively.
For example *tw20C7 writes 0xC7 to the register at address 0x20.
*single
This command may be used to read just one set of data. It returns the read values of one data sample if the sensor is configured properly.
*sindebug
This command returns a single point data acquisition in readable text ASCII format.
*list
The command returns the list of MKI adapters supported by the firmware in ASCII format.
*listdev
This command returns the list of devices supported by the firmware in ASCII format.
*echoon
This command is used to activate the write command verbose mode so that the firmware automatically reads the contents of a register that has just been written to check if the write was successful.
For example, * echoon launched after *w2027 returns R2027 .
*echooff
This command stops the write command verbose mode.
UM2116 - Rev 8 page 20/41
UM2116
Supported commands
4.2.36
4.2.37
4.2.38
4.2.39
4.2.40
4.2.41
4.2.30
4.2.31
4.2.32
4.2.33
4.2.34
4.2.35
4.2.42
4.2.43
4.2.26
4.2.27
4.2.28
4.2.29
*fiforst
This command enables the accelerometer FIFO reset mode. For more details see application note AN3308 on www.st.com.
*fifomde
This command enables the accelerometer FIFO mode. For more details see application note AN3308 on www.st.com.
*fifostr
This command enables the accelerometer FIFO stream mode. For more details see application note AN3308 on www.st.com.
*fifostf
This command enables the accelerometer Stream-to-FIFO mode. For more details see application note AN3308 on www.st.com.
*fifobtf
This command enables the accelerometer Bypass-to-FIFO mode.
*fifobts
This command enables the accelerometer Bypass-to-Stream mode.
*fifodstr
This command enables the accelerometer Dynamic Stream mode.
*gfiforst
This command enables the gyroscope FIFO reset mode.
*gfifomde
This command enables the gyroscope FIFO mode.
*gfifostr
This command enables the gyroscope FIFO stream mode.
*gfifostf
This command enables the gyroscope Stream-to-FIFO mode.
*gfifobtf
This command enables the gyroscope Bypass-to-FIFO mode.
*gfifobts
This command enables the gyroscope Bypass-to-Stream mode.
*gfifodstr
This command enables the gyroscope Dynamic Stream mode.
*pfiforst
This command enables the pressure sensor FIFO reset mode.
*pfifomde
This command enables the pressure sensor FIFO mode.
*pfifostr
This command enables the pressure sensor FIFO stream mode.
*pfifostf
This command enables the pressure sensor Stream-to-FIFO mode.
UM2116 - Rev 8 page 21/41
UM2116
Supported commands
4.2.44
4.2.45
4.2.46
4.2.47
4.2.48
4.2.49
4.2.50
4.2.51
4.2.52
*pfifobtf
This command is used to enable the pressure sensor Bypass-to-FIFO mode.
*pfifobts
This command is used to enable the pressure sensor Bypass-to-Stream mode.
*pfifodstr
This command enables the pressure sensor Dynamic Stream mode.
*setvddaX.Y and *setvddioX.Y
These commands set the power supply VDD and VDDIO voltage values of device adapter.
For example, *setvdda3.6
sets 3.6V on VDDA. Note that both voltages VDD and VDDIO for modules are independent. If * setvdda and * setvddio have not been sent before the * power_on command, the setting is the default voltage defined in the device datasheet selected during the * setdb initialization. Please refer to device datasheet regarding specified VDD and VDDIO values and their relationship (i.e., which of these can be higher, etc.).
As the maximum voltages are defined also by the * setdb command, you cannot set values above these limits.
*power_on and *power_off
These commands are used to switch on and to switch off the VDD and VDDIO power supplies of the device adapter together. The proper power-on sequence of both voltages is handled internally by firmware.
*adc_single
This command is used to get a one-shot set of measured values of VDD and VDDIO voltages; IDD and IDDIO currents, etc.
*odr [p1]
•
This command is used to set ODR speed when data acquisition is driven by TIMER (analog sensors).
P1 ODR in mHz: 1 to 2000000
*get_i [p1] [p2] [p3] [p4]
•
•
•
•
This command is used to get average IDD and IDDIO during set/calculated time interval. Current ranges toggling and measurement method selection is done automatically as default setup.
P1 form of output data:
– F or f - floating-point (1 µA base)
– B or b - fixed-point (1 nA base)
– A or a - ASCII (readable text)
P2 status bits:
– S or s - Two bytes containing information (overflow, underflow, current range index) will be added at the end of the IDD, IDDIO data
P3 continuous (repetitive) measurement:
– C or c - firmware will send measured values periodically
P4 Long Time Enable:
– L or l firmware will wait for waveform edges or Drdy pulses until it appears or until another *get_i or
*adc_uni_stop command interrupts it
*get_v [p1]
•
This command is used to get average VDD and VDDIO VddIO (precise measurement with calibrations).
P1 form of output data:
– F or f - floating-point (1 V base)
– B or b - fixed-point (1 mV base)
– A or a - ASCII (readable text)
UM2116 - Rev 8 page 22/41
UM2116
Supported commands
4.2.53
4.2.54
4.2.55
4.2.56
*ranges_auto and *ranges_man
These commands are used to toggle between automatic and manual current ranges selection. The default command is *ranges_auto.
*range_ma [p1] and *range_mb [p1]
•
•
•
These commands are used to select current ranges manually.
*range_ ma … IDD, *range_ mb … IDDIO
P1 current range: 5, 10, 25, 50, 100, 200, 500, 1000, 2500, 5000, 10000, 20000, 50000, 100000
Full scale of the selected range = 300000 / P1 [µA]
*adc_run_time [p1]
•
This command is used to set the time interval during which ADC samples the measured current waveforms.
P1 time in milliseconds: 1 to 50000 (default is 500 ms)
*adc_uni_stop
This command is used to stop all measurements.
UM2116 - Rev 8 page 23/41
4.3
UM2116
Digital output accelerometers: supported commands
Digital output accelerometers: supported commands
Table 5. Digital output accelerometers: supported commands list
Command Description
*list
*listdev
*echoon
*echooff
*fiforst
*fifomde
*fifostr
*fifostf
*fifobtf
*setdbXXXVY
*start
*debug
*stop
*Zon
*Zoff
*dev
*ver
*rAA
*rmAA
1
NN
*multi-rAA
1
.. AA
N
*wAADD
*single
*sindebug
Selects firmware according to the adapter connected
Starts continuous data acquisition
Returns the output data in readable text format
Stops data acquisition
Forces High impedance state. Turns off VDD and
VDDIO power supply
Exits from High impedance state. Turns on VDD and
VDDIO power supply
Device name
Firmware version
Accelerometer register read
Multiple accelerometer registers read
Multiple accelerometer registers read
Accelerometer register write
It gets a single point data acquisition
It gets a single point data acquisition in readable text format
Prints the list of MKIs supported
Prints the list of devices supported
Activates the write verbose mode
Deactivates the write verbose mode
Accelerometer “Reset mode” enable
Accelerometer “FIFO mode” enable
Accelerometer “FIFO stream” enable
Accelerometer “Stream-to-FIFO” enable
Accelerometer “Bypass-to-FIFO” enable
Accelerometer “Bypass-to-Stream” enable
Accelerometer “Dynamic Stream” enable
1. IR: interrupt bytes; FC: FIFO control register; FS: FIFO source register
2. Available only for devices with embedded FIFO
Returned value
(See
Table 4. Returned values for *start command
) e.g.: LIS3DH e.g.: V1.5.2
e.g.: RAAhDDh e.g.: RMAA
1 hNNhDD
1 h…DD
NN h e.g.:MULTI-RAA
1 hDD
1 h…AA
N hDDNh
(See
Table 4. Returned values for *start command
) e.g.: 087V1 089V1 092V1 105V1...
e.g.: LIS331DL LIS331DLH LIS331HH… e.g.: RAAhDDh st XH XL YH YL ZH ZL IR FC FS \r \n st XH XL YH YL ZH ZL IR FC FS \r \n st XH XL YH YL ZH ZL IR FC FS \r \n st XH XL YH YL ZH ZL IR FC FS \r \n st XH XL YH YL ZH ZL IR FC FS \r \n st XH XL YH YL ZH ZL IR FC FS \r \n st XH XL YH YL ZH ZL IR FC FS \r \n
UM2116 - Rev 8 page 24/41
4.4
UM2116
Digital output gyroscopes: supported commands
Digital output gyroscopes: supported commands
The table below lists the commands supported by the devices/demonstration boards including a digital output gyroscope.
Table 6. Digital output gyroscopes: supported commands list
Command Description
*setdbXXXVY
*start
*debug
*stop
*Zon
*Zoff
*dev
*ver
*grAA
*grmAA
1
NN
*multi-grAA
1
.. AA
N
*gwAADD
*single
*sindebug
*list
*listdev
*echoon
*echooff
*gfiforst
*gfifostf
Selects FW according to the adapter connected
Starts continuous data acquisition
Returns the output data in readable text format
Stops data acquisition
Forces High impedance state. Turns off VDD and
VDDIO power supply
Exits from High impedance state. Turns on VDD and
VDDIO power supply.
Device name
Firmware version
Gyroscope register read
Multiple gyroscope registers read
Multiple gyroscope registers read
Gyroscope register write
It gets a single point data acquisition
It gets a single point data acquisition in readable text format
Prints the list of MKIs supported
Prints the list of devices supported
Activates the write verbose mode
Deactivates the write verbose mode
Gyroscope “Reset mode” enable
Gyroscope “FIFO mode” enable
Gyroscope “FIFO stream” enable
Gyroscope “Stream to FIFO” enable
Gyroscope “Bypass to FIFO” enable
*gfifobts
*gfifodstr
Gyroscope “Bypass to stream” enable
Gyroscope “Dynamic stream” enable
Returned value
(See
Table 4. Returned values for *start command
) e.g.: L3GD20H e.g.: V1.5.2
e.g.: GRAAhDDh e.g.: GRMAA
1 hNNhDD
1 h…DD
NN h e.g.:MULTI-GRAA
1 hDD
1 h…AA
N hDDNh
(See
Table 4. Returned values for *start command
) e.g.: 087V1 089V1 092V1 105V1...
e.g.: LIS331DL LIS331DLH LIS331HH… e.g.: GRAAhDDh st XH XL YH YL ZH ZL IR FC FS \r \n st XH XL YH YL ZH ZL IR FC FS \r \n st XH XL YH YL ZH ZL IR FC FS \r \n st XH XL YH YL ZH ZL IR FC FS \r \n st XH XL YH YL ZH ZL IR FC FS \r \n st XH XL YH YL ZH ZL IR FC FS \r \n st XH XL YH YL ZH ZL IR FC FS \r \n
1. IR: interrupt bytes; FC: FIFO control register; FS: FIFO source register
2. Available only for devices with embedded FIFO
UM2116 - Rev 8 page 25/41
4.5
UM2116
Digital output magnetometers: supported commands
Digital output magnetometers: supported commands
Command
*setdbXXXVY
*start
Table 7. Digital output magnetometer: supported commands list
Description
Selects firmware according to the adapter connected
Starts continuous data acquisition
(See Table 4. Returned values for *start command
)
*debug
*stop
*Zon
*Zoff
*dev
*ver
*mrAA
*mrmAA
1
NN
*multi-mrAA
1
...AA
N
*mwAADD
Returns the output data in readable text format
Stops data acquisition
Forces High impedance state. Turns off VDD and VDDIO power supply.
Exits from High impedance state. Turns on VDD and VDDIO power supply.
Device name
Firmware version
Magnetometer register read
Multiple magnetometer registers read
Multiple magnetometer registers read
Magnetometer register write e.g.: LIS2MDL e.g.: V1.5.2
e.g.: MRAAhDDh e.g.: MRMAA
1 hNNhDD
1 h…DD
NN h e.g.:MULTI-MRAA
1 hDD
1 h…AA
N hDDNh
*single It gets a single point data acquisition
(See Table 4. Returned values for *start command
)
*sindebug
*list
It gets a single point data acquisition in readable text format
Prints the list of MKIs supported
*listdev Prints the list of devices supported e.g.: 087V1 089V1 092V1 105V1...
e.g.: LIS331DL LIS331DLH
LIS331HH… e.g.: MRAAhDDh *echoon
*echooff
Activates the write verbose mode
Deactivates the write verbose mode
1. IR: interrupt bytes; FC: FIFO control register; FS: FIFO source register
UM2116 - Rev 8 page 26/41
4.6
UM2116
Digital output pressure sensor: supported commands
Digital output pressure sensor: supported commands
Table 8. Digital output pressure sensor: supported commands list
Command Description Returned value
*setdbXXXVY
*start
*debug
*stop
*Zon
*Zoff
*dev
*ver
*prAA
*prmAA
1
NN
*multi-prAA
1
.. AA
N
*pwAADD
*single
*sindebug
*list
*listdev
*echoon
*echooff
*pfiforst
*pfifostf
Selects firmware according to the adapter connected
Starts continuous data acquisition
Returns the output data in readable text format
Stops data acquisition
Forces High impedance state. Turns off VDD and
VDDIO power supply.
Exits from High impedance state. Turns on VDD and
VDDIO power supply
Device name
Firmware version
Pressure sensor register read
Multiple pressure sensor registers read
Multiple pressure sensor registers read
Pressure sensor register write
It gets a single point data acquisition
It gets a single point data acquisition in readable text format
Prints the list of MKIs supported
Prints the list of devices supported
Activates the write verbose mode
Deactivates the write verbose mode
Pressure sensor “Reset mode” enable
Pressure sensor “FIFO mode” enable
Pressure sensor “FIFO stream” enable
Pressure sensor “Stream to FIFO” enable
Pressure sensor “Bypass to FIFO” enable
*pfifobts
*pfifodstr
Pressure sensor “Bypass to stream” enable
Pressure sensor “Dynamic stream” enable
(See
Table 4. Returned values for *start command
) e.g.: LPS22HH e.g.: V1.5.2
e.g.: PRAAhDDh e.g.: PRMAA
1 hNNhDD
1 h…DD
NN h e.g.:MULTI-PRAA
1 hDD
1 h…AA
N hDDNh
(See
Table 4. Returned values for *start command
) e.g.: 087V1 089V1 092V1 105V1...
e.g.: LIS331DL LIS331DLH LIS331HH… e.g.: PRAAhDDh st PXL PL PH TL TH IR FC FS \r \n st PXL PL PH TL TH IR FC FS \r \n st PXL PL PH TL TH IR FC FS \r \n st PXL PL PH TL TH IR FC FS \r \n st PXL PL PH TL TH IR FC FS \r \n st PXL PL PH TL TH IR FC FS \r \n st PXL PL PH TL TH IR FC FS \r \n
1. IR: interrupt bytes; FC: FIFO control register; FS: FIFO source register
2. Available only for devices with embedded FIFO
UM2116 - Rev 8 page 27/41
4.7
UM2116
Digital output humidity sensor: supported commands
Digital output humidity sensor: supported commands
The table below lists the commands supported by the devices/demonstration boards including a digital output humidity sensor.
Command
*setdbXXXVY
*start
Table 9. Digital output humidity sensor: supported commands list
Description
Selects firmware according to the adapter connected
Returned value
Starts continuous data acquisition
(See
Table 4. Returned values for *start command )
*debug
*stop
*Zon
*Zoff
*dev
*ver
*hrAA
*hrmAA
1
NN
*multi-hrAA
1
.. AA
N
*hwAADD
Returns the output data in readable text format
Stops data acquisition
Forces High impedance state. Turns off VDD and VDDIO power supply.
Exits from High impedance state. Turns on VDD and VDDIO power supply.
Device name
Firmware version
Humidity sensor register read
Multiple humidity sensor registers read
Multiple humidity sensor registers read
Humidity sensor register write e.g.: HTS221 e.g.: V1.5.2
e.g.: HRAAhDDh e.g.: HRMAA
1 hNNhDD
1 h…DD
NN h e.g.:MULTI-HRAA
1 hDD
1 h…AA
N hDDNh
*single It gets a single point data acquisition
(See
Table 4. Returned values for *start command )
*sindebug
*list
It gets a single point data acquisition in readable text format
Prints the list of MKIs supported
*listdev
*echoon
*echooff
Prints the list of devices supported
Activates the write verbose mode
Deactivates the write verbose mode e.g.: 087V1 089V1 092V1 105V1...
e.g.: LIS331DL LIS331DLH
LIS331HH… e.g.: HRAAhDDh
UM2116 - Rev 8 page 28/41
4.8
UM2116
Digital output temperature sensor: supported commands
Digital output temperature sensor: supported commands
The table below lists the commands supported by the devices/evaluation boards including a digital output temperature sensor.
*setdbXXXVY
Table 10. Digital output temperature sensor: supported commands list
Command Description
Selects firmware according to the adapter connected
Returned value
*start Starts continuous data acquisition
(See: Table 4. Returned values for *start command )
*debug
*stop
*Zon
*Zoff
*dev
*ver
*trAA
*trmAA
1
NN
*multi-trAA
1
.. AAN
*twAADD
Returns the output data in readable textformat
Stops data acquisition
Forces High impedance state. Turns off
VDD and VDDIO power supply.
Exits from High impedance state. Turns on VDD and VDDIO power supply.
Device name
Firmware version
Temperature sensor register read
Multiple temperature sensor registers read
Multiple temperature sensor registers read
Temperature sensor register write e.g.:STTS22H e.g.: V1.5.2
e.g.:TRAAhDDh e.g.: TRMAA
1 hNNhDD
1 h…DD
NN h e.g.:MULTI-TRAA
1 hDD
1 h…AA
N hDD
N h
*single It gets a single point data acquisition
(See: Table 4. Returned values for *start command )
*sindebug
*list
*listdev
*echoon
*echooff
It gets a single point data acquisition in readable text format
Prints the list of MKIs supported
Prints the list of devices supported
Activates the write verbose mode
Deactivates the write verbose mode e.g.: 087V1 089V1 092V1 105V1...
e.g.: LIS331DL LIS331DLH LIS331HH… e.g.: TRAAhDDh
UM2116 - Rev 8 page 29/41
4.9
UM2116
Analog output temperature sensor: supported commands
Analog output temperature sensor: supported commands
The table below lists the commands supported by the devices/evaluation boards that include an analog output temperature sensor.
Table 11. Analog output temperature sensor: supported commands list
Command Description
*setdbXXXVY Selects firmware according to the adapter connected
*odr [param] Sets ODR speed (parameter: ODR in mHz)
*start
*debug
*stop
*Zon
*Zoff
*dev
*ver
*single
*sindebug
*list
*listdev
Returned value
Starts continuous data acquisition
Returns the output data in readable text format
Stops data acquisition
Forces High impedance state. Turns off VDD and VDDIO power supply.
Exits from High impedance state. Turns on VDD and VDDIO power supply.
Device name
Firmware version
Gets a single point data acquisition
(See
Table 4. Returned values for *start command )
e.g.: Temp. = 22.93 [°C] e.g.: STLM20 e.g..: V3.7.30
(See Table 4. Returned values for *start command )
e.g.: Temp. = 22.93 [°C] Gets a single point data acquisition in readable text format
Prints the list of STEVAL-MKIxxxxx evaluation boards supported
Prints the list of devices supported e.g.: 087V1 089V1 092V1 105V1, etc.
e.g.: LIS331DL LIS331DLH LIS331HH, etc.
UM2116 - Rev 8 page 30/41
5
UM2116
Schematic diagrams
Schematic diagrams
Figure 7. STEVAL-MKI109V3 circuit schematic (1 of 8)
Professional_MEMS_Tool_v1.0.5_Vdd_control_Idd_meas
Vin ADC_V_REF
Analog Signals A
Analog Signals B
Control Signals A
Control Signals B
VDD_3.6V
Professional_MEMS_Tool_v1.0.5_Adapter
VDD_3.6V
Log Signals
DIR_INT3_INT4
DIR_DEN_CS_A
DIR_GP
CTR_EN
CTR_EN_I2C_SDI
LOCK_1V98
TEST_Adapter_Connected
TEST_3V6
PWM_TEST
TEST_5
TEST_6
Professional_MEMS_Tool_v1.0.5_MCU
ADC_V_REF
Analog Signals A
Analog Signals B
Control Signals A
Control Signals B
VDD_3.6V
USB_Disc
USB_D-
USB_D+
Vext_sense
Vusb_sense
STM32F401VET6
Log Signals
DIR_INT3_INT4
DIR_DEN_CS_A
DIR_GP
CTR_EN
CTR_EN_I2C_SDI
LOCK_1V98
TEST_Adapter_Connected
TEST_3V6
PWM_TEST
TEST_5
TEST_6
BT_RX
BT_RTS
BT_TX
BT_CTS
BT_RST
MISO_RF
MOSI_RF
SCK_RF
CE_RF
Professional_MEMS_Tool_v1.0.5_Power
Vin
VDD_3.6V
USB_Disc
USB_D-
USB_D+
Vext_sense
Vusb_sense
Professional_MEMS_Tool_v1.0.5_Bluetooth
VDD_3.6V
BT_RX
BT_RTS
BT_TX
BT_CTS
BT_RST
MISO_RF
MOSI_RF
SCK_RF
CE_RF
VDD_3.6V
ADC_V_REF
PWM_A
PWM_B
RANGE_100x_A
RANGE_100x_B
VDD_DUT
VDDIO_DUT
ADC_V_REF
ADC_log_I_A
ADC_log_I_B
Figure 8. STEVAL-MKI109V3 circuit schematic (2 of 8)
Professional_MEMS_Tool_v1.0.5_Vdd_control
Professional_MEMS_Tool_v1.0.5_Idd_measurement_2CH_lin
Vin
VDD_3.6V
ADC_V_REF
PWM_A
PWM_B
RANGE_100x_A
RANGE_100x_B
VDD_DUT
VDDIO_DUT
D S1
Vin
SEL S2
1 x AS21P2TLR
5
6
5
7
7
6
2 x TSV632IQ2T
Sense_Hi_A
Sense_Lo_A
Sense_Hi_B
Sense_Lo_B
Vin
VDD_3.6V
Sense_Hi_A
Sense_Lo_A
Sense_Hi_B
Sense_Lo_B
3
2
3
1
1
2
5 x TSZ122IQ2T
5
6
5
7
7
6
1 x TSV632IQ2T
RANGE_50x_A
RANGE_20x_A
RANGE_5x_A
RANGE_2x_A
RANGE_20x_B
RANGE_5x_B
RANGE_2x_B
ADC_I_A_(1)
ADC_I_A_(2)
ADC_V_A
FILTER_A_(1)
FILTER_A_(2)
2 x 2STR2230 2 x STR2N2VH5 2 x STT7P2UH7
TS3431CILT
RANGE_50x_A
RANGE_20x_A
RANGE_5x_A
RANGE_2x_A
RANGE_100x_A
PWM_A
Control Signals A
R_50x_A
R_20x_A
R_5x_A
R_2x_A
R_100x_A
PWM_A
RANGE_20x_B
RANGE_5x_B
RANGE_2x_B
RANGE_100x_B
PWM_B
Control signals B
R_20x_B
R_5x_B
R_2x_B
R_100x_B
PWM_B
ADC_I_A_(1)
ADC_I_A_(2)
ADC_V_A
ADC_log_I_A
FILTER_A_(1)
FILTER_A_(2)
Analog Signals A
ADC_I_A_(1)
ADC_I_A_(2)
ADC_V_A
ADC_log_I_A
FILTER_A( 1)
FILTER_A (2)
Control Signals A
Control Signals B
Analog Signals A
Professional_MEMS_Tool_v1.0.5_Idd_measurement_2CH_log
ADC_V_REF
ADC_log_I_A
ADC_log_I_B
3
2
3
1
1
2
2 x TSZ122IQ2T
Sense_Hi_A
Sense_Hi_B
Sense_Lo_ampl_A
Sense_Lo_ampl_B
VDD_3.6V
4.3V_A
4.3V_B
Sense_Lo_ampl_A
Sense_Lo_ampl_B
4.3V_A
4.3V_B
D S1
SEL S2
4 x AS21P2TLR
ADC_I_B
ADC_V_B
FILTER_B
ADC_V_REF
VDDIO
ADC_I_B
ADC_V_B
ADC_log_I_B
FILTER_B
Analog Signals B
ADC_I_B
ADC_V_B
ADC_log_I_B
FILTER_B
ADC_V_REF
VDDIO
ADC_V_REF
Analog Signals B
UM2116 - Rev 8 page 31/41
UM2116 - Rev 8
UM2116
Schematic diagrams
CH_A
ADC_V_REF
PWM_A
Ref 3.00V
7
U5B
S1 D
5
GND
6
S2 SEL
AS21P2TLR
PWM_A
4
R25
470k
GND
Figure 9. STEVAL-MKI109V3 circuit schematic (3 of 8)
Dual channel Vdd control
R12
100k
PWM + Filter
GND
C8
22nF
6
5
Au = 1.20
U1B
5
7
7
6
TSV632IQ2T
R19
20k
R22
100k
R13
100k
C9
22nF
VDD_set_A
C10
22nF
GND
GND
CH_B
Ref 3.00V
PWM_B
2
U5A
S1 D
GND
1
S2 SEL
AS21P2TLR
PWM_B
10
9
R44
470k
GND
R30
100k
GND
C15
22nF
2
3
Au = 1.20
U1A
3
1
1
2
TSV632IQ2T
R36
20k
R43
100k
R31
100k
C16
22nF
GND
VDD_set_B
C17
22nF
GND
PWM controlled Power Supply
CH_A
5Vin
VDD_set_A 2
R175
3
4k7
To MEMS
VDD_DUT
U2A
2
1
1
3
TSV632IQ2T
BC857BT,115
T3
R60
4k7
1
C28
J13
4.7uF
R71
10R 0.1% 0805
C30
10uF
C99
100nF
R176
4k7
1
R69
100k
R53
6.8R
T4
GND
2STR2230
R70
1k
0.1%
1
C22
47uF
GND
T7
C23
100nF
STR2N2VH5
R59
3k3
R130
10R
T2
STT7P2UH7
1
C25
10uF
3
GND
T6
R131
100k
5Vin
Sense_Hi_A
PDTC115EE,115
CH_B
5Vin
VDD_set_B 6
R177
5
4k7
To MEMS
VDDIO_DUT
U2B
6
7
7
5
TSV632IQ2T
BC857BT,115
T8
R100
4k7
1
C36
J14
4.7uF
R94
10R 0.1% 0805
C40
10uF
C100
100nF
R178
4k7
1
R91
100k
R113
6.8R
T9
GND
2STR2230
R92
0.1%
1
C32
47uF
GND
C33
100nF
T11
R140
10R GND
R144
3k3
C34
10uF
T10
STR2N2VH5 STT7P2UH7
1
3
R132
5Vin
100k
Sense_Hi_B
PDTC115EE,115
T12
Sense_Lo_A RANGE_100x_A
GND
Sense_Lo_B RANGE_100x_B
GND
VDD_3.6V
Vin
3.6V
FB1
5Vin
3.6V
U5C
C79
100nF
5Vin
R157
22R
U1C
C77
100nF
5Vin
R158
22R
U2C
C78
100nF
GND GND GND GND GND GND
CH_A
Sense_Hi_A
Sense_Lo_A
Sense_Hi_A
Sense_Lo_A
RANGE_2x_A
RANGE_5x_A
Figure 10. STEVAL-MKI109V3 circuit schematic (4 of 8)
V1 - Dual Channel Idd measurement - lin
Au = 1 - 2 - 5 - 10
3k0
0.1%
10
R10
R14
4k7
U8A
D
82k
0.1%
S1
9
R29
470k
SEL
AS21P2TLR
GND
S2
2
1
5
U8B
D
R15
24k 0.1%
S1
7
R11
10k
4
R1
470k
SEL
AS21P2TLR
S2
GND
6
3
2
27k
C13
0.1%
150pF
Differential Amp. Au = 5
R7
20k 0.1%
U3A
3
2
1
1
TSZ122IQ2T
R27
R8
100k
C7
100pF
GND
R18
GND
20k 0.1%
Sense_Lo_ampl_A
5
6
U3B
5
7
7
6
TSZ122IQ2T
R23
100k 0.1%
C12
100pF
R20
10k
R16
100k
GND
C6
470nF
3
2
R17
100R
U31A
3
2
1
1
TSZ122IQ2T
3.6V
GND
R26
R163
10k
1k5
RB520S30T1G
D10
ADC_I_A_(1)
C11
100pF
3.6V
RB520S30T1G
D11
FILTER_A_(1)
C58
100nF
GND
GND GND
Sense_Hi_A
Sense_Lo_A
RANGE_20x_A
RANGE_50x_A
Au = 10 - 20 - 50 - 100
R48
300R
0.1%
10
R49
R52
470R
U13A
D
8k2
0.1%
S1
9
R61
470k
SEL
AS21P2TLR
GND
S2
2
1
R4
3k0 0.1%
R51
2k4 0.1%
5
U13B
D S1
4
R62
SEL
AS21P2TLR
S2
470k
GND
7
6
R21
10k
Differential Amp. Au = 10
3
2
U15A
3
1
1
2
TSZ122IQ2T
R58
10k 0.1% R3
GND GND
R55
C19
100pF
10k 0.1%
27k
C24
0.1%
150pF
R2
5
6
U15B
5
7
7
6
TSZ122IQ2T
R56
100k
C20
0.1%
100pF
R33
100k
C21
470nF
GND
5
6
R50
U31B
100R
5
7
7
6
TSZ122IQ2T
3.6V
GND
R101
R164
10k
1k5
RB520S30T1G
D12
ADC_I_A_(2)
C65
100pF
3.6V
RB520S30T1G
D13
FILTER_A_(2)
C67
100nF
GND
GND GND
Sense_Lo_A 3
2
U32A
3
1
1
2
TSZ122IQ2T
R24
R28
0.1%
10k
C88
22nF
GND GND
ADC_V_A
VDD_3.6V
3.6V
4.3V_A
U3C
4.3V_A
U31C
4.3V_A
U15C
GND GND GND
4.3V_A
4.3V_A
4.3V_A
GND GND GND
CH_B
Sense_Hi_B
Sense_Lo_B
RANGE_5x_B
RANGE_20x_B
Au = 1 - 5 - 20 - 100
Sense_Lo_B
R88 20k 0.1%
R84
3k0 0.1%
R87
10
R85
U17A
D
1k5 0.1%
S1
300R 0.1%
9
470k
SEL
R151
AS21P2TLR
GND
S2
2
1
Ref 3.00V
5
6
U11B
5
6
7
7
TSV632IQ2T
R97
120k
GND
R96
270k
R93
22R
4.3V_A
C37
R98
22R
4.3V_B
100nF
100nF
GND
R66 137k
R116 6k8 0.1%
5
U17B
D S1
4
SEL
R156
AS21P2TLR
S2
470k
GND
7
6
R67
10k
3
2
U16A
3
1
1
2
TSZ122IQ2T
R147
27k
C66
0.1%
150pF
Sense_Lo_ampl_B
RANGE_2x_B
5Vin_1
Ref 3.00V
C39
10uF
5k1
0.1%
3k6
0.1%
ADC_V_REF
TS3431CILT
U10
GND GND GND
4.3V_A
4.3V_A
4.3V_B
4.3V_B
Vin
R159
22R
5Vin_1
10
9
5
4
U9A
D
Differential Amp. Au = 5 - 10
R63
SEL
AS21P2TLR
S1
S2
2
1
R65
20k
20k
0.1%
0.1%
R64
GND
R141
C27
100pF
GND
5
6
U16B
5
6
R142
7
7
TSZ122IQ2T
U9B
D S1
7
20k 0.1%
R149
20k 0.1%
100k 0.1%
C64
100pF
SEL
AS21P2TLR
S2
6
R160
470k
GND
C26
470nF
R143
10k GND
R128
100k
GND
5
6
R166
100R
U32B
5
7
7
6
TSZ122IQ2T
GND
3.6V
GND
R174
R165
10k
1k5
RB520S30T1G
D14
ADC_I_B
3.6V
GND
RB520S30T1G
D15
FILTER_B
4.3V_A
U8C
4.3V_A
U13C
4.3V_B
U9C
4.3V_B
U17C
5Vin_1
U11C
5Vin_1
Sense_Lo_B 3
2
U11A
3
2
1
1
TSV632IQ2T
R86
10R
R148
0.1%
10k
R150
0.1%
10k
ADC_V_B
GND GND
GND
GND GND GND GND GND
GND
GND
4.3V_B
U16C
4.3V_B
GND
4.3V_B
U32C
GND
To Level Shifters VL
VDDIO page 32/41
UM2116 - Rev 8
UM2116
Schematic diagrams
Figure 11. STEVAL-MKI109V3 circuit schematic (5 of 8)
Power Supply:
Ext. Power
5V
Automatic switching over from
Vusb to Vext
J4
1
2
GND
+Vext
GND
+Vusb
C85
100nF
BAS16XV2T1G D7
1
R119
100k
6
5
2
1
STT7P2UH7
T17
4
NOT Assembled
Vext_sense
NOT Assembled
R201
0R
2
2STR2230
3
T18
Vin
R202
0R
R167
10k
D201
R54
100k
1
R124
1k5
T20
NTA4153NT1G
GND
Vusb_sense
GND
2
2STR2230
3
T19
T22
BC857BT,115
R68
100k
1
R125
1k5
T21
NTA4153NT1G
Vin
GND
C4
1uF
GND
C59
100nF
1
3
U25
Vin
EN
LDK220M36R
Vout
5
ByPass/Adj 4
GND
GND
3.6V
GND
C60
1uF
Power Supply:
- VDD_3.6V ... Power supply for micro & BT
- Vin ... 5V for Idd meas. analog circuits
& VDD_DUT/ VDDIO_DUT
GND
C61
100nF
VDD_3.6V
GND GND GND
USB Connection:
+Vusb
V+
DM
DP
ID
GND
1
2
3
4
5
J5
GND
D-
D+
GND GND
+Vusb
2
3
1
U27
I/O1
GND
I/O1
VBUS
I/O2
USBLC6-2P6
I/O2
6
5
4
GND
R134
22R
USB D-
USB_D-
R135
22R
USB D+
USB_D+
C63
100nF
USB Connection:
- USB device enumeration signal LED
- USB ESD filter
USB_Disc
R136
1k
3.6V
R90
47k
BC846S
R133
10k
2
5
T16B
GND
+Vusb
R138
36k
GND
3.6V
T16A
BC846S
D6
R139
1k5
R137
470R
USB D+
GND
Figure 12. STEVAL-MKI109V3 circuit schematic (6 of 8)
Level Translation:
Log Signals
DIR_DEN_CS_A
Logic_signals1
DEN
CS_A
GP
INT2
INT1
INT3
INT4
DIR_GP
DEN_uP
CS_A_uP
GP_uP
INT2_uP
INT1_uP
INT3_uP
INT4_uP
DIR_INT3_INT4
R146
33k
3.6V
3.6V
3
4
5
6
7
8
9
10
3
4
5
6
7
8
9
10
3.6V
U28
Vcc_A Vcc_B
VDDIO
2
1DIR
2DIR
1OE
2OE
1
16
1A1
1A2
2A1
2A2
1B1
1B2
2B1
2B2
GND GND
1.2 to 3.6V
SN74AVC4T245RSVR
11
15
14
13
12 GP
R145
33k
DEN
CS_A
CTR_EN
U29
Vcc_A Vcc_B
2
1DIR
2DIR
1OE
2OE
1
16
1A1
1A2
2A1
2A2
1B1
1B2
2B1
2B2
GND GND
1.2 to 3.6V
SN74AVC4T245RSVR
11
15
14
13
12
VDDIO
CTR_EN
INT2
INT1
INT3
INT4
CTR_EN
R153
R152
R154
R155
100k
100k
100k
100k
CS
SCL
SDA
SDO
CS_uP
SCL_uP
SDA_uP
SDO_uP
3.6V
11
10
9
8
7
6
U30
Vcc_B Vcc_A
B1
B2
B3
B4
GND
1.65 to 5.5V
NTS0104GU12
OE
A1
A2
A3
A4
1
4
5
2
3
12
VDDIO
CS
SCL
SDA
SDO
CTR_EN_I2C_SDI
CTR_EN_I2C_SDI
SDO_x
SD_x
SC_x
CS_x
SDO_x_uP
SD_x_uP
SC_x_uP
CS_x_uP
3.6V
11
10
9
8
7
6
U33
Vcc_B Vcc_A
B1
B2
B3
B4
GND
1.65 to 5.5V
NTS0104GU12
OE
A1
A2
A3
A4
1
4
5
2
3
12
VDDIO
SDO_x
SD_x
SC_x
CS_x
CTR_EN_I2C_SDI
DIL24 Device Adapter:
DIL24 Device Adapter
- VDD and VDDIO pin separated
J1
7
8
5
6
3
4
1
2
9
10
11
12
LOCK_1V98
PWM_TEST
VDD_DUT
VDDIO_DUT
CS_x
SC_x
SD_x
SDO_x
TEST_5
TEST_6
7
8
5
6
3
4
1
2
J2
9
10
11
12
24
23
22
21
20
19
18
17
16
15
14
13
GP
DEN
SDO
SDA
SCL
CS
CS_A
INT4
INT3
INT2
INT1
GND
TEST_3V6
TEST_Adapter_Connected
20
19
18
17
24
23
22
21
J3
16
15
14
13
VDD_DUT
VDDIO_DUT
VDD_DUT
VDDIO_DUT
TEST_6
TEST_5
TEST_6
TEST_5
GND
C97
22nF
GND
C98
22nF
VDD_3.6V
3.6V
VDDIO VDDIO
3.6V
C72
4.7uF
C73
100nF
C74
100nF
C75
100nF
C102
100nF
GND
VDDIO
C68
4.7uF
C69
100nF
C70
100nF
C71
100nF
C101
100nF
GND page 33/41
UM2116 - Rev 8
UM2116
Schematic diagrams
Figure 13. STEVAL-MKI109V3 circuit schematic (7 of 8)
Bluetooth Module Connection:
BT_RTS
BT_TX
3.6V
8
GND
7
6
5
U22
Vcc_B Vcc_A
B1 A1
2
B2 A2
3
GND OE
4
1.2 to 3.6V
SN74AVC2T244DQMR
1
2.5V
GND
R5
33k
GND
BT_RTS_s
BT_RST
CE_RF
CS_RF
SCK_RF
BT_TX_s
MISO_RF
IRQ_RF / CS_SPI
BT_CTS
GND 3.6V
J9
7
8
5
6
3
4
1
2
R6
33k
BT_RX
GND
J8
3
1
2
VDD_3.6V
GND
3.6V
6
4
C2
100nF
U19
Vin
EN
LDK120PU25R
Vout
1
ByPass/Adj 3
GND N/C
2.5V
C3
10nF
C1
100nF
GND GND GND GND GND
Figure 14. STEVAL-MKI109V3 circuit schematic (8 of 8)
Vext_sense
Vusb_sense
LOCK_1V98
ADC_V_REF
R161
R162
1k
0.1%
R170
100k
R171
100k
R173
100k
Vext_sens/2
GND
3.6V
USB_Disc
Vusb_sens/2
GND
C94
22nF
FB2
GND
C84
100nF
R102
22R
ADC_I_A_(1)
ADC_V_A
Vusb_sens/2
I2C3_SCL
SW1
JTMS_SWDIO
JTDI
Vext_sens/2
TEST_5
BOOT0
BOOT1
JTDO
INT2_uP
INT1_uP
SPI2_SCL
SDO_uP
SPI2_SDA
37
89
90
91
92
93
95
52
53
54
22
21
20
25
26
29
30
31
32
67
68
U24
PA0 / ADC0 / USART2_CTS / TIM2_CH1 / TIM2_ETR / TIM5_CH1 / WKUP
PA1 / ADC1 / USART2_RTS / TIM2_CH2 / TIM5_CH2
PA2 / ADC2 / USART2_TX / TIM2_CH3 / TIM5_CH3 / TIM9_CH1
PA3 / ADC3 / USART2_RX / TIM2_CH4 / TIM5_CH4 / TIM9_CH2
ADC10 / PC0
ADC11 / PC1
33
34
I2S2_MCK / USART6_TX / TIM3_CH1 / SDIO_D6 / PC6 63
I2S3_MCK / USART6_RX / TIM3_CH2 / SDIO_D7 / PC7 64
70
71
PA10 / USART1_RX / TIM1_CH3 / OTG_FS_ID
PA12 / USART1_RTS / USART6_RX / TIM1_ETR / OTG_FS_DP
SPI3_SCK / I2S3_CK / SDIO_D2 / PC10 78
SPI3_MOSI / I2S3_SD / SDIO_CK / PC12 80
72
77
PA13 / *JTMS-SWDIO*
PA14 / *JTCK-SWCLK*
PA15 / *JTDI* / SPI1_NSS / SPI3_NSS / I2S3_WS / TIM2_CH1/ TIM2_ETR
RTC_TAMP1 / RTC_OUT / RTC_TS / PC13 7
OSC32_IN / PC14 8
OSC32_OUT / PC15 9
94
PB0 / ADC8 / TIM1_CH2N / TIM3_CH3
PB1 / ADC9 / TIM1_CH3N / TIM3_CH4
Vpp / BOOT0
PB2 / BOOT1
81
83
SPI2_SCK / I2S2_CK / USART2_CTS / PD3 84
USART2_RTS / PD4
PB3 / *JTDO-SWO* / SPI1_SCK / SPI3_SCK / I2S3_CK / I2C2_SDA / TIM2_CH2
PB4 / *NJTRST* / SPI1_MISO / SPI3_MISO / I2S3ext_SD / I2C3_SDA / TIM3_CH1
SPI3_MOSI / I2S3_SD / USART2_RX / PD6 87
USART2_CK / PD7
88
PB9 / SPI2_NSS / I2S2_WS / I2C1_SDA / TIM4_CH4 / TIM11_CH1 / SDIO_D5
PB10 / SPI2_SCK / I2S2_CK / I2C2_SCL / TIM2_CH3
PB12 / SPI2_NSS / I2S2_WS / I2C2_SMBA / TIM1_BKIN
PB13 / SPI2_SCK / I2S2_CK / TIM1_CH1N
PB15 / SPI2_MOSI / I2S2_SD / TIM1_CH3N / RTC_REFIN
VDDA
VREF+
VSSA/VREF-
PD8
PD9
PD10
PD11
TIM4_CH2 / PD13 60
TIM4_CH3 / PD14 61
TIM4_CH4 / PD15 62
56
57
58
SPI4_SCK / TRACECLK / PE2 1
TRACED0 / PE3
2
SPI4_NSS / TRACED1 / PE4 3
SPI4_MISO / TIM9_CH1 / TRACED2 / PE5 4
SPI4_MOSI / TIM9_CH2 / TRACED3 / PE6 5
GND
GND
C47
18pF
GND
C48
ABM8-16.000MHZ-B2-T
2
4
X1 R103
18pF
100R
BT3
GND
NTRST
C49
100nF
GND GND
GND 12
13
14
PH0 / OSC_IN
PH1 / OSC_OUT
NRST
3.6V
48
73
6
VBAT
11
19
28
50
75
100
VDD
VDD
VDD
STM32F401VET6
STM32F401VET6
LQFP100
TIM1_CH1N / PE8
TIM1_CH1 / PE9
VSS
VSS
VSS
40
SPI4_NSS / TIM1_CH2 / PE11 42
SPI4_SCK / TIM1_CH3N / PE12 43
SPI4_MOSI / TIM1_CH4 / PE14 45
TIM1_BKIN / PE15
10
27
49
74
99
GND
VDD_3.6V
3.6V
FILTER_B
ADC_log_I_B
ADC_V_B
FILTER_A_(1)
FILTER_A_(2)
PWM_A
PWM_B
I2C3_SDA
I2C3_SCL
PWM_TEST
SC_x_uP
SD_x_uP
GPI
Cal
DIR_DEN_CS_A
TEST_Adapter_Connected
DIR_INT3_INT4
RANGE_100x_A
RANGE_100x_B
CTR_EN_I2C_SDI
BT_CTS
BT_RX
BT_RST
DEN_uP
GP_uP
INT3_uP
INT4_uP
RANGE_5x_B
RANGE_2x_B
LED2
LED1
DIR_GP
CTR_EN
I2C3_SCL
I2C3_SDA
SCK_RF
MOSI_RF
CE_RF
RANGE_50x_A
RANGE_20x_A
RANGE_20x_B
RANGE_2x_B
ADC_I_A_(1)
ADC_I_A_(2)
ADC_log_I_A
FILTER_A_(2)
GP_uP
DEN_uP
CS_A_uP
INT3_uP
INT4_uP
SDO_uP
SDA_uP
SCL_uP
CS_uP
SDO_x_uP
SD_x_uP
SC_x_uP
CS_x_uP
2
1
J10
R179
10k
Cal
GND
Production Test Start
2
1
J11
Control Signals A
R_50x_A
R_5x_A
R_2x_A
PWM_A
Control signals B
R_20x_B
R_5x_B
R_2x_B
R_100x_B
PWM_B
Analog Signals A
ADC_I_A_(1)
ADC_I_A_(2)
ADC_log_I_A
Analog Signals B
ADC_I_B
ADC_log_I_B
FILTER_B
Logic_signals1
DEN
CS_A
INT1
INT2
INT3
INT4
SDO
SDA
SCL
CS
SDO_x
SD_x
TEST_3V6
3.6V
Production Tester
Interconnection Check
GND
C51
4.7uF
C52
100nF
C53
100nF
C54
100nF
C55
100nF
C56
100nF
C57
100nF
Signal LEDs:
3.6V
3.6V
3.6V
BOOT Mode Selection:
3.6V
Not Mounted
User Switches: Interrupt LED signalization:
3.6V
3.6V
Control Signals A
Control Signals B
Analog Signals A
Analog Signals B
I2C and SPI connection:
3.6V
JTAG/SWO Interface:
3.6V
D1 D2 D3
BOOT0
BOOT1
SW2
3.6V 3.6V
BT1 BT2
R114
330R
D4 D5
R115
220R
Log Signals
2
1
J12
R180
10k
GND
GPI
GPI
5
7
1
3
J6
9 10
6
8
2
4
R120
10k
R121
10k
R122
10k
R129
10k
JTCK_SWCLK
JTDO
J7
R123
10k
JNTRST
R109
10k
R110
10k
GND
BOOT Mode
Selection: from FLASH
BOOT1 low)
SW1
R111
10k
SW2
R112
10k
GND GND
INT1_uP 1
T13 T14
1 INT2_uP
I2C_SDA
I2C_SCL
SPI2_SCL
SPI2_SDA
SDA_uP
SCL_uP
GND GND page 34/41
UM2116
Revision history
Table 12. Document revision history
Date
05-Oct-2016
26-Feb-2018
27-Jul-2018
23-Jan-2019
02-Jul-2019
07-Oct-2019
03-Mar-2020
15-Jul-2020
Version
1
2
3
4
5
6
7
8
Changes
Initial release.
Updated List of supported MEMS adapter boards, List of supported commands and Returned values for *start command
Updated List of supported MEMS adapter boards, List of supported commands and Returned values for *start command
Changed all descriptions for *Zon to "Forces High impedance state" (was Forces 3-state) and *Zoff to
"Exits from High impedance state" (was Exits from 3-state)
Minor text changes
Updated Table 1. List of supported MEMS adapter boards and Table 3. Returned values for *start command.
Added Section 4.8 Digital output temperature sensor: supported commands.
Updated Table 1. List of supported MEMS adapter boards and Table 3. Returned values for *start command.
Updated Section 2 Professional MEMS Tool board installation, Table 1. List of supported MEMS adapter boards and Table 3. Returned values for *start command.
Added Section 2.2.1 Firmware upgrade on Windows.
Updated Table 1. List of supported MEMS adapter boards and Table 3. Returned values for *start command.
Updated Section 2.2.3 DFU on Mac OS®
,
Section 3 Supported MEMS adapter boards
,
Section 4.2 Supported commands ,
Section 4.3 Digital output accelerometers: supported commands ,
Section 4.4 Digital output gyroscopes: supported commands
,
Section 4.5 Digital output magnetometers: supported commands
,
Section 4.6 Digital output pressure sensor: supported commands
, Section 4.7 Digital output humidity sensor: supported commands
and
Section 4.8 Digital output temperature sensor: supported commands
.
Added Section 4.2.21 *sindebug ,
,
Section 4.2.51 *get_i [p1] [p2] [p3] [p4] ,
, Section 4.2.53 *ranges_auto and *ranges_man
,
Section 4.2.54 *range_ma [p1] and *range_mb [p1] , Section 4.2.55 *adc_run_time [p1]
,
and
Section 4.9 Analog output temperature sensor: supported commands
.
UM2116 - Rev 8 page 35/41
UM2116
Contents
Contents
UM2116 - Rev 8 page 36/41
UM2116 - Rev 8
UM2116
Contents
page 37/41
UM2116
Contents
UM2116 - Rev 8 page 38/41
UM2116
List of tables
List of tables
UM2116 - Rev 8 page 39/41
UM2116
List of figures
List of figures
UM2116 - Rev 8 page 40/41
UM2116
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. For additional information about ST trademarks, please refer to www.st.com/trademarks . 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.
© 2020 STMicroelectronics – All rights reserved
UM2116 - Rev 8 page 41/41
Download
Advertisement