You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mynewt.apache.org by ad...@apache.org on 2016/07/14 00:58:24 UTC

[2/2] incubator-mynewt-site git commit: Added pull request #107. Organized newtmgr tutorials to differentiate between pull request #107 and existing Slinky tutorials

Added pull request #107. Organized newtmgr tutorials to differentiate between pull request #107 and existing Slinky tutorials


Project: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/commit/5344d177
Tree: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/tree/5344d177
Diff: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/diff/5344d177

Branch: refs/heads/asf-site
Commit: 5344d177d36bc3181b346d602d665e04ac41a0e8
Parents: bd436d9
Author: aditihilbert <ad...@runtime.io>
Authored: Wed Jul 13 17:58:13 2016 -0700
Committer: aditihilbert <ad...@runtime.io>
Committed: Wed Jul 13 17:58:13 2016 -0700

----------------------------------------------------------------------
 develop/mkdocs/search_index.json                |  80 ++-
 develop/os/tutorials/STM32F303/index.html       |  11 +-
 develop/os/tutorials/add_newtmgr/index.html     | 650 +++++++++++++++++++
 .../os/tutorials/air_quality_sensor/index.html  |  11 +-
 develop/os/tutorials/arduino_zero/index.html    |  11 +-
 develop/os/tutorials/blehci_project/index.html  |  11 +-
 .../os/tutorials/bleprph/bleprph-adv/index.html |  11 +-
 .../bleprph/bleprph-chr-access/index.html       |  11 +-
 .../tutorials/bleprph/bleprph-conn/index.html   |  11 +-
 .../tutorials/bleprph/bleprph-intro/index.html  |  11 +-
 .../bleprph/bleprph-svc-reg/index.html          |  11 +-
 develop/os/tutorials/bletiny_project/index.html |  15 +-
 develop/os/tutorials/blinky_primo/index.html    |  11 +-
 .../os/tutorials/blinky_sram_olimex/index.html  |  11 +-
 develop/os/tutorials/event_queue/index.html     |  13 +-
 develop/os/tutorials/ibeacon/index.html         |  11 +-
 develop/os/tutorials/nRF52/index.html           |  11 +-
 develop/os/tutorials/olimex/index.html          |  11 +-
 develop/os/tutorials/pin-wheel-mods/index.html  |  11 +-
 develop/os/tutorials/project-slinky/index.html  |  47 +-
 .../tutorials/project-target-slinky/index.html  |  53 +-
 develop/os/tutorials/repo/add_repos/index.html  |  11 +-
 .../os/tutorials/repo/create_repo/index.html    |  11 +-
 .../os/tutorials/repo/upgrade_repo/index.html   |  11 +-
 develop/os/tutorials/tasks_lesson/index.html    |  11 +-
 develop/os/tutorials/tutorials/index.html       |  19 +-
 develop/os/tutorials/unit_test/index.html       |  11 +-
 develop/sitemap.xml                             |  20 +-
 latest/sitemap.xml                              |  20 +-
 sitemap.xml                                     |  20 +-
 v0_9_0/sitemap.xml                              |  20 +-
 31 files changed, 1022 insertions(+), 155 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/5344d177/develop/mkdocs/search_index.json
----------------------------------------------------------------------
diff --git a/develop/mkdocs/search_index.json b/develop/mkdocs/search_index.json
index 595613e..77bbd61 100644
--- a/develop/mkdocs/search_index.json
+++ b/develop/mkdocs/search_index.json
@@ -407,7 +407,7 @@
         }, 
         {
             "location": "/os/tutorials/tutorials/", 
-            "text": "Tutorials\n\n\nIf the introduction to Mynewt has piqued your interest and you want to familiarize yourself with some of its functionality, this series of tutorials is for you. The lessons are aimed at the beginner. \n\n\nThe full list of tutorials can be seen in the navigation bar on the left. New ones are being constantly added and will show up there automatically.\n\n\n\n\nPrerequisites:\n\n\n\n\nYou have installed Docker container of Newt tool and toolchains or you have installed them natively on your machine\n\n\nYou have created a new project space (directory structure) and populated it with the core code repository (apache-mynewt-core) or know how to as explained in \nCreating Your First Project\n.\n\n\n\n\n\n\nTutorial categories:\n\n\nThe tutorials fall into a few broad categories. Some examples in each category are listed below.\n\n\n\n\n\n\nMaking an LED blink (the \"Hello World\" equivalent in the electronics world)\n\n\n\n\nBlinky on Arduino Zero har
 dware\n\n\nBlinky on Olimex/STM32F407ZGT6 Cortex-M4 hardware\n\n\nBlinky on STM32F3 discovery kit from ST Micro\n\n\nBlinky on nRF52 Development Kit from Nordic Semiconductor\n \nNote:\n This supports BLE.\n\n\n\n\n\n\n\n\n\n\nTweaking available apps to customize behavior e.g. making a more exciting LED blink pattern\n\n\n\n\nPinwheel Blinky on STM32F3 discovery board\n\n\n\n\n\n\n\n\n\n\nNavigating the code and adding functionality  \n\n\n\n\nAdding more repositories to your project\n\n\nAdding a unit test for a package\n\n\nAdding task to manage multiple events\n\n\n\n\n\n\n\n\n\n\n\n\nBluetooth Low Energy\n\n\nRunning the example BLE app included in the repo\n\n\nWorking with another example BLE app for a peripheral device\n\n\n\n\n\n\n\n\n\n\n\n\nUsing NewtMgr \n\n\nEnabling remote communication with a device running Mynewt OS\n\n\n\n\n\n\n\n\n\n\nSend us an email on the dev@ mailing list if you have comments or suggestions!\n If you haven't joined the mailing list, you will fin
 d the links \nhere\n.", 
+            "text": "Tutorials\n\n\nIf the introduction to Mynewt has piqued your interest and you want to familiarize yourself with some of its functionality, this series of tutorials is for you. The lessons are aimed at the beginner. \n\n\nThe full list of tutorials can be seen in the navigation bar on the left. New ones are being constantly added and will show up there automatically.\n\n\n\n\nPrerequisites:\n\n\n\n\nYou have installed Docker container of Newt tool and toolchains or you have installed them natively on your machine\n\n\nYou have created a new project space (directory structure) and populated it with the core code repository (apache-mynewt-core) or know how to as explained in \nCreating Your First Project\n.\n\n\nYou have at least one of the supported development boards: \n\n\nSTM32F3 discovery kit from ST Micro\n\n\nArduino Zero hardware\n\n\nOlimex/STM32F407ZGT6 Cortex-M4 hardware\n\n\nnRF52 Development Kit from Nordic Semiconductor\n\n\n\n\n\n\n\n\nThe Nordic nrf
 52 developer kit supports Bluetooth Low Energy. We are always looking to add new hardware to the list, so if you want to develop the required Board Support Package (bsp) and/or Hardware Abstraction Layer (HAL) for a new board, you can look \nhere\n to get started.\n\n\n\n\nTutorial categories:\n\n\nThe tutorials fall into a few broad categories. Some examples in each category are listed below.\n\n\n\n\n\n\nMaking an LED blink (the \"Hello World\" equivalent in the electronics world)\n\n\n\n\nBlinky on Arduino Zero hardware\n\n\nBlinky on Olimex/STM32F407ZGT6 Cortex-M4 hardware\n\n\nBlinky on STM32F3 discovery kit from ST Micro\n\n\nBlinky on nRF52 Development Kit from Nordic Semiconductor\n \nNote:\n This supports BLE.\n\n\n\n\n\n\n\n\n\n\nTweaking available apps to customize behavior e.g. making a more exciting LED blink pattern\n\n\n\n\nPinwheel Blinky on STM32F3 discovery board\n\n\n\n\n\n\n\n\n\n\nNavigating the code and adding functionality  \n\n\n\n\nAdding more repositories t
 o your project\n\n\nAdding a unit test for a package\n\n\nAdding task to manage multiple events\n\n\n\n\n\n\n\n\n\n\n\n\nBluetooth Low Energy\n\n\nRunning the example BLE app included in the repo\n\n\nWorking with another example BLE app for a peripheral device\n\n\n\n\n\n\n\n\n\n\n\n\nUsing NewtMgr \n\n\nEnabling remote communication with a device running Mynewt OS\n\n\n\n\n\n\n\n\n\n\nSend us an email on the dev@ mailing list if you have comments or suggestions!\n If you haven't joined the mailing list, you will find the links \nhere\n.", 
             "title": "toc"
         }, 
         {
@@ -417,7 +417,7 @@
         }, 
         {
             "location": "/os/tutorials/tutorials/#prerequisites", 
-            "text": "You have installed Docker container of Newt tool and toolchains or you have installed them natively on your machine  You have created a new project space (directory structure) and populated it with the core code repository (apache-mynewt-core) or know how to as explained in  Creating Your First Project .", 
+            "text": "You have installed Docker container of Newt tool and toolchains or you have installed them natively on your machine  You have created a new project space (directory structure) and populated it with the core code repository (apache-mynewt-core) or know how to as explained in  Creating Your First Project .  You have at least one of the supported development boards:   STM32F3 discovery kit from ST Micro  Arduino Zero hardware  Olimex/STM32F407ZGT6 Cortex-M4 hardware  nRF52 Development Kit from Nordic Semiconductor     The Nordic nrf52 developer kit supports Bluetooth Low Energy. We are always looking to add new hardware to the list, so if you want to develop the required Board Support Package (bsp) and/or Hardware Abstraction Layer (HAL) for a new board, you can look  here  to get started.", 
             "title": "Prerequisites:"
         }, 
         {
@@ -1192,20 +1192,15 @@
         }, 
         {
             "location": "/os/tutorials/project-slinky/", 
-            "text": "Project Sim Slinky\n\n\nObjective\n\n\nThe goal of the project is to enable and demonstrate remote communications with the Mynewt OS via newt manager (newtmgr). We will do this through building a project with Mynewt called Slinky that runs via the native platform. \n\n\nWhat you need\n\n\n1.Personal Computer\n\n\nThe instructions assume the user is using a Bourne-compatible shell (e.g. bash or zsh) on your computer. The given instructions have been tested with the following releases of operating systems:\n\n\n\n\nMac: OS X Yosemite Version 10.10.5\n\n\n\n\nOverview of steps\n\n\n\n\nInstall dependencies\n\n\nDefine a target using the newt tool\n\n\nBuild executables for the targets using the newt tool\n\n\nSet up serial connection with the targets \n\n\nCreate a connection profile using the newtmgr tool\n\n\nUse the newtmgr tool to communicate with the targets\n\n\n\n\nInstalling newt\n\n\nIf you have not already installed \nnewt\n see the \n\nnewt installation 
 instructions\n and ensure newt is installed an in your path.\n\n\nInstalling newtmgr\n\n\nIf you have not already installed \nnewtmgr\n see the \n\nnewtmgr installation instructions\n and ensure newtmgr is installed an in your path.\n\n\nCreating a new project\n\n\nInstructions for creating a project are located in the \nBasic Setup\n section of the \nMynewt Documentation\n\n\nWe will list only the steps here for brevity.  We will name the project\n\nslinky\n.\n\n\n    $ newt new slinky\n    Downloading project skeleton from apache/incubator-mynewt-blinky...\n    ...\n    Installing skeleton in slink...\n    Project slink successfully created\n    $ cd slinky\n    $ newt install -v\n    Downloading repository description for apache-mynewt-core... success!\n    ...\n    Repos successfully installed\n\n\n\n\n\nSetting up your target build\n\n\nCreate a target for \nslinky\n using the native bsp. We will list only the steps and suppress the tool output here for brevity.\n\n\n    $ newt
  target create sim_slinky\n    $ newt target set sim_slinky bsp=@apache-mynewt-core/hw/bsp/native\n    $ newt target set sim_slinky build_profile=debug\n    $ newt target set sim_slinky app=@apache-mynewt-core/apps/slinky\n\n\n\n\n\nBuilding Your target\n\n\nTo build your target, use \nnewt build\n.  When complete, an executable file\nis created.\n\n\n    $ newt build sim_slinky \n    Compiling main.c\n    ...\n    Linking slinky.elf\n    App successfully built: ~/dev/slinky/bin/sim_slinky/apps/slinky/slinky.elf\n\n\n\n\n\nRun the target\n\n\nRun the executable you have build for the simulated environment. The serial port name on which the simulated target is connected is shown in the output\nwhen mynewt slinky starts.\n\n\n    $ ~/dev/slinky/bin/sim_slinky/apps/slinky/slinky.elf\n    uart0 at /dev/ttys005\n\n\n\n\n\n\n\nIn this example, the slinky app opened up a com port \n/dev/ttys005\n\nfor communications with newtmgr. \n\n\nNOTE:\n This application will block. You will need to 
 open a new console (or execute this in another console) to continue the tutorial.*\n\n\n\n\nSetting up a connection profile\n\n\nYou will now set up a connection profile using \nnewtmgr\n for the serial port connection and start communicating with the simulated remote device.\n\n\n    $ newtmgr conn add sim1 type=serial connstring=/dev/ttys005\n    Connection profile sim1 successfully added\n    $ newtmgr conn show\n    Connection profiles: \n      sim1: type=serial, connstring=\n/dev/ttys007\n\n\n\n\n\n\nExecuting newtmgr commands with the target\n\n\nYou can now use connection profile \nsim1\n to talk to the running sim_blinky.\nAs an example, we will query the running mynewt OS for the usage of its \nmemory pools.  \n\n\n    $ newtmgr -c sim1 mpstats\n    Return Code = 0\n      nffs_cache_inode_pool (blksize=36 nblocks=4 nfree=4)\n      nffs_cache_block_pool (blksize=32 nblocks=64 nfree=64)\n      nffs_dir_pool (blksize=8 nblocks=4 nfree=4)\n      default_mbuf_data (blksize=256 n
 blocks=10 nfree=8)\n      nffs_file_pool (blksize=12 nblocks=4 nfree=4)\n      nffs_inode_entry_pool (blksize=24 nblocks=100 nfree=98)\n      nffs_block_entry_pool (blksize=12 nblocks=100 nfree=100)\n\n\n\n\n\nAs a test command, you can send an arbitrary string to the target and it\nwill echo that string back in a response to newtmgr.\n\n\n    $ newtmgr -c sim1 echo \nHello Mynewt\n\n    {\nr\n: \nHello Mynewt\n}\n\n\n\n\n\nThe response comes back as a json string.\n\n\nIn addition to these, you can also examine running tasks, statistics, \nlogs, image status (not on sim), and configuration.", 
-            "title": "Enable remote comms on sim device"
+            "text": "Project Sim Slinky\n\n\n\n\nThe goal of the project is to use a sample app called \"Slinky\" included in the Mynewt repository to enable remote communications with a device running the Mynewt OS. The protocol for remote communications is called newt manager (newtmgr). In this tutorial we will create a target for a simulated device and define it with the sample app \"Slinky\". \n\n\nIf you have an existing project using a target that does not use the Slinky app and you wish to add newtmgt functonality to it, check out the tutorial titled \nEnable newtmgr in any app\n. \n\n\n\n\nWhat you need\n\n\n1.Personal Computer\n\n\nThe instructions assume the user is using a Bourne-compatible shell (e.g. bash or zsh) on your computer. The given instructions have been tested with the following releases of operating systems:\n\n\n\n\nMac: OS X Yosemite Version 10.10.5\n\n\n\n\nOverview of steps\n\n\n\n\nInstall dependencies\n\n\nDefine a target using the newt tool\n\n\nBuild 
 executables for the targets using the newt tool\n\n\nSet up serial connection with the targets \n\n\nCreate a connection profile using the newtmgr tool\n\n\nUse the newtmgr tool to communicate with the targets\n\n\n\n\nInstalling newt\n\n\nIf you have not already installed \nnewt\n see the \n\nnewt installation instructions\n and ensure newt is installed an in your path.\n\n\nInstalling newtmgr\n\n\nIf you have not already installed \nnewtmgr\n see the \n\nnewtmgr installation instructions\n and ensure newtmgr is installed an in your path.\n\n\nCreating a new project\n\n\nInstructions for creating a project are located in the \nBasic Setup\n section of the \nMynewt Documentation\n\n\nWe will list only the steps here for brevity.  We will name the project\n\nslinky\n.\n\n\n    $ newt new slinky\n    Downloading project skeleton from apache/incubator-mynewt-blinky...\n    ...\n    Installing skeleton in slink...\n    Project slink successfully created\n    $ cd slinky\n    $ newt inst
 all -v\n    Downloading repository description for apache-mynewt-core... success!\n    ...\n    Repos successfully installed\n\n\n\n\n\nSetting up your target build\n\n\nCreate a target for \nslinky\n using the native bsp. We will list only the steps and suppress the tool output here for brevity.\n\n\n    $ newt target create sim_slinky\n    $ newt target set sim_slinky bsp=@apache-mynewt-core/hw/bsp/native\n    $ newt target set sim_slinky build_profile=debug\n    $ newt target set sim_slinky app=@apache-mynewt-core/apps/slinky\n\n\n\n\n\nBuilding Your target\n\n\nTo build your target, use \nnewt build\n.  When complete, an executable file\nis created.\n\n\n    $ newt build sim_slinky \n    Compiling main.c\n    ...\n    Linking slinky.elf\n    App successfully built: ~/dev/slinky/bin/sim_slinky/apps/slinky/slinky.elf\n\n\n\n\n\nRun the target\n\n\nRun the executable you have build for the simulated environment. The serial port name on which the simulated target is connected is sho
 wn in the output\nwhen mynewt slinky starts.\n\n\n    $ ~/dev/slinky/bin/sim_slinky/apps/slinky/slinky.elf\n    uart0 at /dev/ttys005\n\n\n\n\n\n\n\nIn this example, the slinky app opened up a com port \n/dev/ttys005\n\nfor communications with newtmgr. \n\n\nNOTE:\n This application will block. You will need to open a new console (or execute this in another console) to continue the tutorial.*\n\n\n\n\nSetting up a connection profile\n\n\nYou will now set up a connection profile using \nnewtmgr\n for the serial port connection and start communicating with the simulated remote device.\n\n\n    $ newtmgr conn add sim1 type=serial connstring=/dev/ttys005\n    Connection profile sim1 successfully added\n    $ newtmgr conn show\n    Connection profiles: \n      sim1: type=serial, connstring=\n/dev/ttys007\n\n\n\n\n\n\nExecuting newtmgr commands with the target\n\n\nYou can now use connection profile \nsim1\n to talk to the running sim_blinky.\nAs an example, we will query the running myne
 wt OS for the usage of its \nmemory pools.  \n\n\n    $ newtmgr -c sim1 mpstats\n    Return Code = 0\n      nffs_cache_inode_pool (blksize=36 nblocks=4 nfree=4)\n      nffs_cache_block_pool (blksize=32 nblocks=64 nfree=64)\n      nffs_dir_pool (blksize=8 nblocks=4 nfree=4)\n      default_mbuf_data (blksize=256 nblocks=10 nfree=8)\n      nffs_file_pool (blksize=12 nblocks=4 nfree=4)\n      nffs_inode_entry_pool (blksize=24 nblocks=100 nfree=98)\n      nffs_block_entry_pool (blksize=12 nblocks=100 nfree=100)\n\n\n\n\n\nAs a test command, you can send an arbitrary string to the target and it\nwill echo that string back in a response to newtmgr.\n\n\n    $ newtmgr -c sim1 echo \nHello Mynewt\n\n    {\nr\n: \nHello Mynewt\n}\n\n\n\n\n\nThe response comes back as a json string.\n\n\nIn addition to these, you can also examine running tasks, statistics, \nlogs, image status (not on sim), and configuration.", 
+            "title": "Slinky on sim device"
         }, 
         {
             "location": "/os/tutorials/project-slinky/#project-sim-slinky", 
-            "text": "", 
+            "text": "The goal of the project is to use a sample app called \"Slinky\" included in the Mynewt repository to enable remote communications with a device running the Mynewt OS. The protocol for remote communications is called newt manager (newtmgr). In this tutorial we will create a target for a simulated device and define it with the sample app \"Slinky\".   If you have an existing project using a target that does not use the Slinky app and you wish to add newtmgt functonality to it, check out the tutorial titled  Enable newtmgr in any app .", 
             "title": "Project Sim Slinky"
         }, 
         {
-            "location": "/os/tutorials/project-slinky/#objective", 
-            "text": "The goal of the project is to enable and demonstrate remote communications with the Mynewt OS via newt manager (newtmgr). We will do this through building a project with Mynewt called Slinky that runs via the native platform.", 
-            "title": "Objective"
-        }, 
-        {
             "location": "/os/tutorials/project-slinky/#what-you-need", 
             "text": "1.Personal Computer  The instructions assume the user is using a Bourne-compatible shell (e.g. bash or zsh) on your computer. The given instructions have been tested with the following releases of operating systems:   Mac: OS X Yosemite Version 10.10.5", 
             "title": "What you need"
@@ -1257,18 +1252,13 @@
         }, 
         {
             "location": "/os/tutorials/project-target-slinky/", 
-            "text": "Project Slinky\n\n\nObjective\n\n\nThe goal of the project is to enable and demonstrate remote communications with the Mynewt OS via newt manager (newtmgr). We will do this through a project with Mynewt called Slinky that runs on the STM32-E407 board.\n\n\nWhat you need\n\n\n\n\nSTM32-E407 development board from Olimex. You can order it from \nhttp://www.mouser.com\n, \nhttp://www.digikey.com\n, and other places.\n\n\nARM-USB-TINY-H connector with JTAG interface for debugging ARM microcontrollers (comes with the ribbon cable to hook up to the board)\n\n\nUSB A-B type cable to connect the debugger to your personal computer\n\n\nA USB to TTL Serial Cable with female wiring harness. An example is \nhttp://www.amazon.com/JBtek\u00ae-WINDOWS-Supported-Raspberry-Programming/dp/B00QT7LQ88/ref=lp_464404_1_9?s=pc\nie=UTF8\nqid=1454631303\nsr=1-9\n\n\nPersonal Computer\n\n\n\n\nThe instructions assume the user is using a Bourne-compatible shell (e.g. bash or zsh) on your 
 computer. The given instructions have been tested with the following releases of operating systems:\n\n\n\n\nMac: OS X Yosemite Version 10.10.5\n\n\n\n\nOverview of steps\n\n\n\n\nInstall dependencies\n\n\nDefine a target using the newt tool\n\n\nBuild executables for the targets using the newt tool\n\n\nSet up serial connection with the targets \n\n\nCreate a connection profile using the newtmgr tool\n\n\nUse the newtmgr tool to communicate with the targets\n\n\n\n\nInstall newt\n\n\nIf you have not already installed \nnewt\n, see the \n\nnewt installation instructions\n and ensure newt is installed an in your path.\n\n\nInstall newtmgr\n\n\nIf you have not already installed \nnewtmgr\n, see the \n\nnewtmgr installation instructions\n and ensure newtmgr is installed an in your path.\n\n\nCreate a new project\n\n\nInstructions for creating a project are located in the \nBasic Setup\n section of the \nMynewt Documentation\n.\n\n\nIf you already completed \nSim Slinky\n you can skip t
 his step.\n\n\nWe will list only the steps here for brevity.  We will name the project\n\nslinky\n.\n\n\n$ newt new slinky\nDownloading project skeleton from apache/incubator-mynewt-blinky...\n...\nInstalling skeleton in slink...\nProject slink successfully created\n$ cd slinky\n$newt install -v\nDownloading repository description for apache-mynewt-core... success!\n...\nRepos successfully installed\n\n\n\n\n\n\n\nSet up your target builds\n\n\nCreate a target for \nstm32_slinky\n using the native BSP. The Newt tool output is suppressed below for brevity.\n\n\n$ newt target create stm32_slinky\n$ newt target set stm32_slinky bsp=@apache-mynewt-core/hw/bsp/olimex_stm32-e407_devboard\n$ newt target set stm32_slinky build_profile=debug\n$ newt target set stm32_slinky app=@apache-mynewt-core/apps/slinky\n\n\n\n\n\nCreate a second target for \nstm32_bootloader\n to build a bootloader to boot\nthe \nstm32_slinky\n image.  The tool output is suppressed below for brevity.\n\n\n$ newt target
  create stm32_bootloader\n$ newt target set stm32_bootloader bsp=@apache-mynewt-core/hw/bsp/olimex_stm32-e407_devboard\n$ newt target set stm32_bootloader build_profile=optimized\n$ newt target set stm32_bootloader target.app=@apache-mynewt-core/apps/boot\n\n\n\n\n\n\n\nBuild Targets\n\n\n$ newt build stm32_slinky\nCompiling main.c\n...\nLinking slinky.elf\nApp successfully built: ~/dev/slinky/bin/stm32_slinky/apps/slinky/slinky.elf\n\n\n\n\n\nnewt build stm32_bootloader\nCompiling crc16.c\n...\nLinking boot.elf\nApp successfully built: ~/slinky/bin/stm32_bootloader/apps/boot/boot.elf\n\n\n\n\n\nFor the main image, you need to create an image using newt create-image.\nGive this image some arbitrary version number \"1.2.3\".\n\n\n$ newt create-image stm32_slinky 1.2.3\nApp image successfully generated: /Users/paulfdietrich/dev/slinky/bin/stm32_slinky/apps/slinky/slinky.img\nBuild manifest: /Users/paulfdietrich/dev/slinky/bin/stm32_slinky/apps/slinky/manifest.json\n\n\n\n\n\n\n\nUsing
  newtmgr with a remote target\n\n\n\n\n\n\nFirst make sure the USB A-B type cable is connected to the ARM-USB-TINY-H debugger connector on the Olimex board. \n\n\nNext go the to project directory and download the slinky project image to the flash of the Olimex board. \n\n\n\n\n\n\n$ newt load stm32_bootloader\n$ newt load stm32_slinky\n\n\n\n\n\nYou can now disconnect the debugging cable from the board. You should see the green LED blinking. If not, try powercycling the board.\n\n\n\n\n\n\n\n\nNow you have to set up the serial connection from your computer to the Olimex board. Locate the PC6/USART6_TX (pin#3), PC7/USART6_RX (pin#4), and GND (pin#2) of the UEXT connector on the Olimex board. More information on the UEXT connector can be found at \nhttps://www.olimex.com/Products/Modules/UEXT/\n. The schematic of the board can be found at \nhttps://www.olimex.com/Products/ARM/ST/STM32-E407/resources/STM32-E407_sch.pdf\n for reference.\n\n\n\n\n\n\nConnect the female RX pin of the USB-
 TTL serial cable to the TX of the UEXT connector on the board. \n\n\nConnect the female TX pin of the USB-TTL serial cable to the RX of the UEXT connector on the board. \n\n\nConnect the GND pin of the USB-TTL serial cable to the GND of the UEXT connector on the board.\n\n\n\n\n\n\n\n\n\n\n\n\nLocate the serial connection established in the /dev directory of your computer. It should be of the type \ntty.usbserial-\nsome identifier\n.\n\n\n\n\n        $ ls /dev/tty.usbserial-AJ03HAQQ \n        /dev/tty.usbserial-AJ03HAQQ\n\n\n\n\n\n\n\n\n\nYou now have to define a connection profile using newtmgr. You can give it any name you want. The example below shows the connection profile being named as the very imaginative \nolimex01\n.\n\n\n\n\n        $ pwd\n        /Users/\nuser\n/dev/larva/project/slinky\n        $ newtmgr conn add olimex01 type=serial connstring=/dev/tty.usbserial-AJ03HAQQ \n        Connection profile olimex01 successfully added\n        $ newtmgr conn show\n        Conne
 ction profiles: \n          sim1: type=serial, connstring=\n/dev/ttys007\n\n          olimex01: type=serial, connstring=\n/dev/tty.usbserial-AJ03HAQQ\n\n\n\n\n\n\n\n\n\n\nNow go ahead and query the Olimex board to get responses back. The simplest command is the \necho\n command to ask it to respond with the text you send it. \n\n\n\n\n    $ newtmgr echo -c olimex01 hello\n    {\nr\n: \nhello\n}\n    $ newtmgr image -c olimex01 list\n    Images:\n        0 : 1.2.3\n    $ newtmgr -c olimex01 taskstats\n    Return Code = 0\n      newtmgr (prio=4 tid=2 runtime=0 cswcnt=12 stksize=512 stkusage=255 last_checkin=0 next_checkin=0)\n      task1 (prio=1 tid=3 runtime=0 cswcnt=299 stksize=128 stkusage=33 last_checkin=0 next_checkin=0)\n      task2 (prio=2 tid=4 runtime=0 cswcnt=300 stksize=128 stkusage=31 last_checkin=0 next_checkin=0)\n      idle (prio=255 tid=0 runtime=299916 cswcnt=313 stksize=32 stkusage=18 last_checkin=0 next_checkin=0)\n      shell (prio=3 tid=1 runtime=1 cswcnt=20 stksi
 ze=384 stkusage=60 last_checkin=0 next_checkin=0)", 
-            "title": "Enable remote comms on STM32 board"
+            "text": "Project Slinky using STM32 board\n\n\n\n\nThe goal of the project is to enable and demonstrate remote communications with the Mynewt OS via newt manager (newtmgr) by leveraging a sample app \"Slinky\" included under the /apps directory in the repository. In this project we will define a target for the STM32-E407 board and assign the app \"Slinky\" to it.\n\n\nIf you have an existing project using a target that does not use the Slinky app and you wish to add newtmgt functonality to it, check out the tutorial titled \nEnable newtmgr in any app\n. \n\n\n\n\nWhat you need\n\n\n\n\nSTM32-E407 development board from Olimex. You can order it from \nhttp://www.mouser.com\n, \nhttp://www.digikey.com\n, and other places.\n\n\nARM-USB-TINY-H connector with JTAG interface for debugging ARM microcontrollers (comes with the ribbon cable to hook up to the board)\n\n\nUSB A-B type cable to connect the debugger to your personal computer\n\n\nA USB to TTL Serial Cable with female
  wiring harness. An example is \nhttp://www.amazon.com/JBtek\u00ae-WINDOWS-Supported-Raspberry-Programming/dp/B00QT7LQ88/ref=lp_464404_1_9?s=pc\nie=UTF8\nqid=1454631303\nsr=1-9\n\n\nPersonal Computer\n\n\n\n\nThe instructions assume the user is using a Bourne-compatible shell (e.g. bash or zsh) on your computer. The given instructions have been tested with the following releases of operating systems:\n\n\n\n\nMac: OS X Yosemite Version 10.10.5\n\n\n\n\nOverview of steps\n\n\n\n\nInstall dependencies\n\n\nDefine a target using the newt tool\n\n\nBuild executables for the targets using the newt tool\n\n\nSet up serial connection with the targets \n\n\nCreate a connection profile using the newtmgr tool\n\n\nUse the newtmgr tool to communicate with the targets\n\n\n\n\nInstall newt\n\n\nIf you have not already installed \nnewt\n, see the \n\nnewt installation instructions\n and ensure newt is installed an in your path.\n\n\nInstall newtmgr\n\n\nIf you have not already installed \nnewtmg
 r\n, see the \n\nnewtmgr installation instructions\n and ensure newtmgr is installed an in your path.\n\n\nCreate a new project\n\n\nInstructions for creating a project are located in the \nBasic Setup\n section of the \nMynewt Documentation\n.\n\n\nIf you already completed \nSim Slinky\n you can skip this step.\n\n\nWe will list only the steps here for brevity.  We will name the project\n\nslinky\n.\n\n\n$ newt new slinky\nDownloading project skeleton from apache/incubator-mynewt-blinky...\n...\nInstalling skeleton in slink...\nProject slink successfully created\n$ cd slinky\n$newt install -v\nDownloading repository description for apache-mynewt-core... success!\n...\nRepos successfully installed\n\n\n\n\n\n\n\nSet up your target builds\n\n\nCreate a target for \nstm32_slinky\n using the native BSP. The Newt tool output is suppressed below for brevity.\n\n\n$ newt target create stm32_slinky\n$ newt target set stm32_slinky bsp=@apache-mynewt-core/hw/bsp/olimex_stm32-e407_devboard\n$
  newt target set stm32_slinky build_profile=debug\n$ newt target set stm32_slinky app=@apache-mynewt-core/apps/slinky\n\n\n\n\n\nCreate a second target for \nstm32_bootloader\n to build a bootloader to boot\nthe \nstm32_slinky\n image.  The tool output is suppressed below for brevity.\n\n\n$ newt target create stm32_bootloader\n$ newt target set stm32_bootloader bsp=@apache-mynewt-core/hw/bsp/olimex_stm32-e407_devboard\n$ newt target set stm32_bootloader build_profile=optimized\n$ newt target set stm32_bootloader target.app=@apache-mynewt-core/apps/boot\n\n\n\n\n\n\n\nBuild Targets\n\n\n$ newt build stm32_slinky\nCompiling main.c\n...\nLinking slinky.elf\nApp successfully built: ~/dev/slinky/bin/stm32_slinky/apps/slinky/slinky.elf\n\n\n\n\n\nnewt build stm32_bootloader\nCompiling crc16.c\n...\nLinking boot.elf\nApp successfully built: ~/slinky/bin/stm32_bootloader/apps/boot/boot.elf\n\n\n\n\n\nFor the main image, you need to create an image using newt create-image.\nGive this image 
 some arbitrary version number \"1.2.3\".\n\n\n$ newt create-image stm32_slinky 1.2.3\nApp image successfully generated: /Users/paulfdietrich/dev/slinky/bin/stm32_slinky/apps/slinky/slinky.img\nBuild manifest: /Users/paulfdietrich/dev/slinky/bin/stm32_slinky/apps/slinky/manifest.json\n\n\n\n\n\n\n\nUsing newtmgr with a remote target\n\n\n\n\n\n\nFirst make sure the USB A-B type cable is connected to the ARM-USB-TINY-H debugger connector on the Olimex board. \n\n\nNext go the to project directory and download the slinky project image to the flash of the Olimex board. \n\n\n\n\n\n\n$ newt load stm32_bootloader\n$ newt load stm32_slinky\n\n\n\n\n\nYou can now disconnect the debugging cable from the board. You should see the green LED blinking. If not, try powercycling the board.\n\n\n\n\n\n\n\n\nNow you have to set up the serial connection from your computer to the Olimex board. Locate the PC6/USART6_TX (pin#3), PC7/USART6_RX (pin#4), and GND (pin#2) of the UEXT connector on the Olimex 
 board. More information on the UEXT connector can be found at \nhttps://www.olimex.com/Products/Modules/UEXT/\n. The schematic of the board can be found at \nhttps://www.olimex.com/Products/ARM/ST/STM32-E407/resources/STM32-E407_sch.pdf\n for reference.\n\n\n\n\n\n\nConnect the female RX pin of the USB-TTL serial cable to the TX of the UEXT connector on the board. \n\n\nConnect the female TX pin of the USB-TTL serial cable to the RX of the UEXT connector on the board. \n\n\nConnect the GND pin of the USB-TTL serial cable to the GND of the UEXT connector on the board.\n\n\n\n\n\n\n\n\n\n\n\n\nLocate the serial connection established in the /dev directory of your computer. It should be of the type \ntty.usbserial-\nsome identifier\n.\n\n\n\n\n        $ ls /dev/tty.usbserial-AJ03HAQQ \n        /dev/tty.usbserial-AJ03HAQQ\n\n\n\n\n\n\n\n\n\nYou now have to define a connection profile using newtmgr. You can give it any name you want. The example below shows the connection profile being n
 amed as the very imaginative \nolimex01\n.\n\n\n\n\n        $ pwd\n        /Users/\nuser\n/dev/larva/project/slinky\n        $ newtmgr conn add olimex01 type=serial connstring=/dev/tty.usbserial-AJ03HAQQ \n        Connection profile olimex01 successfully added\n        $ newtmgr conn show\n        Connection profiles: \n          sim1: type=serial, connstring=\n/dev/ttys007\n\n          olimex01: type=serial, connstring=\n/dev/tty.usbserial-AJ03HAQQ\n\n\n\n\n\n\n\n\n\n\nNow go ahead and query the Olimex board to get responses back. The simplest command is the \necho\n command to ask it to respond with the text you send it. \n\n\n\n\n    $ newtmgr echo -c olimex01 hello\n    {\nr\n: \nhello\n}\n    $ newtmgr image -c olimex01 list\n    Images:\n        0 : 1.2.3\n    $ newtmgr -c olimex01 taskstats\n    Return Code = 0\n      newtmgr (prio=4 tid=2 runtime=0 cswcnt=12 stksize=512 stkusage=255 last_checkin=0 next_checkin=0)\n      task1 (prio=1 tid=3 runtime=0 cswcnt=299 stksize=128 st
 kusage=33 last_checkin=0 next_checkin=0)\n      task2 (prio=2 tid=4 runtime=0 cswcnt=300 stksize=128 stkusage=31 last_checkin=0 next_checkin=0)\n      idle (prio=255 tid=0 runtime=299916 cswcnt=313 stksize=32 stkusage=18 last_checkin=0 next_checkin=0)\n      shell (prio=3 tid=1 runtime=1 cswcnt=20 stksize=384 stkusage=60 last_checkin=0 next_checkin=0)", 
+            "title": "Slinky on STM32 board"
         }, 
         {
-            "location": "/os/tutorials/project-target-slinky/#project-slinky", 
-            "text": "", 
-            "title": "Project Slinky"
-        }, 
-        {
-            "location": "/os/tutorials/project-target-slinky/#objective", 
-            "text": "The goal of the project is to enable and demonstrate remote communications with the Mynewt OS via newt manager (newtmgr). We will do this through a project with Mynewt called Slinky that runs on the STM32-E407 board.", 
-            "title": "Objective"
+            "location": "/os/tutorials/project-target-slinky/#project-slinky-using-stm32-board", 
+            "text": "The goal of the project is to enable and demonstrate remote communications with the Mynewt OS via newt manager (newtmgr) by leveraging a sample app \"Slinky\" included under the /apps directory in the repository. In this project we will define a target for the STM32-E407 board and assign the app \"Slinky\" to it.  If you have an existing project using a target that does not use the Slinky app and you wish to add newtmgt functonality to it, check out the tutorial titled  Enable newtmgr in any app .", 
+            "title": "Project Slinky using STM32 board"
         }, 
         {
             "location": "/os/tutorials/project-target-slinky/#what-you-need", 
@@ -1311,6 +1301,56 @@
             "title": "Using newtmgr with a remote target"
         }, 
         {
+            "location": "/os/tutorials/add_newtmgr/", 
+            "text": "Enabling Newt Manager (newtmgr) in a project\n\n\n\n\nThis tutorial explains how to add the newtmgr task to a project so that you can interact with your project over newtmgr.\n\n\n\n\nPre-Requisites\n\n\n\n\nEnsure you have installed \nnewt\n and that the \nnewt command is in your system path. \n\n\nEnsure that you have installed the newtmgr tool \nnewtmgr\n\n\nYou must have Internet connectivity to fetch remote Mynewt components.\n\n\nYou must \ninstall the compiler tools\n to \nsupport native compiling to build the project this tutorial creates.  \n\n\nYou must install the \nSegger JLINK package\n to load your project on the board.\n\n\nCable to establish a serial USB connection between the board and the laptop\n\n\n\n\n\n\nUse an existing project\n\n\nSince all we're doing is adding newtmgr capability to a project, we assume that you have worked through at least some of the other tutorials, and have an existing project.\nFor this example, we'll be modifying t
 he \nble_tiny\n project to enable newtmgr connectivity. We'll be calling our app myble as in that project as well. \nFeel free to use whatever project you'd like though.\n\n\nThe first thing you'll need to add is a new dependency for your app. In the repo for the bletiny app you'll need to add the following line to the pkg.yml file:\n\n\n - libs/newtmgr\n\n\n\n\n\nNow the application will know to pull in the newtmgr code.\n\n\n\n\nModify the source\n\n\nFirst, you'll need to include the newtmgr header file:\n\n\n#include \nnewtmgr/newtmgr.h\n\n\n\n\n\n\nNext, you'll need to declare a task for the newtmgr:\n\n\n#define NEWTMGR_TASK_PRIO (4)\n#define NEWTMGR_TASK_STACK_SIZE (OS_STACK_ALIGN(896))\nos_stack_t newtmgr_stack[NEWTMGR_TASK_STACK_SIZE];\n\n\n\n\n\nNext you'll scroll down (way down) to the \nmain()\n function and find the lines:\n\n\nrc = console_init(shell_console_rx_cb);\nassert(rc == 0);\n\n\n\n\n\nAfter those lines, add:\n\n\nnmgr_task_init(NEWTMGR_TASK_PRIO, newtmgr_stac
 k, NEWTMGR_TASK_STACK_SIZE);\n\n\n\n\n\nBuild targets\n\n\nThen build the two targets.\n\n\n$ newt build nrf52_boot\n\nsnip\n\nApp successfully built: ./bin/nrf52_boot/apps/boot/boot.elf\n$ newt build myble\nCompiling hci_common.c\nCompiling util.c\nArchiving nimble.a\nCompiling os.c\n\nsnip\n\n\n\n\n\n\n\n\nCreate the app image\n\n\nGenerate a signed application image for the \nmyble\n target. The version number is arbitrary.\n\n\n$ newt create-image myble 1.0.0\nApp image succesfully generated: ./bin/makerbeacon/apps/bletiny/bletiny.img\nBuild manifest: ./bin/makerbeacon/apps/bletiny/manifest.json\n\n\n\n\n\n\n\nLoad the image\n\n\nMake sure the USB connector is in place and the power LED on the board is lit. Use the Power ON/OFF switch to reset the board after loading the image.\n\n\n$ newt load nrf52_boot\n$ newt load myble\n\n\n\n\n\n\n\nSet up newtmgr connection\n\n\nNewtmgr reqwiures a connection profile in order to connect to your board. If you haven't yet, follow the \ninst
 ructions\n for setting up your connection profile.\n\n\n\n\nConnecting with your app\n\n\nOnce you have a connection profile set up, you can connect to your device with \nnewtmgr -c myconn \ncommand\n to run commands agains your app. \n\n\nTo test and make sure that newtmgr is working, try the echo command:\n\n\n# newtmgr -c myconn echo hello\n{\nr\n: \nhello\n}\n\n\n\n\n\nNewtmgr wraped the response in valid JSON notation. Now let's look at some BLE stats using newtmgr:\n\n\nnewtmgr -c myconn stat ble_att\nReturn Code = 0\nStats Name: ble_att\n  prep_write_req_tx: 0\n  indicate_req_tx: 0\n  write_rsp_tx: 0\n  find_info_req_tx: 0\n  read_rsp_rx: 0\n  read_group_type_rsp_tx: 0\n  indicate_req_rx: 0\n  find_type_value_rsp_tx: 0\n  read_mult_rsp_tx: 0\n  exec_write_req_rx: 0\n  exec_write_rsp_tx: 0\n  error_rsp_tx: 0\n  find_type_value_rsp_rx: 0\n  read_type_req_tx: 0\n  read_type_rsp_rx: 0\n  read_rsp_tx: 0\n  read_blob_req_tx: 0\n  mtu_req_tx: 0\n  read_req_tx: 0\n  read_blob_rsp_tx:
  0\n  read_mult_req_rx: 0\n  write_req_tx: 0\n  prep_write_rsp_tx: 0\n  indicate_rsp_rx: 0\n  write_cmd_rx: 0\n  exec_write_rsp_rx: 0\n  find_info_req_rx: 0\n  mtu_rsp_rx: 0\n  prep_write_req_rx: 0\n  notify_req_rx: 0\n  read_group_type_rsp_rx: 0\n  prep_write_rsp_rx: 0\n  indicate_rsp_tx: 0\n  find_info_rsp_tx: 0\n  read_blob_req_rx: 0\n  read_group_type_req_rx: 0\n  write_cmd_tx: 0\n  mtu_req_rx: 0\n  read_mult_rsp_rx: 0\n  write_rsp_rx: 0\n  write_req_rx: 0\n  read_type_rsp_tx: 0\n  read_mult_req_tx: 0\n  error_rsp_rx: 0\n  find_info_rsp_rx: 0\n  find_type_value_req_tx: 0\n  read_req_rx: 0\n  read_type_req_rx: 0\n  notify_req_tx: 0\n  mtu_rsp_tx: 0\n  find_type_value_req_rx: 0\n  read_blob_rsp_rx: 0\n  read_group_type_req_tx: 0\n  exec_write_req_tx: 0\n\n\n\n\n\nYour application is now able to communicate via newtmgr!", 
+            "title": "Enable newtmgr in any app"
+        }, 
+        {
+            "location": "/os/tutorials/add_newtmgr/#enabling-newt-manager-newtmgr-in-a-project", 
+            "text": "This tutorial explains how to add the newtmgr task to a project so that you can interact with your project over newtmgr.", 
+            "title": "Enabling Newt Manager (newtmgr) in a project"
+        }, 
+        {
+            "location": "/os/tutorials/add_newtmgr/#pre-requisites", 
+            "text": "Ensure you have installed  newt  and that the \nnewt command is in your system path.   Ensure that you have installed the newtmgr tool  newtmgr  You must have Internet connectivity to fetch remote Mynewt components.  You must  install the compiler tools  to \nsupport native compiling to build the project this tutorial creates.    You must install the  Segger JLINK package  to load your project on the board.  Cable to establish a serial USB connection between the board and the laptop", 
+            "title": "Pre-Requisites"
+        }, 
+        {
+            "location": "/os/tutorials/add_newtmgr/#use-an-existing-project", 
+            "text": "Since all we're doing is adding newtmgr capability to a project, we assume that you have worked through at least some of the other tutorials, and have an existing project.\nFor this example, we'll be modifying the  ble_tiny  project to enable newtmgr connectivity. We'll be calling our app myble as in that project as well. \nFeel free to use whatever project you'd like though.  The first thing you'll need to add is a new dependency for your app. In the repo for the bletiny app you'll need to add the following line to the pkg.yml file:   - libs/newtmgr  Now the application will know to pull in the newtmgr code.", 
+            "title": "Use an existing project"
+        }, 
+        {
+            "location": "/os/tutorials/add_newtmgr/#modify-the-source", 
+            "text": "First, you'll need to include the newtmgr header file:  #include  newtmgr/newtmgr.h   Next, you'll need to declare a task for the newtmgr:  #define NEWTMGR_TASK_PRIO (4)\n#define NEWTMGR_TASK_STACK_SIZE (OS_STACK_ALIGN(896))\nos_stack_t newtmgr_stack[NEWTMGR_TASK_STACK_SIZE];  Next you'll scroll down (way down) to the  main()  function and find the lines:  rc = console_init(shell_console_rx_cb);\nassert(rc == 0);  After those lines, add:  nmgr_task_init(NEWTMGR_TASK_PRIO, newtmgr_stack, NEWTMGR_TASK_STACK_SIZE);", 
+            "title": "Modify the source"
+        }, 
+        {
+            "location": "/os/tutorials/add_newtmgr/#build-targets", 
+            "text": "Then build the two targets.  $ newt build nrf52_boot snip \nApp successfully built: ./bin/nrf52_boot/apps/boot/boot.elf\n$ newt build myble\nCompiling hci_common.c\nCompiling util.c\nArchiving nimble.a\nCompiling os.c snip", 
+            "title": "Build targets"
+        }, 
+        {
+            "location": "/os/tutorials/add_newtmgr/#create-the-app-image", 
+            "text": "Generate a signed application image for the  myble  target. The version number is arbitrary.  $ newt create-image myble 1.0.0\nApp image succesfully generated: ./bin/makerbeacon/apps/bletiny/bletiny.img\nBuild manifest: ./bin/makerbeacon/apps/bletiny/manifest.json", 
+            "title": "Create the app image"
+        }, 
+        {
+            "location": "/os/tutorials/add_newtmgr/#load-the-image", 
+            "text": "Make sure the USB connector is in place and the power LED on the board is lit. Use the Power ON/OFF switch to reset the board after loading the image.  $ newt load nrf52_boot\n$ newt load myble", 
+            "title": "Load the image"
+        }, 
+        {
+            "location": "/os/tutorials/add_newtmgr/#set-up-newtmgr-connection", 
+            "text": "Newtmgr reqwiures a connection profile in order to connect to your board. If you haven't yet, follow the  instructions  for setting up your connection profile.", 
+            "title": "Set up newtmgr connection"
+        }, 
+        {
+            "location": "/os/tutorials/add_newtmgr/#connecting-with-your-app", 
+            "text": "Once you have a connection profile set up, you can connect to your device with  newtmgr -c myconn  command  to run commands agains your app.   To test and make sure that newtmgr is working, try the echo command:  # newtmgr -c myconn echo hello\n{ r :  hello }  Newtmgr wraped the response in valid JSON notation. Now let's look at some BLE stats using newtmgr:  newtmgr -c myconn stat ble_att\nReturn Code = 0\nStats Name: ble_att\n  prep_write_req_tx: 0\n  indicate_req_tx: 0\n  write_rsp_tx: 0\n  find_info_req_tx: 0\n  read_rsp_rx: 0\n  read_group_type_rsp_tx: 0\n  indicate_req_rx: 0\n  find_type_value_rsp_tx: 0\n  read_mult_rsp_tx: 0\n  exec_write_req_rx: 0\n  exec_write_rsp_tx: 0\n  error_rsp_tx: 0\n  find_type_value_rsp_rx: 0\n  read_type_req_tx: 0\n  read_type_rsp_rx: 0\n  read_rsp_tx: 0\n  read_blob_req_tx: 0\n  mtu_req_tx: 0\n  read_req_tx: 0\n  read_blob_rsp_tx: 0\n  read_mult_req_rx: 0\n  write_req_tx: 0\n  prep_write_rsp_tx: 0\n  indicate_rsp_rx: 0\n  writ
 e_cmd_rx: 0\n  exec_write_rsp_rx: 0\n  find_info_req_rx: 0\n  mtu_rsp_rx: 0\n  prep_write_req_rx: 0\n  notify_req_rx: 0\n  read_group_type_rsp_rx: 0\n  prep_write_rsp_rx: 0\n  indicate_rsp_tx: 0\n  find_info_rsp_tx: 0\n  read_blob_req_rx: 0\n  read_group_type_req_rx: 0\n  write_cmd_tx: 0\n  mtu_req_rx: 0\n  read_mult_rsp_rx: 0\n  write_rsp_rx: 0\n  write_req_rx: 0\n  read_type_rsp_tx: 0\n  read_mult_req_tx: 0\n  error_rsp_rx: 0\n  find_info_rsp_rx: 0\n  find_type_value_req_tx: 0\n  read_req_rx: 0\n  read_type_req_rx: 0\n  notify_req_tx: 0\n  mtu_rsp_tx: 0\n  find_type_value_req_rx: 0\n  read_blob_rsp_rx: 0\n  read_group_type_req_tx: 0\n  exec_write_req_tx: 0  Your application is now able to communicate via newtmgr!", 
+            "title": "Connecting with your app"
+        }, 
+        {
             "location": "/os/tutorials/bletiny_project/", 
             "text": "Check stats on a BLE device\n\n\n\n\nThis tutorial explains how to run an example BLE app on a board and command it to scan and spew some stats. The stats will be seen over a serial port, not a BLE wireless connection.\n\n\n\n\nPre-Requisites\n\n\n\n\nEnsure you have installed \nnewt\n and that the \nnewt command is in your system path. \n\n\nYou must have Internet connectivity to fetch remote Mynewt components.\n\n\nYou must \ninstall the compiler tools\n to \nsupport native compiling to build the project this tutorial creates.  \n\n\nYou must install the \nSegger JLINK package\n to load your project on the board.\n\n\nYou have a board with BLE radio that is supported by Mynewt. We will use an nRF52 Dev board in this tutorial.\n\n\nCable to establish a serial USB connection between the board and the laptop\n\n\n\n\n\n\nCreate a project\n\n\nUse the Newt tool to create a new project directory containing a skeletal Mynewt framework. Change into the newly created 
 directory.\n\n\n$ newt new myapp1\nDownloading project skeleton from apache/incubator-mynewt-blinky...\nInstalling skeleton in myapp1...\nProject myapp1 successfully created.\n$ cd myapp1\n\n$ newt install -v \napache-mynewt-core\nDownloading repository description for apache-mynewt-core... success!\n...\napache-mynewt-core successfully installed version 0.7.9-none\n\n\n\n\n\n\n\nCreate targets\n\n\nYou will create two targets - one for the bootloader, the other for the application.\n\n\n$ newt target create myble\nTarget targets/myble successfully created\n$ newt target create nrf52_boot\nTarget targets/myble successfully created\n$ newt target show\ntargets/my_blinky_sim\n    app=apps/blinky\n    bsp=@apache-mynewt-core/hw/bsp/native\n    build_profile=debug\ntargets/myble\ntargets/nrf52_boot\n\n\n\n\n\n\n\nDefine the targets further. Note that you are using the example app \nbletiny\n for the application target. Set the bsp correctly (nrf52pdk or nrf52dk depending on whether the 
 board is the preview kit or the dev kit, respectively. Look on the top of your board, if you see PCA100040, use the nrf52dk version, otherwide use the nrf52pdk version). \n\n\n$ newt target set myble bsp=@apache-mynewt-core/hw/bsp/nrf52pdk\nTarget targets/myble successfully set target.bsp to @apache-mynewt-core/hw/bsp/nrf52pdk\n$ newt target set myble app=@apache-mynewt-core/apps/bletiny\nTarget targets/myble successfully set target.app to @apache-mynewt-core/apps/bletiny\n$ newt target set myble build_profile=optimized\nTarget targets/myble successfully set target.build_profile to optimized\n$ newt target set myble cflags=-DSTATS_NAME_ENABLE\nTarget targets/myble successfully set pkg.cflags to DSTATS_NAME_ENABLE\n\n\n\n\n\nUse the same \nnewt target set\n command to set the following definition for the bootloader target -- again, make sure you use the correct value for the bsp based on which version of the board you have..\n\n\ntargets/nrf52_boot\n    app=@apache-mynewt-core/apps/b
 oot\n    bsp=@apache-mynewt-core/hw/bsp/nrf52pdk\n    build_profile=optimized\n\n\n\n\n\nYou should have the following targets by the end of this step.\n\n\n$ newt target show\ntargets/my_blinky_sim\n    app=apps/blinky\n    bsp=@apache-mynewt-core/hw/bsp/native\n    build_profile=debug\ntargets/myble\n    app=@apache-mynewt-core/apps/bletiny\n    bsp=@apache-mynewt-core/hw/bsp/nrf52pdk\n    build_profile=optimized\n    cflags=-DSTATS_NAME_ENABLE \ntargets/nrf52_boot\n    app=@apache-mynewt-core/apps/boot\n    bsp=@apache-mynewt-core/hw/bsp/nrf52pdk\n    build_profile=optimized\n\n\n\n\n\nBuild targets\n\n\nThen build the two targets.\n\n\n$ newt build nrf52_boot\n\nsnip\n\nApp successfully built: ./bin/nrf52_boot/apps/boot/boot.elf\n$ newt build myble\nCompiling hci_common.c\nCompiling util.c\nArchiving nimble.a\nCompiling os.c\n\nsnip\n\n\n\n\n\n\n\n\nCreate the app image\n\n\nGenerate a signed application image for the \nmyble\n target. The version number is arbitrary.\n\n\n$ new
 t create-image myble 1.0.0\nApp image succesfully generated: ./bin/makerbeacon/apps/bletiny/bletiny.img\nBuild manifest: ./bin/makerbeacon/apps/bletiny/manifest.json\n\n\n\n\n\n\n\nLoad the image\n\n\nMake sure the USB connector is in place and the power LED on the board is lit. Use the Power ON/OFF switch to reset the board after loading the image.\n\n\n$ newt load nrf52_boot\n$ newt load myble\n\n\n\n\n\n\n\nEstablish serial connection\n\n\nYou will now look for some BLE related stats over a serial connection and see the radio is actually working. The picture below shows a serial connector set up. Pin PA.08 is RX and pin PA.06 is TX. Make sure TX from the NRF52 goes to RX on your Serial board, and that RX on the NRF52 goes to TX on your Serial Board.\n\n\n\n\n\n\nYou may use any terminal emulation program to communicate with the board. This tutorial shows a Minicom set up. You will have to find out what the usbserial port number is on your laptop, of course.\n\n\n$ minicom -D /dev
 /tty.usbserial-AJ03HAQQ\n\n\n\n\n\n\n\nWhen the Minicom screen comes up, type in \n?\n\n\nWelcome to minicom 2.7\n\nOPTIONS: \nCompiled on Nov 24 2015, 16:14:21.\nPort /dev/tty.usbserial-AJ03HAQQ, 09:57:17\n\nPress Meta-Z for help on special keys\n\n\n?\n\n4828455:log     echo    ?       tasks   mempools        date \n4828457:stat    b \n\n\n\n\n\n\n\nTry the \nstat\n command. \n\n\nstat\n\n4973017:Must specify a statistic name to dump, possible names are:\n4973021:        stat\n4973022:        ble_l2cap\n4973024:        ble_att\n4973026:        ble_gap\n4973027:        ble_gattc\n4973029:        ble_gatts\n4973031:        ble_hs\n4973032:        ble_ll_conn\n4973034:        ble_ll\n\n\n\n\n\n\n\nTry specifying a BLE related stat, for example \nble_ll\n. You should see some HCI (Host Controller Interface) command counts. \n\n\nstat ble_ll\n\n4986297:hci_cmds: 5\n4986297:hci_cmd_errs: 0\n4986299:hci_events_sent: 5\n4986301:bad_ll_state: 0\n4986303:bad_acl_hdr: 0\n4986306:rx_adv_pdu_c
 rc_ok: 0\n4986308:rx_adv_pdu_crc_err: 0\n4986311:rx_adv_bytes_crc_ok: 0\n4986314:rx_adv_bytes_crc_err: 0\n4986317:rx_data_pdu_crc_ok: 0\n4986319:rx_data_pdu_crc_err: 0\n4986322:rx_data_bytes_crc_ok: 0\n\nsnip\n\n\n\n\n\n\n\n\nFor a more exciting output, try scanning your surroundings for BLE adverstisements. The HCI command shown below specifies a scan duration in ms, sets discovery mode to general (as opposed to limited), the filter to no-whitelist, and type of scan to passive. You should see some scan data flying by!\n\n\nb scan dur=10000 disc=gen filt=no_wl type=passive\n\n\n5301227:[ts=5301227ssb, mod=4 level=1] host_hci_cmd_send: ogf=0x08 ocf=0x0b len=7\n5301233:[ts=5301233ssb, mod=4 level=1] Command Complete: cmd_pkts=1 ogf=0x8 ocf=0xb status=0\n5301241:[ts=5301241ssb, mod=4 level=1] host_hci_cmd_send: ogf=0x08 ocf=0x0c len=2\n5301248:[ts=5301248ssb, mod=4 level=1] Command Complete: cmd_pkts=1 ogf=0x8 ocf=0xc status=0\nGAP procedure initiated: discovery; disc_mode=2 filter_pol
 icyLE advertising report. len=38 num=1 evtype=3 addr9\n5301270:[ts=5301270ssb, mod=4 level=1] 02 01 06 03 03 aa fe 12 \n5301276:[ts=5301276ssb, mod=4 level=1] 16 aa fe 10 f6 02 67 2e \n5301281:[ts=5301281ssb, mod=4 level=1] 63 6f 2f 62 65 61 63 6f \n5301287:[ts=5301287ssb, mod=4 level=1] 6e 73 \n5301291:[ts=5301291ssb, mod=64 level=2] received advertisement; event_type=3 addr_type=1 addr=0xa0:0x0d:0xec:0:\n5301316:[ts=5301316ssb, mod=64 level=2]     flags=0x06\n5301321:[ts=5301321ssb, mod=64 level=2]     uuids16(complete)=0xfeaa \n5301327:[ts=5301327ssb, mod=64 level=2]     svc_data_uuid16=\n\nsnip\n\n\n\n\n\n\n\n\nIf you're still not seeing any output from the device, try running the debugger and see if you are seeing the program execute properly. \n\n\n\n\n$ newt debug myble\nDebugging ./bin/myble/apps/bletiny/bletiny.elf\nGNU gdb (GNU Tools for ARM Embedded Processors) 7.6.0.20140731-cvs\nCopyright (C) 2013 Free Software Foundation, Inc.\n\nLicense GPLv3+: GNU GPL version 3 or la
 ter \nhttp://gnu.org/licenses/gpl.html\n\nThis is free software: you are free to change and redistribute it.\nThere is NO WARRANTY, to the extent permitted by law.  Type \nshow copying\n\nand \nshow warranty\n for details.\nThis GDB was configured as \n--host=x86_64-apple-darwin10 --target=arm-none-eabi\n.\nFor bug reporting instructions, please see:\n\nhttp://www.gnu.org/software/gdb/bugs/\n...\nReading symbols from ./bin/myble/apps/bletiny/bletiny.elf...done.\n0x00002f08 in ?? ()\n(gdb) monitor reset\nResetting target\n(gdb) c\nContinuing.\n^C\nProgram received signal SIGTRAP, Trace/breakpoint trap.\nos_tick_idle (ticks=1000) at hal_os_tick.c:117\n117     if (ticks \n 0) {\n(gdb) p g_os_time\n$1 = 37991\n(gdb) c\nContinuing.\n^C\nProgram received signal SIGTRAP, Trace/breakpoint trap.\nos_tick_idle (ticks=1000) at hal_os_tick.c:117\n117     if (ticks \n 0) {\n(gdb) p g_os_time\n$2 = 51888\n(gdb) c\nContinuing.\n\n\n\n\n\n\n\nYou should see the g_os_time advancing as above, as each
  os time tick is 1ms. If the system ticks aren't advancing, then nothing's actually running.", 
             "title": "BLE app to check stats via console"

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/5344d177/develop/os/tutorials/STM32F303/index.html
----------------------------------------------------------------------
diff --git a/develop/os/tutorials/STM32F303/index.html b/develop/os/tutorials/STM32F303/index.html
index a163f54..5a6d2c3 100644
--- a/develop/os/tutorials/STM32F303/index.html
+++ b/develop/os/tutorials/STM32F303/index.html
@@ -336,8 +336,13 @@
           
               
                 
-    <li >
-      <a href="../project-slinky/">Enable remote comms on sim device</a>
+  
+  
+    <li><a href="
+  ../project-slinky/
+">Project Slinky for remote comms</a>
+  
+  
     </li>
 
               
@@ -345,7 +350,7 @@
               
                 
     <li >
-      <a href="../project-target-slinky/">Enable remote comms on STM32 board</a>
+      <a href="../add_newtmgr/">Enable newtmgr in any app</a>
     </li>
 
               

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/5344d177/develop/os/tutorials/add_newtmgr/index.html
----------------------------------------------------------------------
diff --git a/develop/os/tutorials/add_newtmgr/index.html b/develop/os/tutorials/add_newtmgr/index.html
new file mode 100644
index 0000000..216e752
--- /dev/null
+++ b/develop/os/tutorials/add_newtmgr/index.html
@@ -0,0 +1,650 @@
+<!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">
+        
+        
+        <link rel="canonical" href="http://mynewt.apache.org/os/tutorials/add_newtmgr/">
+        <link rel="shortcut icon" href="../../../img/favicon.ico">
+
+	<title>Enable newtmgr in any app - Apache Mynewt</title>
+
+        <link href="../../../css/bootstrap-3.0.3.min.css" rel="stylesheet">
+        <link href="../../../css/font-awesome-4.0.3.css" rel="stylesheet">
+        <link rel="stylesheet" href="../../../css/highlight.css">
+        <link href="../../../css/base.css" rel="stylesheet">
+        <link href="../../../css/custom.css" rel="stylesheet">
+        <link href="../../../css/v2.css" rel="stylesheet">
+        <link href='https://fonts.googleapis.com/css?family=Roboto:400,500,700,900,300,100' rel='stylesheet' type='text/css'>
+        <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css">
+        <link href="../../../extra.css" rel="stylesheet">
+
+        <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+        <!--[if lt IE 9]>
+            <script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
+            <script src="https://oss.maxcdn.com/libs/respond.js/1.3.0/respond.min.js"></script>
+        <![endif]-->
+
+        
+            <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="Enable newtmgr in any app">
+
+
+        
+
+
+
+
+
+
+<nav id="navbar" class="navbar navbar-inverse navbar-fixed-top" 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 
+  class=""
+>
+                    <a href="/">Home</a>
+                </li>
+                <li 
+  class="important"
+>
+                    <a href="/quick-start/">Quick Start</a>
+                </li>
+                <li 
+  class=""
+>
+                    <a href="/about/">About</a>
+                </li>
+                <li 
+  class="active"
+>
+                    <a href="/latest/os/introduction">Documentation</a>
+                </li>
+                <li 
+  class=""
+>
+                    <a href="/download/">Download</a>
+                </li>
+                <li 
+  class=""
+>
+                    <a href="/community/">Community</a>
+                </li>
+                <li 
+  class=""
+>
+                    <a href="/events/">Events</a>
+                </li>
+            </ul>
+
+            <!-- Search, Navigation and Repo links -->
+            <ul class="nav navbar-nav navbar-right">
+                
+            </ul>
+        </div>
+    </div>
+</nav>
+
+        
+
+        <div class="container">
+            
+                <div class="row">
+                    <div class="col-md-3 v2-sidebar"><div id="docSidebar" class="hidden-print" role="complementary">
+    <div class="top">
+        <img class="hidden-xs hidden-sm logo-small" src="/img/logo.svg" alt="MyNewt" title="MyNewt">
+        <div role="search">
+            <form id="rtd-search-form" class="wy-form" action="../../../search.html" method="get">
+                <div class="form-group">
+                    <input type="text" name="q" class="form-control" placeholder="Search documentation" />
+                </div>
+            </form>
+        </div>
+    </div>
+    <ul class="toc-nav">
+      <li class="doc-version">
+<select class="form-control" onchange="if (this.value) window.location.href=this.value">
+    
+    <option
+      value="/develop/os/introduction"
+      selected="selected"
+    >
+      Version: develop
+    </option>
+    
+    <option
+      value="/v0_9_0/os/introduction"
+      
+    >
+      Version: 0.9.0 (latest)
+    </option>
+    
+</select>
+</li>
+      
+        
+      
+        
+      
+        
+      
+        
+      
+        
+      
+        
+      
+        
+          
+  
+  
+    <li ><a href="../../introduction/">Mynewt Documentation</a>
+  
+  
+    <ul>
+          
+              
+          
+              
+                
+  
+  
+    <li ><a href="../../get_started/get_started/">Basic Setup</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+    <li >
+      <a href="../../get_started/vocabulary/">Concepts</a>
+    </li>
+
+              
+          
+              
+                
+  
+  
+    <li ><a href="../tutorials/">Tutorials</a>
+  
+  
+    <ul>
+          
+              
+          
+              
+                
+  
+  
+    <li><a href="
+  ../arduino_zero/
+">Project Blinky</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
+    <li ><a href="../repo/add_repos/">Work with repositories</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
+    <li><a href="
+  ../tasks_lesson/
+">A Sample Lesson</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+    <li >
+      <a href="../unit_test/">Write a Test Suite for a Package</a>
+    </li>
+
+              
+          
+              
+                
+    <li >
+      <a href="../air_quality_sensor/">Air-quality Sensor project</a>
+    </li>
+
+              
+          
+              
+                
+    <li >
+      <a href="../event_queue/">Add task to manage multiple events</a>
+    </li>
+
+              
+          
+              
+                
+  
+  
+    <li><a href="
+  ../project-slinky/
+">Project Slinky for remote comms</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+    <li class="active">
+      <a href="./">Enable newtmgr in any app</a>
+    </li>
+
+              
+          
+              
+                
+    <li >
+      <a href="../bletiny_project/">BLE app to check stats via console</a>
+    </li>
+
+              
+          
+              
+                
+  
+  
+    <li ><a href="../bleprph/bleprph-intro/">BLE peripheral project</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+    <li >
+      <a href="../ibeacon/">BLE iBeacon</a>
+    </li>
+
+              
+          
+              
+                
+    <li >
+      <a href="../blehci_project/">BLE HCI interface</a>
+    </li>
+
+              
+          
+    </ul>
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
+    <li ><a href="../../os_user_guide/">OS User Guide</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
+    <li><a href="
+  ../../../network/ble/ble_intro/
+">BLE User Guide</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
+    <li ><a href="../../../newt/newt_intro/">Newt Tool Guide</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
+    <li ><a href="../../../newtmgr/overview/">Newt Manager Guide</a>
+  
+  
+    </li>
+
+              
+          
+    </ul>
+  
+    </li>
+
+        
+      
+        
+          
+  
+  
+    <li><a href="
+  ../../../faq/how_to_edit_docs/
+">Appendix</a>
+  
+  
+    </li>
+
+        
+      
+    </ul>
+</div></div>
+
+                    <div class="show-sidebar-container">
+                        <button class="show-sidebar">Docs Menu</button>
+                    </div>
+
+                    <div class="col-md-9" role="main">
+                        <div class="row doc-header">
+                            <div class="col-sm-12">
+                                <div role="navigation" aria-label="breadcrumbs navigation">
+  <ul class="wy-breadcrumbs pull-right">
+    <li><a href="/develop/os/introduction">Docs</a></li>
+    
+    
+        
+          <li>&raquo; <a href="../../introduction/">Mynewt Documentation</a></li>
+        
+      
+        
+          <li>&raquo; <a href="../tutorials/">Tutorials</a></li>
+        
+      
+      
+        <li>&raquo; Enable newtmgr in any app</li>
+      
+    
+    
+  </ul>
+</div>
+                            </div>
+                        </div>
+                        
+                            <h2 id="enabling-newt-manager-newtmgr-in-a-project">Enabling Newt Manager (newtmgr) in a project</h2>
+<p><br></p>
+<p>This tutorial explains how to add the newtmgr task to a project so that you can interact with your project over newtmgr.</p>
+<p><br></p>
+<h3 id="pre-requisites">Pre-Requisites</h3>
+<ul>
+<li>Ensure you have installed <a href="../../../newt/install/newt_mac/">newt</a> and that the 
+newt command is in your system path. </li>
+<li>Ensure that you have installed the newtmgr tool <a href="../../../newtmgr/installing/">newtmgr</a></li>
+<li>You must have Internet connectivity to fetch remote Mynewt components.</li>
+<li>You must <a href="../../get_started/native_tools/">install the compiler tools</a> to 
+support native compiling to build the project this tutorial creates.  </li>
+<li>You must install the <a href="https://www.segger.com/jlink-software.html">Segger JLINK package</a> to load your project on the board.</li>
+<li>Cable to establish a serial USB connection between the board and the laptop</li>
+</ul>
+<p><br></p>
+<h3 id="use-an-existing-project">Use an existing project</h3>
+<p>Since all we're doing is adding newtmgr capability to a project, we assume that you have worked through at least some of the other tutorials, and have an existing project.
+For this example, we'll be modifying the <a href="../bletiny_project/">ble_tiny</a> project to enable newtmgr connectivity. We'll be calling our app myble as in that project as well. 
+Feel free to use whatever project you'd like though.</p>
+<p>The first thing you'll need to add is a new dependency for your app. In the repo for the bletiny app you'll need to add the following line to the pkg.yml file:</p>
+<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%"> - libs/newtmgr
+</pre></div>
+
+
+<p>Now the application will know to pull in the newtmgr code.</p>
+<p><br></p>
+<h3 id="modify-the-source">Modify the source</h3>
+<p>First, you'll need to include the newtmgr header file:</p>
+<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%">#include &lt;newtmgr/newtmgr.h&gt;
+</pre></div>
+
+
+<p>Next, you'll need to declare a task for the newtmgr:</p>
+<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%">#define NEWTMGR_TASK_PRIO (4)
+#define NEWTMGR_TASK_STACK_SIZE (OS_STACK_ALIGN(896))
+os_stack_t newtmgr_stack[NEWTMGR_TASK_STACK_SIZE];
+</pre></div>
+
+
+<p>Next you'll scroll down (way down) to the <code>main()</code> function and find the lines:</p>
+<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%">rc = console_init(shell_console_rx_cb);
+assert(rc == 0);
+</pre></div>
+
+
+<p>After those lines, add:</p>
+<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%">nmgr_task_init(NEWTMGR_TASK_PRIO, newtmgr_stack, NEWTMGR_TASK_STACK_SIZE);
+</pre></div>
+
+
+<h3 id="build-targets">Build targets</h3>
+<p>Then build the two targets.</p>
+<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%">$ newt build nrf52_boot
+&lt;snip&gt;
+App successfully built: ./bin/nrf52_boot/apps/boot/boot.elf
+$ newt build myble
+Compiling hci_common.c
+Compiling util.c
+Archiving nimble.a
+Compiling os.c
+&lt;snip&gt;
+</pre></div>
+
+
+<p><br></p>
+<h3 id="create-the-app-image">Create the app image</h3>
+<p>Generate a signed application image for the <code>myble</code> target. The version number is arbitrary.</p>
+<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%">$ newt create-image myble 1.0.0
+App image succesfully generated: ./bin/makerbeacon/apps/bletiny/bletiny.img
+Build manifest: ./bin/makerbeacon/apps/bletiny/manifest.json
+</pre></div>
+
+
+<p><br></p>
+<h3 id="load-the-image">Load the image</h3>
+<p>Make sure the USB connector is in place and the power LED on the board is lit. Use the Power ON/OFF switch to reset the board after loading the image.</p>
+<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%">$ newt load nrf52_boot
+$ newt load myble
+</pre></div>
+
+
+<p><br></p>
+<h3 id="set-up-newtmgr-connection">Set up newtmgr connection</h3>
+<p>Newtmgr reqwiures a connection profile in order to connect to your board. If you haven't yet, follow the <a href="../../../newtmgr/overview/">instructions</a> for setting up your connection profile.</p>
+<p><br></p>
+<h3 id="connecting-with-your-app">Connecting with your app</h3>
+<p>Once you have a connection profile set up, you can connect to your device with <code>newtmgr -c myconn &lt;command&gt;</code> to run commands agains your app. </p>
+<p>To test and make sure that newtmgr is working, try the echo command:</p>
+<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%"># newtmgr -c myconn echo hello
+{&quot;r&quot;: &quot;hello&quot;}
+</pre></div>
+
+
+<p>Newtmgr wraped the response in valid JSON notation. Now let's look at some BLE stats using newtmgr:</p>
+<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%">newtmgr -c myconn stat ble_att
+Return Code = 0
+Stats Name: ble_att
+  prep_write_req_tx: 0
+  indicate_req_tx: 0
+  write_rsp_tx: 0
+  find_info_req_tx: 0
+  read_rsp_rx: 0
+  read_group_type_rsp_tx: 0
+  indicate_req_rx: 0
+  find_type_value_rsp_tx: 0
+  read_mult_rsp_tx: 0
+  exec_write_req_rx: 0
+  exec_write_rsp_tx: 0
+  error_rsp_tx: 0
+  find_type_value_rsp_rx: 0
+  read_type_req_tx: 0
+  read_type_rsp_rx: 0
+  read_rsp_tx: 0
+  read_blob_req_tx: 0
+  mtu_req_tx: 0
+  read_req_tx: 0
+  read_blob_rsp_tx: 0
+  read_mult_req_rx: 0
+  write_req_tx: 0
+  prep_write_rsp_tx: 0
+  indicate_rsp_rx: 0
+  write_cmd_rx: 0
+  exec_write_rsp_rx: 0
+  find_info_req_rx: 0
+  mtu_rsp_rx: 0
+  prep_write_req_rx: 0
+  notify_req_rx: 0
+  read_group_type_rsp_rx: 0
+  prep_write_rsp_rx: 0
+  indicate_rsp_tx: 0
+  find_info_rsp_tx: 0
+  read_blob_req_rx: 0
+  read_group_type_req_rx: 0
+  write_cmd_tx: 0
+  mtu_req_rx: 0
+  read_mult_rsp_rx: 0
+  write_rsp_rx: 0
+  write_req_rx: 0
+  read_type_rsp_tx: 0
+  read_mult_req_tx: 0
+  error_rsp_rx: 0
+  find_info_rsp_rx: 0
+  find_type_value_req_tx: 0
+  read_req_rx: 0
+  read_type_req_rx: 0
+  notify_req_tx: 0
+  mtu_rsp_tx: 0
+  find_type_value_req_rx: 0
+  read_blob_rsp_rx: 0
+  read_group_type_req_tx: 0
+  exec_write_req_tx: 0
+</pre></div>
+
+
+<p>Your application is now able to communicate via newtmgr!</p>
+                        
+                        <div class="row">
+                            
+
+
+
+<ul class="nav nav-pills" style="margin-bottom: 10px">
+    <li>
+    
+    <a href=../project-target-slinky/>
+        <span class="fa fa-arrow-left"></span>
+        Previous: Slinky on STM32 board
+    </a>
+    
+    </li>
+    <li class="pull-right">
+    
+    <a href=../bletiny_project/>
+        Next: BLE app to check stats via console
+        <span class="fa fa-arrow-right"></span>
+    </a>
+    
+    </li>
+</ul>
+                        </div>
+                        <div class="row">
+                            <footer>
+    <div class="row">
+        <div class="col-md-12">
+            
+                <p class="copyright">Copyright &copy; 2015 The Apache Software Foundation, Licensed under the Apache License, Version 2.0 Apache and the Apache feather logo are trademarks of The Apache Software Foundation.<br>The Apache Software Foundation Apache Incubator</p>
+            
+        </div>
+    </div>
+    <div class="copyright-logos">
+        <div class="row">
+            <div class="col-xs-6 text-right">
+                <img src="/img/apache-feather.png" alt="Apache" title="Apache">
+            </div>
+            <div class="col-xs-6 text-left">
+                <img src="/img/apache-logo.png" alt="Apache Incubator" title="Apache Incubator">
+            </div>
+        </div>
+    </div>
+    <div class="row">
+        <div class="col-md-12">
+            <small class="footnote">
+                MyNewt is an effort undergoing incubation at The Apache Software Foundation (ASF), sponsored by the Apache Incubator. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.
+            </small>
+        </div>
+    </div>
+</footer>
+                        </div>
+                    </div>
+                </div>
+            
+            
+        </div>
+
+        <script src="../../../js/jquery-1.10.2.min.js"></script>
+        <script src="../../../js/bootstrap-3.0.3.min.js"></script>
+        <script src="../../../js/highlight.pack.js"></script>
+        <script src="../../../js/base.js"></script>
+        <script src="../../../js/custom.js"></script>
+
+    </body>
+</html>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/5344d177/develop/os/tutorials/air_quality_sensor/index.html
----------------------------------------------------------------------
diff --git a/develop/os/tutorials/air_quality_sensor/index.html b/develop/os/tutorials/air_quality_sensor/index.html
index f92ed6d..286ffd0 100644
--- a/develop/os/tutorials/air_quality_sensor/index.html
+++ b/develop/os/tutorials/air_quality_sensor/index.html
@@ -267,8 +267,13 @@
           
               
                 
-    <li >
-      <a href="../project-slinky/">Enable remote comms on sim device</a>
+  
+  
+    <li><a href="
+  ../project-slinky/
+">Project Slinky for remote comms</a>
+  
+  
     </li>
 
               
@@ -276,7 +281,7 @@
               
                 
     <li >
-      <a href="../project-target-slinky/">Enable remote comms on STM32 board</a>
+      <a href="../add_newtmgr/">Enable newtmgr in any app</a>
     </li>
 
               

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/5344d177/develop/os/tutorials/arduino_zero/index.html
----------------------------------------------------------------------
diff --git a/develop/os/tutorials/arduino_zero/index.html b/develop/os/tutorials/arduino_zero/index.html
index a1877de..cae1931 100644
--- a/develop/os/tutorials/arduino_zero/index.html
+++ b/develop/os/tutorials/arduino_zero/index.html
@@ -322,8 +322,13 @@
           
               
                 
-    <li >
-      <a href="../project-slinky/">Enable remote comms on sim device</a>
+  
+  
+    <li><a href="
+  ../project-slinky/
+">Project Slinky for remote comms</a>
+  
+  
     </li>
 
               
@@ -331,7 +336,7 @@
               
                 
     <li >
-      <a href="../project-target-slinky/">Enable remote comms on STM32 board</a>
+      <a href="../add_newtmgr/">Enable newtmgr in any app</a>
     </li>
 
               

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/5344d177/develop/os/tutorials/blehci_project/index.html
----------------------------------------------------------------------
diff --git a/develop/os/tutorials/blehci_project/index.html b/develop/os/tutorials/blehci_project/index.html
index b46e133..7dcdc40 100644
--- a/develop/os/tutorials/blehci_project/index.html
+++ b/develop/os/tutorials/blehci_project/index.html
@@ -267,8 +267,13 @@
           
               
                 
-    <li >
-      <a href="../project-slinky/">Enable remote comms on sim device</a>
+  
+  
+    <li><a href="
+  ../project-slinky/
+">Project Slinky for remote comms</a>
+  
+  
     </li>
 
               
@@ -276,7 +281,7 @@
               
                 
     <li >
-      <a href="../project-target-slinky/">Enable remote comms on STM32 board</a>
+      <a href="../add_newtmgr/">Enable newtmgr in any app</a>
     </li>
 
               

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/5344d177/develop/os/tutorials/bleprph/bleprph-adv/index.html
----------------------------------------------------------------------
diff --git a/develop/os/tutorials/bleprph/bleprph-adv/index.html b/develop/os/tutorials/bleprph/bleprph-adv/index.html
index 89353db..ec31f3f 100644
--- a/develop/os/tutorials/bleprph/bleprph-adv/index.html
+++ b/develop/os/tutorials/bleprph/bleprph-adv/index.html
@@ -267,8 +267,13 @@
           
               
                 
-    <li >
-      <a href="../../project-slinky/">Enable remote comms on sim device</a>
+  
+  
+    <li><a href="
+  ../../project-slinky/
+">Project Slinky for remote comms</a>
+  
+  
     </li>
 
               
@@ -276,7 +281,7 @@
               
                 
     <li >
-      <a href="../../project-target-slinky/">Enable remote comms on STM32 board</a>
+      <a href="../../add_newtmgr/">Enable newtmgr in any app</a>
     </li>
 
               

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/5344d177/develop/os/tutorials/bleprph/bleprph-chr-access/index.html
----------------------------------------------------------------------
diff --git a/develop/os/tutorials/bleprph/bleprph-chr-access/index.html b/develop/os/tutorials/bleprph/bleprph-chr-access/index.html
index f82c3dd..d934678 100644
--- a/develop/os/tutorials/bleprph/bleprph-chr-access/index.html
+++ b/develop/os/tutorials/bleprph/bleprph-chr-access/index.html
@@ -267,8 +267,13 @@
           
               
                 
-    <li >
-      <a href="../../project-slinky/">Enable remote comms on sim device</a>
+  
+  
+    <li><a href="
+  ../../project-slinky/
+">Project Slinky for remote comms</a>
+  
+  
     </li>
 
               
@@ -276,7 +281,7 @@
               
                 
     <li >
-      <a href="../../project-target-slinky/">Enable remote comms on STM32 board</a>
+      <a href="../../add_newtmgr/">Enable newtmgr in any app</a>
     </li>
 
               

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/5344d177/develop/os/tutorials/bleprph/bleprph-conn/index.html
----------------------------------------------------------------------
diff --git a/develop/os/tutorials/bleprph/bleprph-conn/index.html b/develop/os/tutorials/bleprph/bleprph-conn/index.html
index 0ce679f..d7c983c 100644
--- a/develop/os/tutorials/bleprph/bleprph-conn/index.html
+++ b/develop/os/tutorials/bleprph/bleprph-conn/index.html
@@ -267,8 +267,13 @@
           
               
                 
-    <li >
-      <a href="../../project-slinky/">Enable remote comms on sim device</a>
+  
+  
+    <li><a href="
+  ../../project-slinky/
+">Project Slinky for remote comms</a>
+  
+  
     </li>
 
               
@@ -276,7 +281,7 @@
               
                 
     <li >
-      <a href="../../project-target-slinky/">Enable remote comms on STM32 board</a>
+      <a href="../../add_newtmgr/">Enable newtmgr in any app</a>
     </li>
 
               

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/5344d177/develop/os/tutorials/bleprph/bleprph-intro/index.html
----------------------------------------------------------------------
diff --git a/develop/os/tutorials/bleprph/bleprph-intro/index.html b/develop/os/tutorials/bleprph/bleprph-intro/index.html
index 32932fe..5ddd34b 100644
--- a/develop/os/tutorials/bleprph/bleprph-intro/index.html
+++ b/develop/os/tutorials/bleprph/bleprph-intro/index.html
@@ -267,8 +267,13 @@
           
               
                 
-    <li >
-      <a href="../../project-slinky/">Enable remote comms on sim device</a>
+  
+  
+    <li><a href="
+  ../../project-slinky/
+">Project Slinky for remote comms</a>
+  
+  
     </li>
 
               
@@ -276,7 +281,7 @@
               
                 
     <li >
-      <a href="../../project-target-slinky/">Enable remote comms on STM32 board</a>
+      <a href="../../add_newtmgr/">Enable newtmgr in any app</a>
     </li>
 
               

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/5344d177/develop/os/tutorials/bleprph/bleprph-svc-reg/index.html
----------------------------------------------------------------------
diff --git a/develop/os/tutorials/bleprph/bleprph-svc-reg/index.html b/develop/os/tutorials/bleprph/bleprph-svc-reg/index.html
index 72668b7..61dac3a 100644
--- a/develop/os/tutorials/bleprph/bleprph-svc-reg/index.html
+++ b/develop/os/tutorials/bleprph/bleprph-svc-reg/index.html
@@ -267,8 +267,13 @@
           
               
                 
-    <li >
-      <a href="../../project-slinky/">Enable remote comms on sim device</a>
+  
+  
+    <li><a href="
+  ../../project-slinky/
+">Project Slinky for remote comms</a>
+  
+  
     </li>
 
               
@@ -276,7 +281,7 @@
               
                 
     <li >
-      <a href="../../project-target-slinky/">Enable remote comms on STM32 board</a>
+      <a href="../../add_newtmgr/">Enable newtmgr in any app</a>
     </li>
 
               

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/5344d177/develop/os/tutorials/bletiny_project/index.html
----------------------------------------------------------------------
diff --git a/develop/os/tutorials/bletiny_project/index.html b/develop/os/tutorials/bletiny_project/index.html
index d1aa10d..16a1992 100644
--- a/develop/os/tutorials/bletiny_project/index.html
+++ b/develop/os/tutorials/bletiny_project/index.html
@@ -267,8 +267,13 @@
           
               
                 
-    <li >
-      <a href="../project-slinky/">Enable remote comms on sim device</a>
+  
+  
+    <li><a href="
+  ../project-slinky/
+">Project Slinky for remote comms</a>
+  
+  
     </li>
 
               
@@ -276,7 +281,7 @@
               
                 
     <li >
-      <a href="../project-target-slinky/">Enable remote comms on STM32 board</a>
+      <a href="../add_newtmgr/">Enable newtmgr in any app</a>
     </li>
 
               
@@ -672,9 +677,9 @@ Continuing.
 <ul class="nav nav-pills" style="margin-bottom: 10px">
     <li>
     
-    <a href=../project-target-slinky/>
+    <a href=../add_newtmgr/>
         <span class="fa fa-arrow-left"></span>
-        Previous: Enable remote comms on STM32 board
+        Previous: Enable newtmgr in any app
     </a>
     
     </li>

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/5344d177/develop/os/tutorials/blinky_primo/index.html
----------------------------------------------------------------------
diff --git a/develop/os/tutorials/blinky_primo/index.html b/develop/os/tutorials/blinky_primo/index.html
index db9d2cc..d78874c 100644
--- a/develop/os/tutorials/blinky_primo/index.html
+++ b/develop/os/tutorials/blinky_primo/index.html
@@ -322,8 +322,13 @@
           
               
                 
-    <li >
-      <a href="../project-slinky/">Enable remote comms on sim device</a>
+  
+  
+    <li><a href="
+  ../project-slinky/
+">Project Slinky for remote comms</a>
+  
+  
     </li>
 
               
@@ -331,7 +336,7 @@
               
                 
     <li >
-      <a href="../project-target-slinky/">Enable remote comms on STM32 board</a>
+      <a href="../add_newtmgr/">Enable newtmgr in any app</a>
     </li>
 
               

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/5344d177/develop/os/tutorials/blinky_sram_olimex/index.html
----------------------------------------------------------------------
diff --git a/develop/os/tutorials/blinky_sram_olimex/index.html b/develop/os/tutorials/blinky_sram_olimex/index.html
index 765faa2..2379f22 100644
--- a/develop/os/tutorials/blinky_sram_olimex/index.html
+++ b/develop/os/tutorials/blinky_sram_olimex/index.html
@@ -322,8 +322,13 @@
           
               
                 
-    <li >
-      <a href="../project-slinky/">Enable remote comms on sim device</a>
+  
+  
+    <li><a href="
+  ../project-slinky/
+">Project Slinky for remote comms</a>
+  
+  
     </li>
 
               
@@ -331,7 +336,7 @@
               
                 
     <li >
-      <a href="../project-target-slinky/">Enable remote comms on STM32 board</a>
+      <a href="../add_newtmgr/">Enable newtmgr in any app</a>
     </li>
 
               

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/5344d177/develop/os/tutorials/event_queue/index.html
----------------------------------------------------------------------
diff --git a/develop/os/tutorials/event_queue/index.html b/develop/os/tutorials/event_queue/index.html
index a278ae4..0195bc7 100644
--- a/develop/os/tutorials/event_queue/index.html
+++ b/develop/os/tutorials/event_queue/index.html
@@ -267,8 +267,13 @@
           
               
                 
-    <li >
-      <a href="../project-slinky/">Enable remote comms on sim device</a>
+  
+  
+    <li><a href="
+  ../project-slinky/
+">Project Slinky for remote comms</a>
+  
+  
     </li>
 
               
@@ -276,7 +281,7 @@
               
                 
     <li >
-      <a href="../project-target-slinky/">Enable remote comms on STM32 board</a>
+      <a href="../add_newtmgr/">Enable newtmgr in any app</a>
     </li>
 
               
@@ -748,7 +753,7 @@ pkg.deps:
     <li class="pull-right">
     
     <a href=../project-slinky/>
-        Next: Enable remote comms on sim device
+        Next: Slinky on sim device
         <span class="fa fa-arrow-right"></span>
     </a>
     

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/5344d177/develop/os/tutorials/ibeacon/index.html
----------------------------------------------------------------------
diff --git a/develop/os/tutorials/ibeacon/index.html b/develop/os/tutorials/ibeacon/index.html
index 27fb9fd..ff8ebaf 100644
--- a/develop/os/tutorials/ibeacon/index.html
+++ b/develop/os/tutorials/ibeacon/index.html
@@ -267,8 +267,13 @@
           
               
                 
-    <li >
-      <a href="../project-slinky/">Enable remote comms on sim device</a>
+  
+  
+    <li><a href="
+  ../project-slinky/
+">Project Slinky for remote comms</a>
+  
+  
     </li>
 
               
@@ -276,7 +281,7 @@
               
                 
     <li >
-      <a href="../project-target-slinky/">Enable remote comms on STM32 board</a>
+      <a href="../add_newtmgr/">Enable newtmgr in any app</a>
     </li>