Commit 649500ae authored by Peter Bigot's avatar Peter Bigot Committed by Carles Cufi
Browse files

samples: sensor: mpu6050: convert to devicetree



Add a sample for the MPU6050 that demonstrates on-demand and triggered
display of all sensor data.

Signed-off-by: default avatarPeter Bigot <peter.bigot@nordicsemi.no>
parent fe018f51
Loading
Loading
Loading
Loading
+12 −0
Original line number Diff line number Diff line
#
# Copyright (c) 2019 Nordic Semiconductor ASA
#
# SPDX-License-Identifier: Apache-2.0
#

cmake_minimum_required(VERSION 3.13.1)
include($ENV{ZEPHYR_BASE}/cmake/app/boilerplate.cmake NO_POLICY_SCOPE)
project(mpu6050)

FILE(GLOB app_sources src/*.c)
target_sources(app PRIVATE ${app_sources})
+59 −0
Original line number Diff line number Diff line
.. _mpu6050:

MPU6050: Invensense Motion Tracking Device
##########################################

Description
***********

This sample application periodically (0.5 Hz) measures the sensor
temperature, acceleration, and angular velocity, displaying the values
on the console along with a timestamp since startup.

When triggered mode is enabled the measurements are displayed at the
rate they are produced by the sensor.

Wiring
*******

This sample uses an external breakout for the sensor.  A devicetree
overlay must be provided to identify the I2C bus and GPIO used to
control the sensor.

Building and Running
********************

After providing a devicetree overlay that specifies the sensor location,
build this sample app using:

.. zephyr-app-commands::
   :zephyr-app: samples/sensor/mpu6050
   :board: nrf52_pca10040
   :goals: build flash

Sample Output
=============

.. code-block:: console

   *** Booting Zephyr OS build zephyr-v2.1.0-576-g4b38659b0661  ***
   [0:00:00.008]:23.6359 Cel
     accel -5.882554 -6.485893  5.868188 m/s/s
     gyro   0.014522  0.002264 -0.036905 rad/s
   [0:00:02.020]:23.6359 Cel
     accel -5.841853 -6.435615  5.911283 m/s/s
     gyro   0.017852  0.001199 -0.034640 rad/s
   [0:00:04.032]:23.6829 Cel
     accel -5.930438 -6.461951  6.009446 m/s/s
     gyro   0.012923  0.002131 -0.037171 rad/s
   [0:00:06.044]:23.6359 Cel
     accel -5.884948 -6.524200  5.961562 m/s/s
     gyro   0.012390 -0.001732 -0.045964 rad/s
   [0:00:08.056]:35.7712 Cel
     accel -5.863400 -12.872426 -0.154427 m/s/s
     gyro  -0.034373 -0.034373 -0.034373 rad/s
   [0:00:10.068]:23.6829 Cel
     accel -5.906496 -6.461951  5.899312 m/s/s
     gyro   0.015321 -0.000399 -0.039169 rad/s

<repeats endlessly>
+15 −0
Original line number Diff line number Diff line
/*
 * Copyright (c) 2019 Nordic Semiconductor ASA
 *
 * SPDX-License-Identifier: Apache-2.0
 */

&i2c0 {
	mpu6050@68 {
		compatible = "invensense,mpu6050";
		reg = <0x68>;
		status = "okay";
		label = "MPU6050";
		int-gpios = <&gpio0 11 0>;
	};
};
+10 −0
Original line number Diff line number Diff line
#
# Copyright (c) 2019 Nordic Semiconductor ASA
#
# SPDX-License-Identifier: Apache-2.0
#

CONFIG_I2C=y
CONFIG_SENSOR=y
CONFIG_MPU6050=y
CONFIG_MPU6050_TRIGGER_NONE=y
+13 −0
Original line number Diff line number Diff line
#
# Copyright (c) 2019 Nordic Semiconductor ASA
#
# SPDX-License-Identifier: Apache-2.0
#

sample:
  name: MPU6050 Sensor Sample
tests:
  sample.sensor.mpu6050:
    build_only: true
    platform_whitelist: nrf52_pca10040
    tags: sensors
Loading