blob: 29c5f70704fc44d54a068cc2269d3a42c8e68e40 [file] [log] [blame]
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Sensor Tutorials Overview &mdash; Apache Mynewt latest documentation</title>
<link rel="shortcut icon" href="../../_static/mynewt-logo-only-newt32x32.png"/>
<link rel="stylesheet" href="../../_static/css/theme.css" type="text/css" />
<link rel="stylesheet" href="../../_static/css/sphinx_theme.css" type="text/css" />
<link rel="stylesheet" href="../../_static/css/bootstrap-3.0.3.min.css" type="text/css" />
<link rel="stylesheet" href="../../_static/css/v2.css" type="text/css" />
<link rel="stylesheet" href="../../_static/css/custom.css" type="text/css" />
<link rel="stylesheet" href="../../_static/css/restructuredtext.css" type="text/css" />
<link rel="stylesheet" href="../../_static/css/overrides.css" type="text/css" />
<link rel="index" title="Index"
href="../../genindex.html"/>
<link rel="search" title="Search" href="../../search.html"/>
<link rel="top" title="Apache Mynewt latest documentation" href="../../index.html"/>
<link rel="up" title="Sensors" href="sensors.html"/>
<link rel="next" title="Enabling an Off-Board Sensor in an Existing Application" href="sensor_nrf52_bno055.html"/>
<link rel="prev" title="Sensors" href="sensors.html"/>
<script src="../../_static/js/modernizr.min.js"></script>
<script>
(function(i, s, o, g, r, a, m) {
i["GoogleAnalyticsObject"] = r;
(i[r] =
i[r] ||
function() {
(i[r].q = i[r].q || []).push(arguments);
}),
(i[r].l = 1 * new Date());
(a = s.createElement(o)), (m = s.getElementsByTagName(o)[0]);
a.async = 1;
a.src = g;
m.parentNode.insertBefore(a, m);
})(window, document, "script", "//www.google-analytics.com/analytics.js", "ga");
ga("create", "UA-72162311-1", "auto");
ga("send", "pageview");
</script>
</head>
<body class="not-front page-documentation" role="document" >
<div id="wrapper">
<div class="container">
<div id="banner" class="row v2-main-banner">
<a class="logo-cell" href="/">
<img class="logo" src="../../_static/img/logo.png">
</a>
<div class="tagline-cell">
<h4 class="tagline">An OS to build, deploy and securely manage billions of devices</h4>
</div>
<div class="news-cell">
<div class="well">
<h4>Latest News:</h4> <a href="/download">Apache Mynewt 1.11.0, Apache NimBLE 1.6.0 </a> released September 7, 2023)
</div>
</div>
</div>
</div>
<header>
<nav id="navbar" class="navbar navbar-inverse" role="navigation">
<div class="container">
<!-- Collapsed navigation -->
<div class="navbar-header">
<!-- Expander button -->
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
</div>
<!-- Expanded navigation -->
<div class="navbar-collapse collapse">
<!-- Main navigation -->
<ul class="nav navbar-nav navbar-right">
<li>
<a href="/"><i class="fa fa-home" style="font-size: larger;"></i></a>
</li>
<li class="important">
<a href="/quick-start/">Quick Start</a>
</li>
<li>
<a href="/about/">About</a>
</li>
<li>
<a href="/talks/">Talks</a>
</li>
<li class="active">
<a href="/documentation/">Documentation</a>
</li>
<li>
<a href="/download/">Download</a>
</li>
<li>
<a href="/community/">Community</a>
</li>
<li>
<a href="/events/">Events</a>
</li>
</ul>
<!-- Search, Navigation and Repo links -->
<ul class="nav navbar-nav navbar-right">
</ul>
</div>
</div>
</nav>
</header>
<!-- STARTS MAIN CONTENT -->
<div id="main-content">
<div id="breadcrumb">
<div class="container">
<a href="/documentation/">Docs</a> /
<a href="../tutorials.html">Tutorials</a> /
<a href="sensors.html">Sensors</a> /
Sensor Tutorials Overview
<div class="sourcelink">
<a href="https://github.com/apache/mynewt-documentation/edit/master/docs/tutorials/sensors/sensors_framework.rst" class="icon icon-github"
rel="nofollow"> Edit on GitHub</a>
</div>
</div>
</div>
<!-- STARTS CONTAINER -->
<div class="container">
<!-- STARTS .content -->
<div id="content" class="row">
<!-- STARTS .container-sidebar -->
<div class="container-sidebar col-xs-12 col-sm-3">
<div id="docSidebar" class="sticky-container">
<div role="search" class="sphinx-search">
<form id="rtd-search-form" class="wy-form" action="../../search.html" method="get">
<input type="text" name="q" placeholder="Search documentation" class="search-documentation" />
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
</div>
<!-- Note: only works when deployed -->
<select class="form-control" onchange="if (this.value) window.location.href=this.value">
<option value="/latest" selected>
Version: latest
</option>
<option value="/v1_11_0" >
Version: 1.11.0
</option>
<option value="/v1_10_0" >
Version: 1.10.0
</option>
<option value="/v1_9_0" selected="selected" >
Version: 1.9.0
</option>
<option value="/v1_8_0" >
Version: 1.8.0
</option>
<option value="/v1_7_0" >
Version: 1.7.0
</option>
<option value="/v1_6_0" >
Version: 1.6.0
</option>
<option value="/v1_5_0" >
Version: 1.5.0
</option>
<option value="/v1_4_0" >
Version: 1.4.0
</option>
<option value="/v1_3_0/os/introduction" >
Version: 1.3.0
</option>
<option value="/v1_2_0/os/introduction" >
Version: 1.2.0
</option>
<option value="/v1_1_0/os/introduction" >
Version: 1.1.0
</option>
<option value="/v1_0_0/os/introduction" >
Version: 1.0.0
</option>
<option value="/v0_9_0/os/introduction" >
Version: 0.9.0
</option>
</select>
<div class="region region-sidebar">
<div class="docs-menu">
<ul class="current">
<li class="toctree-l1"><a class="reference internal" href="../../index.html">Introduction</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../get_started/index.html">Setup &amp; Get Started</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../concepts.html">Concepts</a></li>
<li class="toctree-l1 current"><a class="reference internal" href="../tutorials.html">Tutorials</a><ul class="current">
<li class="toctree-l2"><a class="reference internal" href="../blinky/blinky.html">Project Blinky</a></li>
<li class="toctree-l2"><a class="reference internal" href="../repo/add_repos.html">Working with repositories</a></li>
<li class="toctree-l2"><a class="reference internal" href="../slinky/project-slinky.html">Project Slinky for Remote Comms</a></li>
<li class="toctree-l2"><a class="reference internal" href="../ble/ble.html">Bluetooth Low Energy</a></li>
<li class="toctree-l2"><a class="reference internal" href="../lora/lorawanapp.html">LoRa</a></li>
<li class="toctree-l2"><a class="reference internal" href="../os_fundamentals/os_fundamentals.html">OS Fundamentals</a></li>
<li class="toctree-l2"><a class="reference internal" href="../devmgmt/devmgmt.html">Remote Device Management</a></li>
<li class="toctree-l2 current"><a class="reference internal" href="sensors.html">Sensors</a><ul class="current">
<li class="toctree-l3 current"><a class="current reference internal" href="#">Sensor Framework</a><ul>
<li class="toctree-l4"><a class="reference internal" href="sensor_nrf52_bno055.html">Enable an Off-Board Sensor in an Existing Application</a></li>
<li class="toctree-l4"><a class="reference internal" href="sensor_offboard_config.html">Change the Default Configuration For a Sensor</a></li>
<li class="toctree-l4"><a class="reference internal" href="sensor_thingy_lis2dh12_onb.html">Develope an Application for an Onboard Sensor</a></li>
<li class="toctree-l4"><a class="reference internal" href="sensor_oic_overview.html">Enable OIC Sensor Data Monitoring</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="air_quality.html">Air Quality Sensor Project</a></li>
<li class="toctree-l3"><a class="reference internal" href="nrf52_adc.html">Add an Analog Sensor</a></li>
<li class="toctree-l3"><a class="reference internal" href="sensor_nrf52_drv2605.html">Connect a DRV2605 actuator device</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../tooling/tooling.html">Tooling</a></li>
<li class="toctree-l2"><a class="reference internal" href="../other/other.html">Other</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../../external_links.html">Third-party Resources</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../os/os_user_guide.html">OS User Guide</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../network/index.html">BLE User Guide</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../newt/index.html">Newt Tool Guide</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../newtmgr/index.html">Newt Manager Guide</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../mynewt_faq/index.html">Mynewt FAQ</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../misc/index.html">Appendix</a></li>
</ul>
</div>
</div>
</div>
<!-- ENDS STICKY CONTAINER -->
</div>
<!-- ENDS .container-sidebar -->
<div class="col-xs-12 col-sm-9">
<div class="alert alert-warning">
<p>
Version 1.9.0 is not the most recent version of the
Apache Mynewt documentation. Click <a href="/latest">here</a> to
read the latest version.
</p>
</div>
<div class="">
<div class="rst-content">
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
<div itemprop="articleBody">
<div class="section" id="sensor-tutorials-overview">
<h1>Sensor Tutorials Overview<a class="headerlink" href="#sensor-tutorials-overview" title="Permalink to this headline"></a></h1>
<div class="toctree-wrapper compound">
</div>
<p>This set of sensor tutorials allows you to explore the Mynewt Sensor
Framework features and learn how to develop sensor-enabled Mynewt
applications.</p>
<p>The Mynewt Sensor framework supports:</p>
<ul class="simple">
<li><p>Onboard and off-board sensors.</p></li>
<li><p>Retrieving sensor data and controlling sensor devices via the Mynewt
OS Shell.</p></li>
<li><p>Retrieving sensor data over the OIC protocol and BLE transport.</p></li>
</ul>
<div class="contents local topic" id="contents">
<ul class="simple">
<li><p><a class="reference internal" href="#available-tutorials" id="id1">Available Tutorials</a></p></li>
<li><p><a class="reference internal" href="#mynewt-smart-device-controller-oic-app" id="id2">Mynewt Smart Device Controller OIC App</a></p></li>
<li><p><a class="reference internal" href="#prerequisites" id="id3">Prerequisites</a></p></li>
</ul>
</div>
<div class="section" id="available-tutorials">
<h2><a class="toc-backref" href="#id1">Available Tutorials</a><a class="headerlink" href="#available-tutorials" title="Permalink to this headline"></a></h2>
<p>The tutorials are:</p>
<ul class="simple">
<li><p><a class="reference internal" href="sensor_nrf52_bno055.html"><span class="doc">Enabling an Off-Board Sensor in an Existing Application</span></a> - This is an introductory tutorial that
shows you to how to quickly bring up a sensor enabled application that
retrieves data from a sensor device. We recommend that you work through
this tutorial before trying one of the other tutorials.</p></li>
<li><p><a class="reference internal" href="sensor_offboard_config.html"><span class="doc">Changing the Default Configuration for a Sensor</span></a> - This tutorial shows you how to
change the default configuration values for a sensor.</p></li>
<li><p><a class="reference internal" href="sensor_thingy_lis2dh12_onb.html"><span class="doc">Developing an Application for an Onboard Sensor</span></a> - This tutorial shows you how to
develop a simple application for a device with an onboard sensor.</p></li>
<li><p><a class="reference internal" href="sensor_oic_overview.html"><span class="doc">Enabling OIC Sensor Data Monitoring</span></a> - This tutorial shows you how to enable
support for sensor data monitoring via OIC in an existing application.</p></li>
</ul>
</div>
<div class="section" id="mynewt-smart-device-controller-oic-app">
<h2><a class="toc-backref" href="#id2">Mynewt Smart Device Controller OIC App</a><a class="headerlink" href="#mynewt-smart-device-controller-oic-app" title="Permalink to this headline"></a></h2>
<p>We use the <code class="docutils literal notranslate"><span class="pre">Mynewt</span> <span class="pre">Sensor</span> <span class="pre">Monitor</span></code> App on iOS or Android to retrieve
and display sensor data from the Mynewt OS OIC sensor applications
described in the OIC Sensor Data Monitoring tutorials. You can download
the app from either the Apple Store or Google Play Store.</p>
<p><strong>Note:</strong> At the time of writing this tutorial, the iOS app was still in
the queue waiting to be placed in the App Store. You can build the iOS
app from source as indicated below.</p>
<p>If you would like to contribute or modify the Mynewt Smart Device
Controller App, see the <a class="reference external" href="https://github.com/runtimeco/android_sensor">Android Sensor
source</a> and <a class="reference external" href="https://github.com/runtimeco/iOS_oic">iOS Sensor
source</a> on github.</p>
</div>
<div class="section" id="prerequisites">
<h2><a class="toc-backref" href="#id3">Prerequisites</a><a class="headerlink" href="#prerequisites" title="Permalink to this headline"></a></h2>
<p>Ensure that you meet the following prerequisites
before continuing with one of the tutorials.</p>
<ul class="simple">
<li><p>Have Internet connectivity to fetch remote Mynewt components.</p></li>
<li><p>Have a computer to build a Mynewt application and connect to the
board over USB.</p></li>
<li><p>Have a Micro-USB cable to connect the board and the computer.</p></li>
<li><p>Install the newt tool and toolchains ( See <a class="reference internal" href="../../get_started/index.html"><span class="doc">Basic Setup</span></a> ).</p></li>
<li><p>Read the Mynewt OS <a class="reference internal" href="../../concepts.html"><span class="doc">Concepts</span></a> section.</p></li>
<li><p>Create a project space (directory structure) and populate it with the core
code repository (apache-mynewt-core) explained in <a class="reference internal" href="../../get_started/project_create.html"><span class="doc">Creating Your First
Project</span></a></p></li>
<li><p>Work through one of the <a class="reference internal" href="../blinky/blinky.html"><span class="doc">Blinky Tutorials</span></a></p></li>
</ul>
</div>
</div>
</div>
</div>
<div class="rst-footer-buttons row" role="navigation" aria-label="footer navigation">
<a href="sensor_nrf52_bno055.html" class="btn btn-neutral float-right" title="Enabling an Off-Board Sensor in an Existing Application" accesskey="n">Next: Enabling an Off-Board Sensor in an Existing Application <span class="fa fa-arrow-circle-right"></span></a>
<a href="sensors.html" class="btn btn-neutral" title="Sensors" accesskey="p"><span class="fa fa-arrow-circle-left"></span> Previous: Sensors</a>
</div>
</div>
</div>
</div>
<!-- ENDS CONTENT SECTION -->
</div>
<!-- ENDS .content -->
</div>
</div>
<footer>
<div class="container">
<div class="row">
<div class="col-xs-12">
<p class="copyright">Apache Mynewt is available under Apache License, version 2.0.</p>
</div>
<div class="col-xs-12">
<div class="logos">
<img src="../../_static/img/asf_logo_wide_small.png" alt="Apache" title="Apache">
<small class="footnote">
Apache Mynewt, Mynewt, Apache, the Apache feather logo, and the Apache Mynewt project logo are either
registered trademarks or trademarks of the Apache Software Foundation in the United States and other countries.
</small>
<a href="">
<img src="../../_static/img/add_to_slack.png" alt="Slack Icon" title="Join our Slack Community" />
</a>
</div>
</div>
</div>
</div>
</footer>
</div>
<!-- ENDS #wrapper -->
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT:'../../',
VERSION:'latest',
COLLAPSE_INDEX:false,
FILE_SUFFIX:'.html',
HAS_SOURCE: true,
SOURCELINK_SUFFIX: '.txt',
LINK_SUFFIX: '.html'
};
</script>
<script type="text/javascript" src="../../_static/jquery.js"></script>
<script type="text/javascript" src="../../_static/underscore.js"></script>
<script type="text/javascript" src="../../_static/doctools.js"></script>
<script type="text/javascript" src="../../_static/js/bootstrap-3.0.3.min.js"></script>
<script type="text/javascript" src="../../_static/js/affix.js"></script>
<script type="text/javascript" src="../../_static/js/main.js"></script>
</body>
</html>