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 2017/03/31 17:10:34 UTC

[02/20] incubator-mynewt-site git commit: RedBear Nano2 blinky tutorial, WiFi tutorial with MKR1000, cputime module documentation, and several updates to OS guide by cwanda. Vanity import domain additions by spoonofpower.

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/facfa9ba/latest/os/tutorials/rbnano2/index.html
----------------------------------------------------------------------
diff --git a/latest/os/tutorials/rbnano2/index.html b/latest/os/tutorials/rbnano2/index.html
new file mode 100644
index 0000000..0e784fd
--- /dev/null
+++ b/latest/os/tutorials/rbnano2/index.html
@@ -0,0 +1,765 @@
+<!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">
+        
+        
+        <!-- This is broken by doc revisioning.
+        <link rel="canonical" href="http://mynewt.apache.org/os/tutorials/rbnano2/"> -->
+        <link rel="shortcut icon" href="../../../img/favicon.ico">
+
+	    <title>Blinky on RedBear Nano 2 - Apache Mynewt</title>
+
+        <link href="../../../css/bootstrap-3.0.3.min.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=Lato" rel="stylesheet">
+        <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="Blinky on RedBear Nano 2">
+
+
+        <div class="container">
+    <div class="row v2-main-banner">
+        <a class="logo-cell" href="/">
+            <img class="logo" src="/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.0.0</a> released (March 22, 2017)
+            </div>
+        </div>
+    </div>
+</div>
+
+        
+
+
+
+
+
+
+<nav id="navbar" class="navbar navbar-inverse affix-top" data-spy="affix" data-offset-top="150" 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="/"><i class="fa fa-home" style="font-size: larger;"></i></a>
+                </li>
+                <li 
+  class="important"
+>
+                    <a href="/quick-start/">Quick Start</a>
+                </li>
+                <li 
+  class=""
+>
+                    <a href="/about/">About</a>
+                </li>
+                <li 
+  class=""
+>
+                    <a href="/talks/">Talks</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 sidebar-container"><div id="docSidebar" class="hidden-print" role="complementary">
+    <div class="top">
+        <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 (latest)
+    </option>
+    
+    <option
+      value="/v0_9_0/os/introduction"
+      
+    >
+      Version: 0.9.0
+    </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>
+  
+  
+    <ul>
+          
+              
+                
+    <li >
+      <a href="../arduino_zero/">Blinky on Arduino Zero</a>
+    </li>
+
+              
+          
+              
+                
+    <li >
+      <a href="../blinky_primo/">Blinky on Arduino Primo</a>
+    </li>
+
+              
+          
+              
+                
+    <li >
+      <a href="../olimex/">Blinky on Olimex</a>
+    </li>
+
+              
+          
+              
+                
+  
+  
+    <li ><a href="../STM32F303/">Blinky on STM32F303</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+    <li >
+      <a href="../nRF52/">Blinky on nRF52</a>
+    </li>
+
+              
+          
+              
+                
+    <li class="active">
+      <a href="./">Blinky on RedBear Nano 2</a>
+    </li>
+
+              
+          
+              
+                
+    <li >
+      <a href="../blinky_console/">Add Console and Shell to Blinky</a>
+    </li>
+
+              
+          
+    </ul>
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
+    <li ><a href="../repo/add_repos/">Work with repositories</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+    <li >
+      <a href="../tasks_lesson/">Tasks and Priority Management</a>
+    </li>
+
+              
+          
+              
+                
+    <li >
+      <a href="../wi-fi_on_arduino/">Enable Wi-Fi on Arduino MKR1000</a>
+    </li>
+
+              
+          
+              
+                
+    <li >
+      <a href="../unit_test/">Write a Test Suite for a Package</a>
+    </li>
+
+              
+          
+              
+                
+    <li >
+      <a href="../event_queue/">Events and Event Queues</a>
+    </li>
+
+              
+          
+              
+                
+  
+  
+    <li><a href="
+  ../project-slinky/
+">Project Slinky for remote comms</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+    <li >
+      <a href="../add_newtmgr/">Enable Newt Manager in any app</a>
+    </li>
+
+              
+          
+              
+                
+    <li >
+      <a href="../add_shell/">Enable the OS Shell and Console</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="../eddystone/">BLE Eddystone</a>
+    </li>
+
+              
+          
+              
+                
+    <li >
+      <a href="../blehci_project/">BLE HCI interface</a>
+    </li>
+
+              
+          
+              
+                
+  
+  
+    <li><a href="
+  ../air_quality_sensor/
+">Air-quality Sensor project</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+    <li >
+      <a href="../nrf52_adc/">Add an Analog Sensor</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="col-md-9" role="main">
+                        <div class="doc-header">
+                            <div role="navigation" aria-label="breadcrumbs navigation">
+  <ul class="wy-breadcrumbs pull-right">
+    <li><a href="/latest/os/introduction">Docs</a></li>
+    
+    
+        
+          <li>&raquo; <a href="../tutorials/">Tutorials</a></li>
+        
+      
+        
+          <li>&raquo; <a href="../arduino_zero/">Project Blinky</a></li>
+        
+      
+      
+        <li>&raquo; Blinky on RedBear Nano 2</li>
+      
+    
+    
+  </ul>
+</div>
+                        </div>
+                        
+                            <h2 id="blinky-your-hello-world-on-redbear-nano-2">Blinky, your "Hello World!", on RedBear Nano 2</h2>
+<p><br></p>
+<h3 id="objective">Objective</h3>
+<p>Learn how to use packages from a default application repository of Mynewt to build your first <em>Hello World</em> application (Blinky) on a target board. Once built using the <em>newt</em> tool, this application will blink the LED lights on the target board.</p>
+<p>Create a project with a simple application that blinks an LED on a RedBear Nano 2 board.  Download the application to the target and watch it blink!</p>
+<p><br></p>
+<h3 id="prerequisites">Prerequisites</h3>
+<p>Ensure that you have met the following prerequisites before continuing with this tutorial:</p>
+<ul>
+<li>Have a RedBear Nano 2 board. </li>
+<li>Have Internet connectivity to fetch remote Mynewt components.</li>
+<li>Have a computer to build a Mynewt application and connect to the board over USB.</li>
+<li>Install the Newt tool and toolchains (See <a href="../../get_started/get_started/">Basic Setup</a>).</li>
+<li>Create a project space (directory structure) and populated it with the core code repository (apache-mynewt-core) or know how to as explained in <a href="../../../os/get_started/project_create">Creating Your First Project</a>.</li>
+<li>Read the Mynewt OS <a href="../../get_started/vocabulary/">Concepts</a> section.</li>
+</ul>
+<p><strong>Note:</strong> You must install a patched version of OpenOCD .10.0 (See <a href="../../../os/tutorials/blinky_primo">Debugger Option 2 in the Arduino Primo Blinky Tutorial</a>).</p>
+<h3 id="create-a-project">Create a Project</h3>
+<p>Create a new project if you do not have an existing one.  You can skip this step and proceed to <a href="#create_targets">create the targets</a> if you already have a project created.  </p>
+<p>Run the following commands to create a new project:</p>
+<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%">    $ mkdir ~/dev
+    $ cd ~/dev
+    $ newt new myproj
+    Downloading project skeleton from apache/incubator-mynewt-blinky...
+    Installing skeleton in myproj...
+    Project myproj successfully created.
+    $ cd myproj
+    $ newt install
+    apache-mynewt-core
+    $
+</pre></div>
+
+
+<p><br></p>
+<h3 id="create-the-targets"><a name="create_targets"></a>Create the Targets</h3>
+<p>Create two targets for the RedBear Nano 2 board - one for the bootloader and one for the Blinky application.</p>
+<p>Run the following <code>newt target</code> commands, from your project directory, to create a bootloader target. We name the target <code>rbnano2_boot</code>:</p>
+<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%">$ newt target create rbnano2_boot
+$ newt target set rbnano2_boot app=@apache-mynewt-core/apps/boot
+$ newt target set rbnano2_boot bsp=@apache-mynewt-core/hw/bsp/rb-nano2
+$ newt target set rbnano2_boot build_profile=optimized
+</pre></div>
+
+
+<p><br>
+Run the following <code>newt target</code> commands to create a target for the Blinky application. We name the target <code>nrf52_blinky</code>.</p>
+<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%">$ newt target create rbnano2_blinky
+$ newt target set rbnano2_blinky app=apps/blinky
+$ newt target set rbnano2_blinky bsp=@apache-mynewt-core/hw/bsp/rb-nano2
+$ newt target set rbnano2_blinky build_profile=debug
+</pre></div>
+
+
+<p><br>
+You can run the <code>newt target show</code> command to verify the target settings:</p>
+<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%">$ newt target show 
+targets/rbnano2_blinky
+    app=apps/blinky
+    bsp=@apache-mynewt-core/hw/bsp/rb-nano2
+    build_profile=debug
+targets/rbnano2_boot
+    app=@apache-mynewt-core/apps/boot
+    bsp=@apache-mynewt-core/hw/bsp/rb-nano2
+    build_profile=optimized
+</pre></div>
+
+
+<p><br></p>
+<h3 id="build-the-target-executables">Build the Target Executables</h3>
+<p>Run the <code>newt build rbnano2_boot</code> command to build the bootloader:</p>
+<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%">$newt build rbnano2_boot
+Building target targets/rbnano2_boot
+Compiling repos/apache-mynewt-core/boot/bootutil/src/image_rsa.c
+Compiling repos/apache-mynewt-core/boot/bootutil/src/image_ec256.c
+Compiling repos/apache-mynewt-core/boot/bootutil/src/loader.c
+Compiling repos/apache-mynewt-core/crypto/mbedtls/src/aes.c
+Compiling repos/apache-mynewt-core/boot/bootutil/src/image_validate.c
+Compiling repos/apache-mynewt-core/boot/bootutil/src/image_ec.c
+Compiling repos/apache-mynewt-core/boot/bootutil/src/bootutil_misc.c
+Compiling repos/apache-mynewt-core/apps/boot/src/boot.c
+
+      ...
+
+Archiving sys_sysinit.a
+Archiving util_mem.a
+Linking ~/dev/myproj/bin/targets/rbnano2_boot/app/apps/boot/boot.elf
+Target successfully built: targets/rbnano2_boot
+</pre></div>
+
+
+<p><br>
+Run the <code>newt build rbnano2_blinky</code> command to build the Blinky application:</p>
+<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%">$newt build rbnano2_blinky
+Building target targets/rbnano2_blinky
+Assembling repos/apache-mynewt-core/hw/bsp/rb-nano2/src/arch/cortex_m4/gcc_startup_nrf52_split.s
+Compiling repos/apache-mynewt-core/hw/drivers/uart/src/uart.c
+Compiling repos/apache-mynewt-core/hw/cmsis-core/src/cmsis_nvic.c
+Compiling repos/apache-mynewt-core/hw/bsp/rb-nano2/src/sbrk.c
+Compiling apps/blinky/src/main.c
+
+     ...
+
+Archiving sys_sysinit.a
+Archiving util_mem.a
+Linking ~/dev/myproj/bin/targets/rbnano2_blinky/app/apps/blinky/blinky.elf
+Target successfully built: targets/rbnano2_blinky
+</pre></div>
+
+
+<p><br></p>
+<h3 id="sign-and-create-the-blinky-application-image">Sign and Create the Blinky Application Image</h3>
+<p>Run the <code>newt create-image rbnano2_blinky 1.0.0</code> command to create and sign the application image. You may assign an arbitrary version (e.g. 1.0.0) to the image.</p>
+<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%">$newt create-image rbnano2_blinky 1.0.0
+App image succesfully generated: ~/dev/myproj/bin/targets/rbnano2_blinky/app/apps/blinky/blinky.img
+</pre></div>
+
+
+<p><br></p>
+<h3 id="connect-to-the-board">Connect to the Board</h3>
+<p>Connect the RedBear Nano 2 USB to a USB port on your computer. You should see an orange LED light up on the board.</p>
+<h3 id="load-the-bootloader-and-the-blinky-application-image">Load the Bootloader and the Blinky Application Image</h3>
+<p>Run the <code>newt load rbnano2_boot</code> command to load the bootloader onto the board: </p>
+<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%">$ newt load rbnano2_boot
+Loading bootloader
+$
+</pre></div>
+
+
+<p><br>
+Note: The flash memory on the RedBear Nano 2 comes write protected from the factory. If you get an error loading the bootloader and you are using a brand new chip, you need to clear the write protection from the debugger and then load the bootloader again.  Run the <code>newt debug rbnano2_blinky</code> command and issue the following commands at the highlighted (gdb) prompts.  </p>
+<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%">$newt debug rbnano2_blinky
+[~/dev/myproj/repos/apache-mynewt-core/hw/bsp/rb-nano2/rb-nano2_debug.sh  ~/dev/myproj/repos/apache-mynewt-core/hw/bsp/rb-nano2 ~/dev/myproj/bin/targets/rbnano2_blinky/app/apps/blinky/blinky]
+Open On-Chip Debugger 0.10.0-dev-snapshot (2017-03-28-11:24)
+Licensed under GNU GPL v2
+
+     ...
+
+<span style="background-color: #ffffcc">(gdb) set {unsigned long}0x4001e504=2
+</span><span style="background-color: #ffffcc">(gdb) x/1wx 0x4001e504
+</span>0x4001e504:0x00000002
+<span style="background-color: #ffffcc">(gdb) set {unsigned long}0x4001e50c=1
+</span>Info : SWD DPIDR 0x2ba01477
+Error: Failed to read memory at 0x00009ef4
+<span style="background-color: #ffffcc">(gdb) x/32wx 0x00
+</span>0x0:0xffffffff0xffffffff0xffffffff0xffffffff
+0x10:0xffffffff0xffffffff0xffffffff0xffffffff
+0x20:0xffffffff0xffffffff0xffffffff0xffffffff
+0x30:0xffffffff0xffffffff0xffffffff0xffffffff
+0x40:0xffffffff0xffffffff0xffffffff0xffffffff
+0x50:0xffffffff0xffffffff0xffffffff0xffffffff
+0x60:0xffffffff0xffffffff0xffffffff0xffffffff
+0x70:0xffffffff0xffffffff0xffffffff0xffffffff
+(gdb)
+</pre></div>
+
+
+<p><br>
+Run the <code>newt load rbnano2_blinky</code> command to load the Blinky application image onto the board.</p>
+<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%">$ newt load rbnano2_blinky
+Loading app image into slot 1
+</pre></div>
+
+
+<p>You should see a blue LED on the board blink!</p>
+<p>Note: If the LED does not blink, try resetting your board.</p>
+<h3 id="conclusion">Conclusion</h3>
+<p>You have created, setup, compiled, loaded, and ran your first mynewt application for a RedBear Nano 2 board.</p>
+<p>We have more fun tutorials for you to get your hands dirty. Be bold and work on the OS with tutorials on <a href="../unit_test/">writing a test suite</a> or try enabling additional functionality such as <a href="../project-target-slinky/">remote comms</a> or <a href="../bletiny_project/">Bluetooth Low Energy</a> on your current board.</p>
+<p>If you see anything missing or want to send us feedback, please do so by signing up for appropriate mailing lists on our <a href="../../../community/">Community Page</a>.</p>
+<p>Keep on hacking and blinking!</p>
+                        
+                        <div class="row">
+                            
+
+
+
+<ul class="nav nav-pills" style="margin-bottom: 10px">
+    <li>
+    
+    <a href=../nRF52/>
+        <span class="fa fa-arrow-left"></span>
+        Previous: Blinky on nRF52
+    </a>
+    
+    </li>
+    <li class="pull-right">
+    
+    <a href=../blinky_console/>
+        Next: Add Console and Shell to Blinky
+        <span class="fa fa-arrow-right"></span>
+    </a>
+    
+    </li>
+</ul>
+                        </div>
+                        <footer class="row">
+    <div class="col-xs-12">
+        
+            <p class="copyright">Apache Mynewt (incubating) is available under Apache License, version 2.0.</p>
+        
+    </div>
+    <div class="col-xs-12">
+        <div class="logos">
+            <img src="/img/asf_logo_wide_small.png" alt="Apache" title="Apache">
+            <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>
+            <img src="/img/egg-logo2.png" alt="Apache Incubator" title="Apache Incubator">
+        </div>
+    </div>
+</footer>
+                    </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/facfa9ba/latest/os/tutorials/repo/add_repos/index.html
----------------------------------------------------------------------
diff --git a/latest/os/tutorials/repo/add_repos/index.html b/latest/os/tutorials/repo/add_repos/index.html
index ccf97da..b1faee1 100644
--- a/latest/os/tutorials/repo/add_repos/index.html
+++ b/latest/os/tutorials/repo/add_repos/index.html
@@ -293,7 +293,7 @@
               
                 
     <li >
-      <a href="../../wi-fi_on_arduino/">Enable Wi-Fi on Arduino Zero</a>
+      <a href="../../wi-fi_on_arduino/">Enable Wi-Fi on Arduino MKR1000</a>
     </li>
 
               

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/facfa9ba/latest/os/tutorials/repo/create_repo/index.html
----------------------------------------------------------------------
diff --git a/latest/os/tutorials/repo/create_repo/index.html b/latest/os/tutorials/repo/create_repo/index.html
index 377edc4..ac64e81 100644
--- a/latest/os/tutorials/repo/create_repo/index.html
+++ b/latest/os/tutorials/repo/create_repo/index.html
@@ -293,7 +293,7 @@
               
                 
     <li >
-      <a href="../../wi-fi_on_arduino/">Enable Wi-Fi on Arduino Zero</a>
+      <a href="../../wi-fi_on_arduino/">Enable Wi-Fi on Arduino MKR1000</a>
     </li>
 
               

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/facfa9ba/latest/os/tutorials/repo/private_repo/index.html
----------------------------------------------------------------------
diff --git a/latest/os/tutorials/repo/private_repo/index.html b/latest/os/tutorials/repo/private_repo/index.html
index d160527..dd55a27 100644
--- a/latest/os/tutorials/repo/private_repo/index.html
+++ b/latest/os/tutorials/repo/private_repo/index.html
@@ -293,7 +293,7 @@
               
                 
     <li >
-      <a href="../../wi-fi_on_arduino/">Enable Wi-Fi on Arduino Zero</a>
+      <a href="../../wi-fi_on_arduino/">Enable Wi-Fi on Arduino MKR1000</a>
     </li>
 
               

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/facfa9ba/latest/os/tutorials/repo/upgrade_repo/index.html
----------------------------------------------------------------------
diff --git a/latest/os/tutorials/repo/upgrade_repo/index.html b/latest/os/tutorials/repo/upgrade_repo/index.html
index d916294..b3aa23e 100644
--- a/latest/os/tutorials/repo/upgrade_repo/index.html
+++ b/latest/os/tutorials/repo/upgrade_repo/index.html
@@ -293,7 +293,7 @@
               
                 
     <li >
-      <a href="../../wi-fi_on_arduino/">Enable Wi-Fi on Arduino Zero</a>
+      <a href="../../wi-fi_on_arduino/">Enable Wi-Fi on Arduino MKR1000</a>
     </li>
 
               

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/facfa9ba/latest/os/tutorials/tasks_lesson/index.html
----------------------------------------------------------------------
diff --git a/latest/os/tutorials/tasks_lesson/index.html b/latest/os/tutorials/tasks_lesson/index.html
index feabcbd..fe9c6f7 100644
--- a/latest/os/tutorials/tasks_lesson/index.html
+++ b/latest/os/tutorials/tasks_lesson/index.html
@@ -263,7 +263,7 @@
               
                 
     <li >
-      <a href="../wi-fi_on_arduino/">Enable Wi-Fi on Arduino Zero</a>
+      <a href="../wi-fi_on_arduino/">Enable Wi-Fi on Arduino MKR1000</a>
     </li>
 
               
@@ -475,7 +475,7 @@
 </div>
                         </div>
                         
-                            <h1 id="core-os-lesson-tasks-and-priority-management">Core OS Lesson: Tasks and Priority Management</h1>
+                            <h1 id="tasks-and-priority-management">Tasks and Priority Management</h1>
 <p><strong>Target Platform: Arduino M0 Pro</strong> (or legacy Arduino Zero or Zero Pro, but not Arduino M0)</p>
 <p>This lesson is designed to teach core OS concepts and strategies encountered when 
 building applications using Mynewt. Specifically, this lesson will cover tasks, 
@@ -494,10 +494,14 @@ for additional insights.</p>
 <li>USB to Micro USB Cable</li>
 </ul>
 <h2 id="build-your-application">Build Your Application</h2>
-<p>To save time, we will simply modify the Blinky app. We'll add the Task Management code to
-the Blinky app. Follow the <a href="http://mynewt.apache.org/os/tutorials/arduino_zero/"><em>Arduino Zero Blinky tutorial</em></a> 
+<p>To save time, we will simply modify the Blinky application. We'll add the Task Management code to
+the Blinky application. Follow the <a href="http://mynewt.apache.org/os/tutorials/arduino_zero/"><em>Arduino Zero Blinky tutorial</em></a> 
 to create a new project and build your bootloader and application. Finally, build and 
 load the application to your Arduino to verify that everything is in order. Now let\u2019s get started!</p>
+<h2 id="default-main-task">Default Main Task</h2>
+<p>During Mynewt system startup, Mynewt creates a default main task and executes the application <code>main()</code> function in the context of this task.  The main task priority defaults to 127 and can be configured with the <code>OS_MAIN_TASK_PRIO</code> system configuration setting.</p>
+<p>The blinky application only has the <code>main</code> task.  The <code>main()</code> function executes an infinite loop that toggles the led and sleeps for one second. 
+<br></p>
 <h2 id="create-a-new-task">Create a New Task</h2>
 <p>The purpose of this section is to give an introduction to the important aspects of tasks 
 and how to properly initialize them. First, let\u2019s define a second task called <code>work_task</code> 
@@ -513,7 +517,7 @@ main elements, a task function (also known as a task handler) and a task stack.<
 <h3 id="task-stack">Task Stack</h3>
 <p>The task stack is an array of type <code>os_stack_t</code> which holds the program stack frames. Mynewt gives 
 us the ability to set the stack size for a task giving the application developer room to optimize 
-memory usage. Since we\u2019re not short on memory, our <code>blinky_stack</code> and <code>work_stack</code> are plenty large 
+memory usage. Since we\u2019re not short on memory, our <code>work_stack</code> is plenty large 
 for the purpose of this lesson. Notice that the elements in our task stack are of type <code>os_stack_t</code> 
 which are generally 32 bits, making our entire stack 1024 Bytes.</p>
 <div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%">  <span style="color: #633820">#define WORK_STACK_SIZE OS_STACK_ALIGN(256)</span>
@@ -522,10 +526,7 @@ which are generally 32 bits, making our entire stack 1024 Bytes.</p>
 
 <p>Note: The <code>OS_STACK_ALIGN</code> macro is used to align the stack based on the hardware architecture.</p>
 <h3 id="task-function">Task Function</h3>
-<p>The task function is essentially an infinite loop which waits for some \u201cevent\u201d to wake it up. In our 
-Blinky app the task function, named <code>blinky_task_handler()</code>, is initially called when we call <code>os_start()</code> 
-in <code>main()</code>. In general, the task function is where the majority of work is done by a task. Let\u2019s write 
-a task function for <code>work_task</code> called <code>work_task_handler()</code>:</p>
+<p>A task function is essentially an infinite loop that waits for some \u201cevent\u201d to wake it up.  In general, the task function is where the majority of work is done by a task.  Let\u2019s write a task function for <code>work_task</code> called <code>work_task_handler()</code>:</p>
 <div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%"><span style="color: #A90D91">void</span>
 <span style="color: #000000">work_task_handler</span>(<span style="color: #A90D91">void</span> <span style="color: #000000">*arg</span>)
 {
@@ -558,8 +559,8 @@ must choose a priority defined as a macro variable.</p>
 
 <h3 id="initialization">Initialization</h3>
 <p>To initialize a new task we use <a href="http://mynewt.apache.org/os/core_os/task/os_task_init/"><em>os_task_init()</em></a> 
-which takes a number of arguments including our new task function, stack, and priority. Much like <code>blinky_task</code>, 
-we\u2019re going to initialize <code>work_task</code> inside <code>init_tasks</code> to keep our main function clean. We'll set the task stack here and pass it to the <code>os_task_init()</code> function as well.</p>
+which takes a number of arguments including our new task function, stack, and priority. </p>
+<p>Add the <code>init_tasks()</code> function to initialize <code>work_task</code> to keep our main function clean. </p>
 <div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%"><span style="color: #A90D91">int</span>
 <span style="color: #000000">init_tasks</span>(<span style="color: #A90D91">void</span>)
 {
@@ -567,23 +568,43 @@ we\u2019re going to initialize <code>work_task</code> inside <code>init_tasks</code
     <span style="color: #A90D91">os_stack_t</span> <span style="color: #000000">*work_stack</span>;
     <span style="color: #000000">work_stack</span> <span style="color: #000000">=</span> <span style="color: #000000">malloc</span>(<span style="color: #A90D91">sizeof</span>(<span style="color: #A90D91">os_stack_t</span>)<span style="color: #000000">*WORK_STACK_SIZE</span>);
 
-    <span style="color: #000000">assert</span>(<span style="color: #000000">pstack</span>);
+    <span style="color: #000000">assert</span>(<span style="color: #000000">work_stack</span>);
     <span style="color: #000000">os_task_init</span>(<span style="color: #000000">&amp;work_task</span>, <span style="color: #C41A16">&quot;work&quot;</span>, <span style="color: #000000">work_task_handler</span>, <span style="color: #A90D91">NULL</span>,
             <span style="color: #000000">WORK_TASK_PRIO</span>, <span style="color: #000000">OS_WAIT_FOREVER</span>, <span style="color: #000000">work_stack</span>,
             <span style="color: #000000">WORK_STACK_SIZE</span>);
 
-    <span style="color: #000000">tasks_initialized</span> <span style="color: #000000">=</span> <span style="color: #1C01CE">1</span>;
     <span style="color: #A90D91">return</span> <span style="color: #1C01CE">0</span>;
 }
 </pre></div>
 
 
-<p>And that\u2019s it! Now run your application using the newt run command.</p>
+<p><br></p>
+<p>Add the call to <code>init_tasks()</code> in <code>main()</code> before the <code>while</code> loop:</p>
+<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%"><span style="color: #A90D91">int</span>
+<span style="color: #000000">main</span>(<span style="color: #A90D91">int</span> <span style="color: #000000">argc</span>, <span style="color: #A90D91">char</span> <span style="color: #000000">**argv</span>)
+{
+
+        ...
+
+    <span style="color: #177500">/* Initialize the work task */</span>
+    <span style="color: #000000">init_tasks</span>();
+
+    <span style="color: #A90D91">while</span> (<span style="color: #1C01CE">1</span>) {
+         ...
+    }
+}
+</pre></div>
+
+
+<p><br>
+And that\u2019s it! Now run your application using the newt run command.</p>
 <div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%">$ newt run arduino_blinky 0.0.0
 </pre></div>
 
 
-<p>When GDB appears press C then Enter to continue and \u2026 <em>wait, why doesn't our LED blink anymore?</em></p>
+<p><br>
+When GDB appears press C then Enter to continue and \u2026 <em>wait, why doesn't our LED blink anymore?</em></p>
+<p><br></p>
 <h4 id="review">Review</h4>
 <p>Before we run our new app, let\u2019s review what we need in order to create a task. This is a general case for a new task called mytask:</p>
 <p><strong>1)</strong>   Define a new task, task stack, and priority:</p>
@@ -608,7 +629,7 @@ we\u2019re going to initialize <code>work_task</code> inside <code>init_tasks</code
 </pre></div>
 
 
-<p><strong>3)</strong> Initialize task before calling <code>os_start()</code>:</p>
+<p><strong>3)</strong> Initialize the task:</p>
 <div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%"><span style="color: #000000">os_task_init</span>(<span style="color: #000000">&amp;mytask</span>, <span style="color: #C41A16">&quot;mytask&quot;</span>, <span style="color: #000000">mytask_handler</span>, <span style="color: #A90D91">NULL</span>, 
             <span style="color: #000000">MYTASK_PRIO</span>, <span style="color: #000000">OS_WAIT_FOREVER</span>, <span style="color: #000000">mytask_stack</span>,
             <span style="color: #000000">MYTASK_STACK_SIZE</span>);
@@ -620,11 +641,8 @@ we\u2019re going to initialize <code>work_task</code> inside <code>init_tasks</code
 place of) the lower priority task which is <em>running</em>. When a lower priority task is preempted by a higher 
 priority task, the lower priority task\u2019s context data (stack pointer, registers, etc.) is saved and the new 
 task is switched in.</p>
-<p>In our example, <code>work_task</code> has a higher priority than <code>blinky_task</code> and, because it is never put into a 
-<em>sleep</em> state, holds the processor focus on its context. Let\u2019s give <code>work_task</code> a delay and some simulated 
-work to keep it busy. Because the delay is measured in os ticks, the actual number of ticks per second is 
-dependent on the board. Therefore, we multiply <code>OS_TICKS_PER_SEC</code>, which is defined in the MCU, by the 
-number of seconds we wish to delay.</p>
+<p>In our example, <code>work_task</code> (priority 0) has a higher priority than the <code>main</code> task (priority 127).  Since <code>work_task</code> is never put into a <em>sleep</em> state, it holds the processor focus on its context. </p>
+<p>Let\u2019s give <code>work_task</code> a delay and some simulated work to keep it busy. The delay is measured in os ticks and the actual number of ticks per second is dependent on the board. We multiply <code>OS_TICKS_PER_SEC</code>, which is defined in the MCU, by the number of seconds we wish to delay.</p>
 <div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%"><span style="color: #A90D91">void</span>
 <span style="color: #000000">work_task_handler</span>(<span style="color: #A90D91">void</span> <span style="color: #000000">*arg</span>)
 {
@@ -640,25 +658,26 @@ number of seconds we wish to delay.</p>
         <span style="color: #A90D91">int</span> <span style="color: #000000">i</span>;
         <span style="color: #A90D91">for</span>(<span style="color: #000000">i</span> <span style="color: #000000">=</span> <span style="color: #1C01CE">0</span>; <span style="color: #000000">i</span> <span style="color: #000000">&lt;</span> <span style="color: #1C01CE">1000000</span>; <span style="color: #000000">++i</span>) {
             <span style="color: #177500">/* Simulate doing a noticeable amount of work */</span>
-            <span style="color: #000000">hal_gpio_set</span>(<span style="color: #000000">g_led_pin</span>);
+            <span style="color: #000000">hal_gpio_write</span>(<span style="color: #000000">g_led_pin</span>, <span style="color: #1C01CE">1</span>);
         }
-        <span style="color: #000000">os_time_delay</span>(<span style="color: #1C01CE">3</span><span style="color: #000000">*OS_TICKS_PER_SECOND</span>);
+        <span style="color: #000000">os_time_delay</span>(<span style="color: #1C01CE">3</span> <span style="color: #000000">*</span> <span style="color: #000000">OS_TICKS_PER_SEC</span>);
     }
 }
 </pre></div>
 
 
-<p>In order to notice the LED changing, modify the time delay in <code>blinky_task_handler()</code> to blink at a higher frequency.</p>
+<p><br>
+In order to notice the LED changing, modify the time delay in <code>main()</code> to blink at a higher frequency.</p>
 <div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%"><span style="color: #000000">os_time_delay</span>(<span style="color: #000000">OS_TICKS_PER_SEC/</span><span style="color: #1C01CE">10</span>);
 </pre></div>
 
 
-<p>Before we run the app, let\u2019s predict the behavior. With the newest additions to <code>work_task_handler()</code>, 
-our first action will be to sleep for three seconds. This will allow <code>blinky_task</code> to take over the CPU 
-and blink to its heart\u2019s content. After three seconds, <code>work_task</code> will wake up and be made <em>ready to run</em>, 
-causing it to preempt <code>blinky_task</code>. The LED will then remain lit for a short period while <code>work_task</code> 
+<p><br>
+Before we run the app, let\u2019s predict the behavior. With the newest additions to <code>work_task_handler()</code>, 
+our first action will be to sleep for three seconds. This allows the <code>main</code> task, running <code>main()</code>, to take over the CPU and blink to its heart\u2019s content. After three seconds, <code>work_task</code> will wake up and be made <em>ready to run</em>. 
+This causes it to preempt the <code>main</code> task. The LED will then remain lit for a short period while <code>work_task</code> 
 loops, then blink again for another three seconds while <code>work_task</code> sleeps. </p>
-<p>Voila, you should see that our prediction was correct! </p>
+<p>You should see that our prediction was correct! </p>
 <h3 id="priority-management-considerations">Priority Management Considerations</h3>
 <p>When projects grow in scope, from blinking LEDs into more sophisticated applications, the number of 
 tasks needed increases alongside complexity. It remains important, then, that each of our tasks is 
@@ -666,194 +685,11 @@ capable of doing its work within a reasonable amount of time.</p>
 <p>Some tasks, such as the Shell task, execute quickly and require almost instantaneous response. Therefore, 
 the Shell task should be given a high priority. On the other hand, tasks which may be communicating over 
 a network, or processing data, should be given a low priority in order to not hog the CPU.</p>
-<p>The diagram below showcases the different scheduling patterns we. would expect from swapping blinky and 
-work tasks priorities.</p>
-<p><img alt="Task Scheduling" src="../pics/task_lesson.png" /></p>
-<p>In the second case where <code>blinky_task</code> has a higher priority, the \u201cwork\u201d done by <code>work_task</code> would be 
-executed during the millisecond delays in <code>blinky_task</code>, saving us idle time compared to the first case.</p>
+<p>The diagram below shows the different scheduling patterns we would expect when we set the <code>work_task</code> priority higher and lower than the <code>main</code> task priority.  </p>
+<p><img alt="Task Scheduling" src="../pics/task_lesson1.png" /></p>
+<p>In the second case where the <code>main</code> task has a higher priority, <code>work_task</code> runs and executes \u201cwork\u201d when
+the <code>main</code> task sleeps, saving us idle time compared to the first case.</p>
 <p><strong>Note:</strong> Defining the same priority for two tasks leads to somewhat undefined behavior and should be avoided.</p>
-<h2 id="comparing-priority-strategies">Comparing Priority Strategies</h2>
-<p>Instead of stepping through a bunch of changes to our blinky app, clone my task lesson application from 
-github and copy an existing target.</p>
-<p>Change directory into apps and clone the repository to get our new
-files:</p>
-<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%">$ cd apps
-$ git clone https://github.com/bgiori/mynewt_tasks_lesson.git
-</pre></div>
-
-
-<p>Change directory back to your project root and copy  the arduino_blinky target to a new target called task_tgt.</p>
-<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%"><span style="color: #000000">$</span> <span style="color: #000000">newt</span> <span style="color: #000000">target</span> <span style="color: #000000">copy</span> <span style="color: #000000">arduino_blinky</span> <span style="color: #000000">task_tgt</span>
-</pre></div>
-
-
-<p>Set a new app location.</p>
-<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%"><span style="color: #000000">$</span> <span style="color: #000000">newt</span> <span style="color: #000000">target</span> <span style="color: #000000">set</span> <span style="color: #000000">task_tgt</span> <span style="color: #000000">app=apps/mynewt_tasks_lesson</span>
-</pre></div>
-
-
-<p>Now let\u2019s take a look at our new code. First, notice that we have abandoned blinking, instead 
-choosing to use the <a href="http://mynewt.apache.org/latest/os/modules/console/console/"><em>console</em></a> 
-and <a href="http://mynewt.apache.org/latest/os/modules/shell/shell/"><em>shell</em></a> to follow our tasks through execution.</p>
-<p>Additionally, we have a number of different tasks:</p>
-<ul>
-<li>
-<p><strong>Task A</strong> (<code>a_task</code>):</p>
-<ul>
-<li><strong>Priority</strong>: 3 \u2192 2</li>
-<li><strong>Description</strong>: Task A is supposed to represent a task which frequently does a small amount 
-of work, such as one which rapidly polls a sensor for data. Much like <code>blinky_task</code>, Task A will 
-loop 10,000 times then wait 1 millisecond. Priority is changed by <code>timer_task</code> after the first simulation.</li>
-</ul>
-</li>
-<li>
-<p><strong>Task B</strong> (<code>b_task</code>):</p>
-<ul>
-<li><strong>Priority</strong>: 2 \u2192 3</li>
-<li><strong>Description</strong>: Task B is supposed to represent a task which does a large amount of work 
-relatively infrequently, such as one which sends/receives data from the cloud. Like work_task, 
-Task B will loop 1,000,000 times then wait 3 seconds. Priority is changed by timer_task after 
-the first simulation.</li>
-</ul>
-</li>
-<li>
-<p><strong>Timer Task</strong> (<code>timer_task</code>):</p>
-<ul>
-<li><strong>Priority</strong>: 1</li>
-<li><strong>Description</strong>: With default settings, Timer Task will wait 20 seconds then print the first 
-simulations data for Task A and B. Timer task will then swap A and B\u2019s priorities and restart the 
-simulation. After the second simulation, timer will again print simulation data then compare the 
-two and calculate a final speedup (simulation2 / simulation1).</li>
-</ul>
-</li>
-<li>
-<p><strong>Shell Task</strong>:</p>
-<ul>
-<li><strong>Priority</strong>: 0</li>
-<li><strong>Description</strong>: Task used by Shell behind the scenes to communicate with the serial port.</li>
-</ul>
-</li>
-</ul>
-<h3 id="connecting-to-the-serial-console">Connecting to the Serial Console</h3>
-<p>Before running our new app, we must first connect to the serial console. First make sure the 
-mynewt_arduino_zero repository is set to the develop branch. (Remove once changes have been 
-moved to master). </p>
-<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%">$ cd repos/mynewt_arduino_zero
-$ git checkout develop
-</pre></div>
-
-
-<p>You should already be familiar with the <a href="../../get_started/serial_access/">Serial Port Setup and Configuration</a>, but if
-you're not, you can go there now and then come back. </p>
-<h3 id="output-analysis">Output Analysis</h3>
-<p>Run our new target, task_tgt, and you should see an output similar to this:</p>
-<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%">Starting First Simulation...
-1:     Task B: 0% 
-78:     Task B: 1% 
-155:     Task B: 2% 
-257:     Task B: 3% 
-359:     Task B: 4% 
-461:     Task B: 5% 
-
-&lt;snip&gt;
-
-========== Timer Expired ==========
-
- &gt;&gt;&gt; Task A &lt;&lt;&lt;
-  Priority: 3
-  Loop count: 162849
-  Cycle count: 16.28
-  Run time: 1.40 sec
-
- &gt;&gt;&gt; Task B &lt;&lt;&lt;
-  Priority: 2
-  Loop count: 1345852
-  Cycle count: 1.34
-  Run time: 17.0 sec
-
- Total loops: 1508709
-
-20023:   Switching priorities and restarting...
-20111:   Task A looped
-20113:     Task B: 0% 
-20191:     Task B: 1% 
-20297:   Task A looped
-20356:     Task B: 2% 
-20483:   Task A looped
-20545:     Task B: 3% 
-20669:   Task A looped
-20734:     Task B: 4% 
-20855:   Task A looped
-20923:     Task B: 5% 
-
-&lt;snip&gt;
-
-========== Timer Expired ==========
-
- &gt;&gt;&gt; Task A &lt;&lt;&lt;
-  Priority: 2
-  Loop count: 1080000
-  Cycle count: 108.0
-  Run time: 9.28 sec
-
- &gt;&gt;&gt; Task B &lt;&lt;&lt;
-  Priority: 3
-  Loop count: 830356
-  Cycle count: 0.83
-  Run time: 10.72 sec
-
- Total loops: 1910404
-
-40058:
-
- Final Speedup (Sim2 / Sim1): 1.26
-</pre></div>
-
-
-<p>The console output reaffirms our previous prediction and makes both the scheduling differences 
-and subsequent efficiency boost far more apparent. Let\u2019s take a look at scheduling differences 
-before we delve into efficiency.</p>
-<p>In the first case, where Task B\u2019s priority is higher than that of Task A, we see A get starved 
-by Task B\u2019s long execution time. <strong>Starvation</strong> occurs when one task hogs the processor, essentially 
-\u201cstarving\u201d other tasks which also need to run. At the end of the first 20 second simulation period, 
-Task A has only run for 1.4 seconds compared to task B\u2019s 17 second running time \u2013 ouch. As explained 
-before, processes which are expected to run for long periods of time (e.g. network communication, 
-data processing) should be given higher priorities in order to combat starvation.</p>
-<p>In the second simulation with priorities swapped, we can see Task B only running during the 
-millisecond delays when Task A is <em>sleeping</em>. Although having Task B only run during these 
-delays slows its execution time, we benefit from un-starving Task A and using the processor 
-at a higher efficiency.</p>
-<p>The bottom line speedup gives us an immediate and clear indication that we have improved our 
-ability to process work (i.e throughput). In our second run, we processed an additional 400,000 
-loop iterations, equating to a 26% increase in efficiency. On a standard multi-core processor 
-found in every modern PC, a 1.26 speedup would be an ok result to adding multithreading capabilities 
-to a serial program. However, we accomplished this by simply setting priorities on a single core 
-processor \u2013 not bad!</p>
-<p>NOTE: Usually the the term \u201cspeedup\u201d is used within a parallel programming context and refers 
-to the change in execution time between a serial and parallel program executing over the same 
-problem. In this case we\u2019re using the term loosely to illustrate the priority change\u2019s effect 
-on scheduling and throughput in our specific context.</p>
-<h3 id="efficiency-isnt-everything">Efficiency Isn\u2019t Everything</h3>
-<p>Using the processor during every OS tick isn\u2019t always the best course of action. If we modify 
-Task A\u2019s delay to a tenth of a millisecond and turn off the console output, we can boost our 
-speedup to 1.44. This, however, reduces our ability to process work from Task B who ends up 
-only completing 18% of its work cycle after the second simulation. That would mean, at that 
-rate, Task B would take over a minute to finish one cycle.</p>
-<p>Feel free to play around with the testing parameters to study the different changes yourself!</p>
-<h3 id="conclusion">Conclusion</h3>
-<p>Moving forward, tasks are just the tip of the iceberg. The <a href="http://mynewt.apache.org/latest/os/core_os/context_switch/context_switch/"><em>scheduler</em></a>, 
-<a href="http://mynewt.apache.org/latest/os/core_os/event_queue/event_queue/"><em>event queues</em></a>, 
-<a href="http://mynewt.apache.org/latest/os/core_os/semaphore/semaphore/"><em>semaphores</em></a>, and 
-<a href="http://mynewt.apache.org/latest/os/core_os/mutex/mutex/"><em>mutexes</em></a> also add to tasks functionality, 
-increasing our ability as the developer to control greater numbers of tasks more intricately. For 
-example, when we switch the tasks priority, we have to tell the scheduler that our tasks priorities 
-have changed, allowing us us to use priorities dynamically. When running multiple tasks, logging 
-through either the built-in <a href="http://mynewt.apache.org/latest/os/modules/logs/logs/"><em>Logs</em></a> module 
-(not covered in this lesson) or through the serial console/shell can be very useful for debugging 
-your application. In the end, the way you manage your tasks depends on the context of your 
-application. You should assign priorities based on execution time, urgency, and frequency, among 
-other things.</p>
-<p>Keep blinking and happy hacking!</p>
                         
                         <div class="row">
                             
@@ -872,7 +708,7 @@ other things.</p>
     <li class="pull-right">
     
     <a href=../wi-fi_on_arduino/>
-        Next: Enable Wi-Fi on Arduino Zero
+        Next: Enable Wi-Fi on Arduino MKR1000
         <span class="fa fa-arrow-right"></span>
     </a>
     

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/facfa9ba/latest/os/tutorials/tutorials/index.html
----------------------------------------------------------------------
diff --git a/latest/os/tutorials/tutorials/index.html b/latest/os/tutorials/tutorials/index.html
index b1584e0..6cffce2 100644
--- a/latest/os/tutorials/tutorials/index.html
+++ b/latest/os/tutorials/tutorials/index.html
@@ -263,7 +263,7 @@
               
                 
     <li >
-      <a href="../wi-fi_on_arduino/">Enable Wi-Fi on Arduino Zero</a>
+      <a href="../wi-fi_on_arduino/">Enable Wi-Fi on Arduino MKR1000</a>
     </li>
 
               

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/facfa9ba/latest/os/tutorials/unit_test/index.html
----------------------------------------------------------------------
diff --git a/latest/os/tutorials/unit_test/index.html b/latest/os/tutorials/unit_test/index.html
index 4523244..a4065e0 100644
--- a/latest/os/tutorials/unit_test/index.html
+++ b/latest/os/tutorials/unit_test/index.html
@@ -263,7 +263,7 @@
               
                 
     <li >
-      <a href="../wi-fi_on_arduino/">Enable Wi-Fi on Arduino Zero</a>
+      <a href="../wi-fi_on_arduino/">Enable Wi-Fi on Arduino MKR1000</a>
     </li>
 
               
@@ -655,7 +655,7 @@ the message shown below.</p>
     
     <a href=../wi-fi_on_arduino/>
         <span class="fa fa-arrow-left"></span>
-        Previous: Enable Wi-Fi on Arduino Zero
+        Previous: Enable Wi-Fi on Arduino MKR1000
     </a>
     
     </li>

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/facfa9ba/latest/os/tutorials/wi-fi_on_arduino/index.html
----------------------------------------------------------------------
diff --git a/latest/os/tutorials/wi-fi_on_arduino/index.html b/latest/os/tutorials/wi-fi_on_arduino/index.html
index 2dbacde..1d327c8 100644
--- a/latest/os/tutorials/wi-fi_on_arduino/index.html
+++ b/latest/os/tutorials/wi-fi_on_arduino/index.html
@@ -10,7 +10,7 @@
         <link rel="canonical" href="http://mynewt.apache.org/os/tutorials/wi-fi_on_arduino/"> -->
         <link rel="shortcut icon" href="../../../img/favicon.ico">
 
-	    <title>Enable Wi-Fi on Arduino Zero - Apache Mynewt</title>
+	    <title>Enable Wi-Fi on Arduino MKR1000 - Apache Mynewt</title>
 
         <link href="../../../css/bootstrap-3.0.3.min.css" rel="stylesheet">
         <link rel="stylesheet" href="../../../css/highlight.css">
@@ -41,7 +41,7 @@
     </head>
 
 
-    <body class="Enable Wi-Fi on Arduino Zero">
+    <body class="Enable Wi-Fi on Arduino MKR1000">
 
 
         <div class="container">
@@ -263,7 +263,7 @@
               
                 
     <li class="active">
-      <a href="./">Enable Wi-Fi on Arduino Zero</a>
+      <a href="./">Enable Wi-Fi on Arduino MKR1000</a>
     </li>
 
               
@@ -467,7 +467,7 @@
         
       
       
-        <li>&raquo; Enable Wi-Fi on Arduino Zero</li>
+        <li>&raquo; Enable Wi-Fi on Arduino MKR1000</li>
       
     
     
@@ -475,46 +475,49 @@
 </div>
                         </div>
                         
-                            <h2 id="start-wi-fi-on-arduino-zero">Start Wi-Fi on Arduino Zero</h2>
-<p>This tutorial walks you through the steps to get your Arduino board on a Wi-Fi network.</p>
-<p><strong>Note:</strong> Wi-Fi support is currently available in the <code>develop</code> branch of Mynewt only. It will be merged into <code>master</code> branch when version 0.10 is released.</p>
+                            <h2 id="enable-wi-fi-on-arduino-mkr1000">Enable Wi-Fi on Arduino MKR1000</h2>
+<p>This tutorial shows you how to enable Wi-Fi on an Arduino MKR1000  board and connect to a Wi-Fi network.</p>
 <h3 id="prerequisites">Prerequisites</h3>
-<p>Before tackling this tutorial, it's best to read about Mynewt in the <a href="../../get_started/get_started">Introduction</a> section of this documentation.</p>
-<h3 id="equipment">Equipment</h3>
-<p>You will need the following equipment</p>
+<p>Ensure that you have met the following prerequisites before continuing with this tutorial:</p>
 <ul>
-<li>An Arduino Zero, Zero Pro or M0 Pro.<br />
-<strong>Note:</strong> Mynewt has not been tested on Arduino M0 which has no internal debugger support.</li>
-<li>An <a href="https://www.adafruit.com/product/2891">Arduino Wi-Fi Shield 101</a></li>
-<li>A computer that can connect to the Arduino board over USB</li>
-<li>A local Wi-Fi network that the computer is connected to and which the Arduino board can join.</li>
-<li>A USB cable (Type A to micro B) that can connect the computer to the Arduino (or a USB hub between the computer and the Arduino board)</li>
-<li>The Mynewt Release</li>
+<li>Have an Arduino MKR1000 board.</li>
+<li>Have Internet connectivity to fetch remote Mynewt components.</li>
+<li>Have a computer to build a Mynewt application and connect to the board over USB.</li>
+<li>Have a Micro-USB cable to connect the board and the computer.</li>
+<li>Have local Wi-Fi network that the computer is connected to and that the MKR1000 board can join.</li>
+<li>Have a <a href="../../get_started/serial_access/">Serial Port Setup</a>.</li>
+<li>Have a <a href="https://www.segger.com/jlink-debug-probes.html">Segger J-Link Debug Probe</a>.</li>
+<li>Have a <a href="https://www.segger.com/jlink-adapters.html#CM_9pin">J-Link 9 pin Cortex-M Adapter</a> that allows JTAG, SWD and SWO connections between J-Link and Cortex M based target hardware systems</li>
+<li>Install the <a href="https://www.segger.com/jlink-software.html">Segger JLINK Software and documentation pack</a>.</li>
+<li>Install the Newt tool and toolchains (See <a href="../../get_started/get_started/">Basic Setup</a>).</li>
+<li>Create a project space (directory structure) and populated it with the core code repository (apache-mynewt-core) or know how to as explained in <a href="../../../os/get_started/project_create">Creating Your First Project</a>.</li>
+<li>Read the Mynewt OS <a href="../../get_started/vocabulary/">Concepts</a> section.</li>
 </ul>
-<h3 id="install-mynewt-and-newt">Install Mynewt and Newt</h3>
-<ul>
-<li>If you have not already done so, install Newt as shown in the <a href="../../../newt/install/newt_mac/">Newt install tutorial</a>.</li>
-<li>If you installed Newt previously but need to update it, go to the newt git repo directory, pull the latest code from <code>develop</code> branch, and install the updated code.</li>
-</ul>
-<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%">   user@~/dev$ cd $GOPATH/src/mynewt.apache.org/newt
-   user@~/dev/go/src/mynewt.apache.org/newt$ git remote -v
-   origin   https://git-wip-us.apache.org/repos/asf/incubator-mynewt-newt.git (fetch)
-   origin   https://git-wip-us.apache.org/repos/asf/incubator-mynewt-newt.git (push)
-   user@~/dev/go/src/mynewt.apache.org/newt$ git pull origin develop
-   remote: Counting objects: 59, done.
-   &lt;snip&gt;
-   user@~/dev/go/src/mynewt.apache.org/newt$ cd newt
-   user@~/dev/go/src/mynewt.apache.org/newt/newt$ go install
-   user@~/dev$ cd ~/dev
+<h3 id="create-a-project">Create a Project</h3>
+<p>Create a new project if you do not have an existing one.  You can skip this step and proceed to <a href="#
+fetchexternal">fetch external packages</a> if you already created a project.</p>
+<p>Run the following commands to create a new project:</p>
+<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%">    $ mkdir ~/dev
+    $ cd ~/dev
+    $ newt new arduinowifi
+    Downloading project skeleton from apache/incubator-mynewt-blinky...
+    Installing skeleton in arduinowifi...
+    Project arduinowifi successfully created.
+    $ cd arduinowifi
+    $ newt install
+    apache-mynewt-core
+    $
 </pre></div>
 
 
-<ul>
-<li>If you have not already done so, create a project as shown in the Quick Start guide on how to <a href="../../get_started/project_create/">Create Your First Project</a>. Skip the testing and building the project steps in that tutorial since you will be defining a target for your Arduino board in this tutorial.</li>
-</ul>
-<p>Let's say your new project is named <code>arduinowifi</code>. You will henceforth be working in that project directory.</p>
 <p><br></p>
-<h3 id="fetch-external-packages-set-correct-version-to-download">Fetch External Packages, Set correct version to download</h3>
+<h3 id="fetch-external-packages"><a name="fetchexternal"></a> Fetch External Packages</h3>
+<p>Mynewt uses source code provided directly from the chip manufacturer for
+low level operations. Sometimes this code is licensed only for the specific manufacturer of the chipset and cannot live in
+the Apache Mynewt repository. That happens to be the case for the Arduino Zero board which uses Atmel SAMD21. Runtime's git
+hub repository hosts such external third-party packages and the Newt tool can fetch them.</p>
+<p>To fetch the package with MCU support for Atmel SAMD21 for Arduino Zero from the Runtime git repository, you need to add
+the repository to the <code>project.yml</code> file in your base project directory.</p>
 <p>Mynewt uses source code provided directly from the chip manufacturer for
 low level operations. Sometimes this code is licensed only for the specific manufacturer of the chipset and cannot live in the Apache Mynewt repository. That happens to be the case for the Arduino Zero board which uses Atmel SAMD21. Runtime's github repository hosts such external third-party packages and the Newt tool can fetch them.</p>
 <p>To fetch the package with MCU support for Atmel SAMD21 for Arduino Zero from the Runtime git repository, you need to add
@@ -526,7 +529,6 @@ the repository to the <code>project.yml</code> file in your base project directo
 <p>Here is an example <code>project.yml</code> file with the Arduino Zero repository
 added. The sections with <code>mynewt_arduino_zero</code> that need to be added to
 your project file are highlighted.</p>
-<p>Also highlighted is the <code>0-dev</code> version for both the repositories to ensure code is downloaded from the <code>develop</code> branch.</p>
 <div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%">$ more project.yml
 project.name: &quot;my_project&quot;
 
@@ -536,23 +538,22 @@ project.repositories:
 </span>
 repository.apache-mynewt-core:
     type: github
-<span style="background-color: #ffffcc">    vers: 0-dev
-</span>    user: apache
+    vers: 1-latest
+    user: apache
     repo: incubator-mynewt-core
 
 <span style="background-color: #ffffcc">repository.mynewt_arduino_zero:
 </span><span style="background-color: #ffffcc">    type: github
-</span><span style="background-color: #ffffcc">    vers: 0-dev
+</span><span style="background-color: #ffffcc">    vers: 1-latest
 </span><span style="background-color: #ffffcc">    user: runtimeinc
 </span><span style="background-color: #ffffcc">    repo: mynewt_arduino_zero
 </span>$
 </pre></div>
 
 
-<p><br></p>
-<p>Once you've edited your <code>project.yml</code> file, the next step is to install the
-project dependencies, this can be done with the <code>newt install</code> command
-(to see more output, provide the <code>-v</code> verbose option.):</p>
+<p><br>
+<br>
+Install the project dependencies using the <code>newt install</code> command (you can specify <code>-v</code> for verbose output):</p>
 <div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%">$ newt install
 apache-mynewt-core
 mynewt_arduino_zero
@@ -560,145 +561,174 @@ $
 </pre></div>
 
 
+<p><strong>NOTE:</strong> If there has been a new release of a repo used in your project since you last installed it, the <code>1-latest</code> version for the repo in the <code>project.yml</code> file will refer to the new release and will not match the installed files. In that case you will get an error message saying so and you will need to run <code>newt upgrade</code> to overwrite the existing files with the latest codebase.</p>
 <p><br></p>
-<h3 id="create-your-bootloader-target">Create your bootloader target</h3>
-<p>Next, you need to tell Newt what to build.  For the Arduino Zero, we are going to
-generate both a bootloader, and an image target.</p>
-<p>To generate the bootloader target, you need to specify the following options. The output of the commands (indicating success) have been suppressed for easier readability.</p>
-<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%">$ newt target create arduino_boot
-$ newt target set arduino_boot bsp=@mynewt_arduino_zero/hw/bsp/arduino_zero
-$ newt target set arduino_boot app=@apache-mynewt-core/apps/boot
-$ newt target set arduino_boot build_profile=optimized
+<h3 id="create-a-target-for-the-bootloader">Create a Target for the Bootloader</h3>
+<p>You need to create two targets for the MKR1000 board, one for the bootloader and one for the <code>winc1500_wifi</code> application. 
+<br>
+Run the following <code>newt target</code> commands, from your project directory, to create a bootloader target.  We name the target <code>mkr1000_boot</code>.</p>
+<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%">$ newt target create mkr1000_boot
+$ newt target set mkr1000_boot bsp=@mynewt_arduino_zero/hw/bsp/arduino_mkr1000
+$ newt target set mkr1000_boot app=@apache-mynewt-core/apps/boot
+$ newt target set mkr1000_boot build_profile=optimized
+$ newt target set mkr1000_boot syscfg=BSP_ARDUINO_ZERO_PRO=1
 </pre></div>
 
 
 <p><br></p>
-<p>If you have an Arduino Zero Pro or M0 Pro, you have to set the following next:</p>
-<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%">$ newt target set arduino_boot features=arduino_zero_pro
+<h3 id="create-a-target-for-the-wi-fi-application">Create a Target for the Wi-Fi Application</h3>
+<p>Run the following <code>newt target</code> commands to create a target for the <code>winc1500_wifi</code> application in the arduino repository.  We name the application target <code>mkr1000_wifi</code>.</p>
+<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%">$ newt target create mkr1000_wifi
+$ newt target set mkr1000_wifi app=@mynewt_arduino_zero/apps/winc1500_wifi
+$ newt target set mkr1000_wifi bsp=@mynewt_arduino_zero/hw/bsp/arduino_mkr1000
+$ newt target set mkr1000_wifi build_profile=debug
+$ newt target set mkr1000_boot syscfg=BSP_ARDUINO_ZERO_PRO=1
 </pre></div>
 
 
-<p>If you have an Arduino Zero, you have to set the following instead:</p>
-<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%">$ newt target set arduino_boot features=arduino_zero
+<p><br></p>
+<h3 id="build-the-bootloader">Build the Bootloader</h3>
+<p>Run the <code>newt build mkr1000_boot</code> command to build the bootloader:</p>
+<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%">$ newt build mkr1000_boot
+Building target targets/mkr1000_boot
+Compiling repos/apache-mynewt-core/boot/bootutil/src/image_rsa.c
+Compiling repos/apache-mynewt-core/boot/bootutil/src/image_ec256.c
+Compiling repos/apache-mynewt-core/crypto/mbedtls/src/aes.c
+Compiling repos/apache-mynewt-core/boot/bootutil/src/image_ec.c
+Compiling repos/apache-mynewt-core/boot/bootutil/src/image_validate.c
+Compiling repos/apache-mynewt-core/apps/boot/src/boot.c
+
+       ...
+
+Archiving util_mem.a
+Linking ~/dev/arduinowifi/bin/targets/mkr1000_boot/app/apps/boot/boot.elf
+Target successfully built: targets/mkr1000_boot
+$
 </pre></div>
 
 
 <p><br></p>
-<h3 id="build-your-bootloader">Build your bootloader</h3>
-<p>Once you've configured the bootloader target, the next step is to build the bootloader for your Arduino. You can do this by using the <code>newt build</code> command:</p>
-<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%">$ newt build arduino_boot
-Compiling boot.c
-Archiving boot.a
-Compiling fs_cli.c
-Compiling fs_dirent.c
-Compiling fs_file.c
-Compiling fs_mkdir.c
-&lt;snip&gt;
-App successfully built: ~/dev/arduinowifi/bin/arduino_boot/apps/boot/boot.elf
+<h3 id="build-the-wi-fi-application">Build the Wi-Fi Application</h3>
+<p>Run the <code>newt build mkr1000_wifi</code> command to build the wi-fi application image:</p>
+<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%">$newt build mkr1000_wifi
+Building target targets/mkr1000_wifi
+Compiling repos/apache-mynewt-core/boot/bootutil/src/image_ec.c
+Compiling repos/apache-mynewt-core/boot/bootutil/src/image_ec256.c
+Compiling repos/apache-mynewt-core/boot/bootutil/src/image_rsa.c
+Compiling repos/apache-mynewt-core/boot/bootutil/src/image_validate.c
+Compiling repos/apache-mynewt-core/boot/bootutil/src/loader.c
+           ...
+
+Archiving util_mem.a
+Linking ~/dev/arduinowifi/bin/targets/mkr1000_wifi/app/apps/winc1500_wifi/winc1500_wifi.elf
+Target successfully built: targets/mkr1000_wifi
+$
 </pre></div>
 
 
-<p>If this command finishes successfully, you have successfully built the Arduino
-bootloader, and the next step is to build your application for the Arduino
-board.</p>
 <p><br></p>
-<h3 id="build-your-blinky-app">Build your blinky app</h3>
-<p>To create and download your application, you create another target, this one pointing to the application you want to download to the Arduino board.  In this tutorial,  we will use the Wi-Fi application that comes in the arduino repository, <code>apps/winc1500_wifi</code>:</p>
-<p><strong>Note</strong>: Remember to set features to <code>arduino_zero</code> if your board is Arduino Zero and not a Pro!</p>
-<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%">$ newt target create arduino_wifi
-$ newt target set arduino_wifi app=@mynewt_arduino_zero/apps/winc1500_wifi
-$ newt target set arduino_wifi bsp=@mynewt_arduino_zero/hw/bsp/arduino_zero
-$ newt target set arduino_wifi build_profile=debug
-<span style="background-color: #ffffcc">$ newt target set arduino_wifi features=arduino_zero_pro
-</span></pre></div>
+<h3 id="sign-and-create-the-wi-fi-application-image">Sign and Create the Wi-Fi Application Image</h3>
+<p>Run the <code>newt create-image mkr1000_wifi 1.0.0</code> command to sign and create an image file for the Wi-Fi application. You may assign an arbitrary version (e.g. 1.0.0) number.</p>
+<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%">$newt create-image  mkr1000_wifi 1.0.0
+Compiling bin/targets/mkr1000_wifi/generated/src/mkr1000_wifi-sysinit-app.c
+Archiving mkr1000_wifi-sysinit-app.a
+Linking ~/dev/arduinowifi/bin/targets/mkr1000_wifi/app/apps/winc1500_wifi/winc1500_wifi.elf
+App image succesfully generated: ~/dev/arduinowifi/bin/targets/mkr1000_wifi/app/apps/winc1500_wifi/winc1500_wifi.img
+$
+</pre></div>
 
 
 <p><br></p>
-<p>You can now build the target, with <code>newt build</code>:</p>
-<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%">$ newt build arduino_wifi
-Building target targets/arduino_wifi
-Compiling main.c
-Archiving winc1500_wifi.a
-Compiling fs_cli.c
-Compiling fs_dirent.c
-Compiling fs_file.c
-Compiling fs_mkdir.c
-&lt;snip&gt;
-Linking winc1500_wifi.elf
-App successfully built: ~/dev/arduinowifi/bin/arduino_wifi/apps/winc1500_wifi/winc1500_wifi.elf
+<h3 id="connect-to-the-board">Connect to the Board</h3>
+<ul>
+<li>Connect your computer to the MKR1000 board with the Micro-USB cable. </li>
+<li>Connect the debug probe to the JTAG port on the board using the Jlink 9-pin adapter and cable. </li>
+</ul>
+<p><br>
+<img alt="J-Link debug probe to MKR1000" src="../pics/mkr1000-jlink.jpg" title="Connecting J-Link debug probe to MKR1000" />
+<br>
+<p>
+<br>
+Mynewt will download and debug the target through this port. You should see a green LED come on and indicates the board has power. </p>
+<p><br></p>
+<h3 id="load-the-bootloader-onto-the-board">Load the Bootloader onto the Board</h3>
+<p>Run the <code>newt load mkr1000_boot</code> command to load the bootloader onto the board:</p>
+<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%">$ newt load mkr1000_boot
+Loading bootloader
+$
 </pre></div>
 
 
-<p><font color="#FF0000"> Congratulations! </font> You have successfully built your Wi-Fi application. Now it's time to load both the bootloader and application onto the target.</p>
 <p><br></p>
-<h3 id="connect-the-target">Connect the Target</h3>
-<p>Place the Wi-Fi shield on top of the Arduino board and push it in place, making sure the pins and pinholes are properly aligned. Connect your computer to the Arduino board with the Micro-USB cable through the Programming Port as shown below. Mynewt will download and debug the target through this port. You should see a little green LED come on. That means the board has power.</p>
-<p>No external debugger is required.  The Arduino boards listed in this tutorial come with an internal debugger that can be accessed by Mynewt.</p>
-<p>The picture below shows the setup.</p>
-<p><img alt="Arduino with Wi-Fi shield" src="../pics/arduino_wifi.png" title="WifiShield" /></p>
-<p><br></p>
-<h3 id="download-the-bootloader">Download the Bootloader</h3>
-<p>Execute the command to download the bootloader.</p>
-<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%">    <span style="color: #000000">$</span> <span style="color: #000000">newt</span> <span style="color: #000000">load</span> <span style="color: #000000">arduino_boot</span>
+<h3 id="load-the-wi-fi-application-image-onto-the-board">Load the Wi-Fi Application Image onto the Board</h3>
+<p>Run the <code>newt load arduino_wifi</code> command to load the wifi application onto the board:</p>
+<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%">$ newt load mkr1000_wifi
+Loading app image into slot 1
+$
 </pre></div>
 
 
-<p>If the newt tool finishes without error, that means the bootloader has been
-successfully loaded onto the target.</p>
-<p><br></p>
-<p><font color="#FF0000"> Reminder if you are using Docker: </font> When working with actual hardware, remember that each board has an ID. If you swap boards and do not refresh the USB Device Filter on the VirtualBox UI, the ID might be stale and the Docker instance may not be able to see the board correctly. For example, you may see an error message like <code>Error: unable to find CMSIS-DAP device</code> when you try to load or run an image on the board. In that case, you need to click on the USB link in VirtualBox UI, remove the existing USB Device Filter (e.g. "Atmel Corp. EDBG CMSIS-DAP[0101]") by clicking on the "Removes selected USB filter" button, and add a new filter by clicking on the "Adds new USB filter" button.</p>
 <p><br></p>
-<h3 id="load-the-application-image">Load the Application Image</h3>
-<p>Now that the bootloader is downloaded to the target, the next steps are to create an image and load it onto the target device.</p>
-<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%">$ newt create-image arduino_wifi 1.0.0
-App image succesfully generated: ~/dev/arduinowifi/bin/arduino_wifi/apps/winc1500_wifi/winc1500_wifi.img
-Build manifest: ~/dev/arduinowifi/bin/arduino_wifi/apps/winc1500_wifi/manifest.json
-$ newt load arduino_wifi
-Loading image
+<h3 id="setup-a-serial-connection-between-your-computer-and-the-board">Setup a Serial Connection Between Your Computer and the Board</h3>
+<p>Set up a serial connection from your computer to the MKR1000 board (See <a href="../../get_started/serial_access/">Serial Port Setup</a>). On the MKR1000 board, the TX pin is PIN 14  and the RX pin in PIN 13.
+<br>
+<br>
+<img alt="Serial Connection to MKR1000" src="../pics/mkr1000-serial.jpg" title="Connecting to the MKR1000 Serial Port" />
+<br>
+<p>
+<br>
+Locate the port, in the /dev directory on your computer, that the serial connection uses. It should be of the type <code>tty.usbserial-&lt;some identifier&gt;</code>.</p>
+<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%">$ ls /dev/tty*usbserial*
+/dev/tty.usbserial-1d13
 $
 </pre></div>
 
 
-<p><br></p>
 <h3 id="start-wi-fi-via-console">Start Wi-Fi via console</h3>
-<p>Use a terminal emulation program to communicate with the board over the serial port. This tutorial shows a Minicom set up. You will have to find out what the usbserial port number is on your computer/laptop (<code>ls /dev</code>) and specify it as the -D flag value. Type <code>wifi start</code> to start Wi-Fi.</p>
-<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%">$ minicom -D /dev/tty.usbmodem141122 -b 115200
+<p>Use a terminal emulation program to communicate with the board over the serial port. This tutorial shows a Minicom set up. Run the minicom command with the serial port you located on your computer:</p>
+<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%">$ minicom -D /dev/tty.usbserial-1d13 -b 115200
+</pre></div>
 
 
-Welcome to minicom 2.7
+<p><br>
+Type <code>wifi start</code> to start Wi-Fi.</p>
+<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%">Welcome to minicom 2.7
 
-OPTIONS:
-Compiled on Nov 24 2015, 16:14:21.
-Port /dev/tty.usbmodem141122, 10:11:40
+OPTIONS: 
+Compiled on Mar 18 2016, 04:59:47.
+Port /dev/tty.usbserial-1d13, 17:06:09
 
 Press Meta-Z for help on special keys
 
 <span style="background-color: #ffffcc">wifi start
-</span>119470:(APP)(INFO)Chip ID 1502b1
+</span>3293703:(APP)(INFO)Chip ID 1503a0
 (APP)(INFO)Firmware ver   : 19.4.4
 (APP)(INFO)Min driver ver : 19.3.0
-(APP)(INFO)Curr driver ver: 19.3.0                                              
-wifi_init : 0                        
+(APP)(INFO)Curr driver ver: 19.3.0
+wifi_init : 0
 </pre></div>
 
 
-<p>Connect to the local Wi-Fi network. Then start network services. The commands to be issued are highlighted below. In the example below, the network interface on the Arduino board gets an IP address of <code>192.168.0.117</code>.</p>
-<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%"><span style="background-color: #ffffcc">wifi connect &lt;Wi-Fi network name&gt; &lt;password&gt;
-</span>16906:wifi_request_scan : 0
-17805:scan_results 16: 0
-17816:wifi_connect : 0
-18813:connect_done : 0
-18821:dhcp done 192.168.0.117
-18932:get sys time response 2016.8.2-18.4.43
-<span style="background-color: #ffffcc">net service
+<p><br>
+Connect to the local Wi-Fi network.   Note that the MKR1000 board only supports 2.4 GHz Wi-Fi networks.</p>
+<p>Run the <code>wifi connect</code> command and specify your network <ssid> and <password>. After you are connected to your wi-fi network, run the <code>net service</code> command to start network services.</p>
+<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%"><span style="background-color: #ffffcc">wifi connect  &lt;ssid&gt; &lt;password&gt;
+</span>3362937:wifi_request_scan : 0
+3363843:scan_results 9: 0
+3363855:wifi_connect : 0
+3364852:connect_done : 0
+3364861:dhcp done 10.0.0.4
+3365470:get sys time response 2017.3.31-0.9.57                                  
+<span style="background-color: #ffffcc">net service   
 </span></pre></div>
 
 
-<h3 id="establish-tcp-connection-and-talk">Establish TCP connection and talk!</h3>
-<p>From a terminal on your computer/laptop, try telneting to ports 7, 9, or 19 using the IP address your board has been assigned. Type something on this terminal and see the console output (on minicom). Can you see the difference in the behaviors?</p>
-<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%">$ telnet 192.168.0.117 7
-Trying 192.168.0.117...
-Connected to 192.168.0.117.
+<p>The board is connected to the network succesfully and has IP address: 10.0.0.4</p>
+<h3 id="establish-tcp-connection-and-talk">Establish TCP Connection and Talk!</h3>
+<p>From a terminal on your computer, telnet to ports 7, 9, or 19 using the IP address your board has been assigned. Type something on this terminal and see the console output (on minicom). Can you see the difference in the behaviors?</p>
+<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%">$telnet 10.0.0.4 7
+Trying 10.0.0.4...
+Connected to 10.0.0.4.
 Escape character is &#39;^]&#39;.
 hello
 hello
@@ -709,7 +739,6 @@ $
 
 
 <p>One port echoes whatever is typed, one discards everything it gets, and the third spews out bits constantly. Type <code>wifi stop</code> to disable WiFi on the Arduino board.</p>
-<p>Hope you had fun!</p>
                         
                         <div class="row">
                             

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/facfa9ba/latest/sitemap.xml
----------------------------------------------------------------------
diff --git a/latest/sitemap.xml b/latest/sitemap.xml
index 1c69dde..be0fcd9 100644
--- a/latest/sitemap.xml
+++ b/latest/sitemap.xml
@@ -4,7 +4,7 @@
     
     <url>
      <loc>http://mynewt.apache.org/</loc>
-     <lastmod>2017-03-26</lastmod>
+     <lastmod>2017-03-31</lastmod>
      <changefreq>daily</changefreq>
     </url>
     
@@ -13,7 +13,7 @@
         
     <url>
      <loc>http://mynewt.apache.org/pages/ble/</loc>
-     <lastmod>2017-03-26</lastmod>
+     <lastmod>2017-03-31</lastmod>
      <changefreq>daily</changefreq>
     </url>
         
@@ -22,7 +22,7 @@
     
     <url>
      <loc>http://mynewt.apache.org/quick-start/</loc>
-     <lastmod>2017-03-26</lastmod>
+     <lastmod>2017-03-31</lastmod>
      <changefreq>daily</changefreq>
     </url>
     
@@ -30,7 +30,7 @@
     
     <url>
      <loc>http://mynewt.apache.org/about/</loc>
-     <lastmod>2017-03-26</lastmod>
+     <lastmod>2017-03-31</lastmod>
      <changefreq>daily</changefreq>
     </url>
     
@@ -38,7 +38,7 @@
     
     <url>
      <loc>http://mynewt.apache.org/talks/</loc>
-     <lastmod>2017-03-26</lastmod>
+     <lastmod>2017-03-31</lastmod>
      <changefreq>daily</changefreq>
     </url>
     
@@ -46,7 +46,7 @@
     
     <url>
      <loc>http://mynewt.apache.org/download/</loc>
-     <lastmod>2017-03-26</lastmod>
+     <lastmod>2017-03-31</lastmod>
      <changefreq>daily</changefreq>
     </url>
     
@@ -54,7 +54,7 @@
     
     <url>
      <loc>http://mynewt.apache.org/community/</loc>
-     <lastmod>2017-03-26</lastmod>
+     <lastmod>2017-03-31</lastmod>
      <changefreq>daily</changefreq>
     </url>
     
@@ -62,7 +62,7 @@
     
     <url>
      <loc>http://mynewt.apache.org/events/</loc>
-     <lastmod>2017-03-26</lastmod>
+     <lastmod>2017-03-31</lastmod>
      <changefreq>daily</changefreq>
     </url>
     
@@ -71,7 +71,7 @@
         
     <url>
      <loc>http://mynewt.apache.org/os/introduction/</loc>
-     <lastmod>2017-03-26</lastmod>
+     <lastmod>2017-03-31</lastmod>
      <changefreq>daily</changefreq>
     </url>
         
@@ -83,7 +83,7 @@
         
     <url>
      <loc>http://mynewt.apache.org/os/get_started/vocabulary/</loc>
-     <lastmod>2017-03-26</lastmod>
+     <lastmod>2017-03-31</lastmod>
      <changefreq>daily</changefreq>
     </url>
         
@@ -123,13 +123,13 @@
         
     <url>
      <loc>http://mynewt.apache.org/faq/how_to_edit_docs/</loc>
-     <lastmod>2017-03-26</lastmod>
+     <lastmod>2017-03-31</lastmod>
      <changefreq>daily</changefreq>
     </url>
         
     <url>
      <loc>http://mynewt.apache.org/faq/answers/</loc>
-     <lastmod>2017-03-26</lastmod>
+     <lastmod>2017-03-31</lastmod>
      <changefreq>daily</changefreq>
     </url>
         

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/facfa9ba/newtmgr/index.html
----------------------------------------------------------------------
diff --git a/newtmgr/index.html b/newtmgr/index.html
new file mode 100644
index 0000000..c58608a
--- /dev/null
+++ b/newtmgr/index.html
@@ -0,0 +1,6 @@
+<html>
+  <head>
+      <meta name="go-import" content="mynewt.apache.org/newtmgr git https://git-wip-us.apache.org/repos/asf/incubator-mynewt-newtmgr.git">
+      <meta http-equiv="refresh" content="0; url=/">
+  </head>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/facfa9ba/newtmgr/newtmgr/index.html
----------------------------------------------------------------------
diff --git a/newtmgr/newtmgr/index.html b/newtmgr/newtmgr/index.html
new file mode 100644
index 0000000..c58608a
--- /dev/null
+++ b/newtmgr/newtmgr/index.html
@@ -0,0 +1,6 @@
+<html>
+  <head>
+      <meta name="go-import" content="mynewt.apache.org/newtmgr git https://git-wip-us.apache.org/repos/asf/incubator-mynewt-newtmgr.git">
+      <meta http-equiv="refresh" content="0; url=/">
+  </head>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/facfa9ba/newtmgr/nmxact/index.html
----------------------------------------------------------------------
diff --git a/newtmgr/nmxact/index.html b/newtmgr/nmxact/index.html
new file mode 100644
index 0000000..c58608a
--- /dev/null
+++ b/newtmgr/nmxact/index.html
@@ -0,0 +1,6 @@
+<html>
+  <head>
+      <meta name="go-import" content="mynewt.apache.org/newtmgr git https://git-wip-us.apache.org/repos/asf/incubator-mynewt-newtmgr.git">
+      <meta http-equiv="refresh" content="0; url=/">
+  </head>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/facfa9ba/os/tutorials/pics/mkr1000-jlink.jpg
----------------------------------------------------------------------
diff --git a/os/tutorials/pics/mkr1000-jlink.jpg b/os/tutorials/pics/mkr1000-jlink.jpg
new file mode 100755
index 0000000..cfa09ca
Binary files /dev/null and b/os/tutorials/pics/mkr1000-jlink.jpg differ

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/facfa9ba/os/tutorials/pics/mkr1000-serial.jpg
----------------------------------------------------------------------
diff --git a/os/tutorials/pics/mkr1000-serial.jpg b/os/tutorials/pics/mkr1000-serial.jpg
new file mode 100755
index 0000000..f4e3819
Binary files /dev/null and b/os/tutorials/pics/mkr1000-serial.jpg differ

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/facfa9ba/sitemap.xml
----------------------------------------------------------------------
diff --git a/sitemap.xml b/sitemap.xml
index 7379b52..947ef46 100644
--- a/sitemap.xml
+++ b/sitemap.xml
@@ -4,7 +4,7 @@
     
     <url>
      <loc>http://mynewt.apache.org/</loc>
-     <lastmod>2017-03-26</lastmod>
+     <lastmod>2017-03-31</lastmod>
      <changefreq>daily</changefreq>
     </url>
     
@@ -13,13 +13,13 @@
         
     <url>
      <loc>http://mynewt.apache.org/pages/ble/</loc>
-     <lastmod>2017-03-26</lastmod>
+     <lastmod>2017-03-31</lastmod>
      <changefreq>daily</changefreq>
     </url>
         
     <url>
      <loc>http://mynewt.apache.org/pages/securitybullets/</loc>
-     <lastmod>2017-03-26</lastmod>
+     <lastmod>2017-03-31</lastmod>
      <changefreq>daily</changefreq>
     </url>
         
@@ -28,7 +28,7 @@
     
     <url>
      <loc>http://mynewt.apache.org/quick-start/</loc>
-     <lastmod>2017-03-26</lastmod>
+     <lastmod>2017-03-31</lastmod>
      <changefreq>daily</changefreq>
     </url>
     
@@ -36,7 +36,7 @@
     
     <url>
      <loc>http://mynewt.apache.org/about/</loc>
-     <lastmod>2017-03-26</lastmod>
+     <lastmod>2017-03-31</lastmod>
      <changefreq>daily</changefreq>
     </url>
     
@@ -44,7 +44,7 @@
     
     <url>
      <loc>http://mynewt.apache.org/talks/</loc>
-     <lastmod>2017-03-26</lastmod>
+     <lastmod>2017-03-31</lastmod>
      <changefreq>daily</changefreq>
     </url>
     
@@ -52,7 +52,7 @@
     
     <url>
      <loc>http://mynewt.apache.org/download/</loc>
-     <lastmod>2017-03-26</lastmod>
+     <lastmod>2017-03-31</lastmod>
      <changefreq>daily</changefreq>
     </url>
     
@@ -60,7 +60,7 @@
     
     <url>
      <loc>http://mynewt.apache.org/community/</loc>
-     <lastmod>2017-03-26</lastmod>
+     <lastmod>2017-03-31</lastmod>
      <changefreq>daily</changefreq>
     </url>
     
@@ -68,7 +68,7 @@
     
     <url>
      <loc>http://mynewt.apache.org/events/</loc>
-     <lastmod>2017-03-26</lastmod>
+     <lastmod>2017-03-31</lastmod>
      <changefreq>daily</changefreq>
     </url>
     
@@ -77,7 +77,7 @@
         
     <url>
      <loc>http://mynewt.apache.org/os/introduction/</loc>
-     <lastmod>2017-03-26</lastmod>
+     <lastmod>2017-03-31</lastmod>
      <changefreq>daily</changefreq>
     </url>
         
@@ -89,7 +89,7 @@
         
     <url>
      <loc>http://mynewt.apache.org/os/get_started/vocabulary/</loc>
-     <lastmod>2017-03-26</lastmod>
+     <lastmod>2017-03-31</lastmod>
      <changefreq>daily</changefreq>
     </url>
         
@@ -129,13 +129,13 @@
         
     <url>
      <loc>http://mynewt.apache.org/faq/how_to_edit_docs/</loc>
-     <lastmod>2017-03-26</lastmod>
+     <lastmod>2017-03-31</lastmod>
      <changefreq>daily</changefreq>
     </url>
         
     <url>
      <loc>http://mynewt.apache.org/faq/answers/</loc>
-     <lastmod>2017-03-26</lastmod>
+     <lastmod>2017-03-31</lastmod>
      <changefreq>daily</changefreq>
     </url>