Helps closing https://github.com/zephyrproject-rtos/zephyr/issues/27805 Signed-off-by: Nabil Elqatib <nabilelqatib@gmail.com>
62 lines
2.1 KiB
ReStructuredText
62 lines
2.1 KiB
ReStructuredText
.. zephyr:code-sample:: bmg160
|
|
:name: BMG160 3-axis gyroscope
|
|
:relevant-api: sensor_interface
|
|
|
|
Get temperature, and angular velocity data from a BMG160 sensor.
|
|
|
|
Overview
|
|
********
|
|
|
|
This sample shows how to use the Zephyr :ref:`sensor` API driver for the
|
|
`Bosch BMG160`_ environmental sensor.
|
|
|
|
.. _Bosch BMG160:
|
|
https://web.archive.org/web/20181111220522/https://ae-bst.resource.bosch.com/media/_tech/media/datasheets/BST-BMG160-DS000-09.pdf
|
|
|
|
The sample first runs in polling mode for 15 seconds, then in trigger mode, display the temperature and angular velocity data from the BMG160 sensor.
|
|
|
|
Building and Running
|
|
********************
|
|
|
|
The sample can be configured to support BMG160 sensors connected via I2C. Configuration is done via :ref:`devicetree <dt-guide>`. The devicetree
|
|
must have an enabled node with ``compatible = "bosch,bmg160";``. See
|
|
:dtcompatible:`bosch,bmg160` for the devicetree binding and see below for
|
|
examples and common configurations.
|
|
|
|
If the sensor is not built into your board, start by wiring the sensor pins
|
|
according to the connection diagram given in the `BMG160 datasheet`_ at
|
|
page 78.
|
|
|
|
.. _BMG160 datasheet:
|
|
https://www.mouser.com/datasheet/2/783/BST-BMG160-DS000-1509613.pdf
|
|
|
|
Sample Output
|
|
=============
|
|
|
|
The sample prints output to the serial console. BMG160 device driver messages
|
|
are also logged. Refer to your board's documentation for information on
|
|
connecting to its serial console.
|
|
|
|
Here is example output for the default application settings, assuming that only
|
|
one BMG160 sensor is connected to the standard Arduino I2C pins:
|
|
|
|
.. code-block:: none
|
|
|
|
*** Booting Zephyr OS v3.7.0 ***
|
|
Testing the polling mode.
|
|
Gyro (rad/s): X=3.6, Y=14.0, Z=0.0f,
|
|
Temperature (Celsius): 29.4
|
|
Gyro (rad/s): X=5.1, Y=-9.0, Z=0.0f,
|
|
Temperature (Celsius): 29.5
|
|
...
|
|
Polling mode test finished.
|
|
Testing the trigger mode.
|
|
Gyro: Testing anymotion trigger.
|
|
Gyro: rotate the device and wait for events.
|
|
Gyro (rad/s): X=13.6, Y=14.0, Z=10.0f,
|
|
Gyro: Anymotion trigger test finished.
|
|
Gyro: Testing data ready trigger.
|
|
Gyro (rad/s): X=3.6, Y=5.4, Z=1.1f,
|
|
Gyro: Data ready trigger test finished.
|
|
Trigger mode test finished
|