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 2015/11/10 09:24:07 UTC

[11/14] incubator-mynewt-site git commit: initial commit to the refreshed asf-site

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/369ba988/chapter2/project2/index.html
----------------------------------------------------------------------
diff --git a/chapter2/project2/index.html b/chapter2/project2/index.html
new file mode 100644
index 0000000..5da3a2f
--- /dev/null
+++ b/chapter2/project2/index.html
@@ -0,0 +1,625 @@
+<!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.incubator.apache.org/index.html/chapter2/project2/">
+        <link rel="shortcut icon" href="../../img/favicon.ico">
+
+	<title>Project 2 - Mynewt</title>
+
+        <link href="../../css/bootstrap-custom.min.css" rel="stylesheet">
+        <link href="../../css/font-awesome-4.0.3.css" rel="stylesheet">
+        <link href="../../css/base.css" rel="stylesheet">
+        <link rel="stylesheet" href="../../css/highlight.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]-->
+
+        
+    </head>
+
+    <body>
+
+        <div class="navbar navbar-default 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>
+            
+
+            <!-- Main title -->
+            <a class="navbar-brand" href="../..">Mynewt</a>
+        </div>
+
+        <!-- Expanded navigation -->
+        <div class="navbar-collapse collapse">
+            
+                <!-- Main navigation -->
+                <ul class="nav navbar-nav">
+                
+                
+                    <li >
+                        <a href="../..">Home</a>
+                    </li>
+                
+                
+                
+                    <li class="dropdown">
+                        <a href="#" class="dropdown-toggle" data-toggle="dropdown">Get Started <b class="caret"></b></a>
+                        <ul class="dropdown-menu">
+                        
+                            
+<li >
+    <a href="../../chapter1/newt_concepts/">Newt Concepts</a>
+</li>
+
+                        
+                            
+<li >
+    <a href="../../chapter1/project1/">Blinky, The First Project</a>
+</li>
+
+                        
+                        </ul>
+                    </li>
+                
+                
+                
+                    <li class="dropdown active">
+                        <a href="#" class="dropdown-toggle" data-toggle="dropdown">Get Acclimated <b class="caret"></b></a>
+                        <ul class="dropdown-menu">
+                        
+                            
+<li >
+    <a href="../vocabulary/">Understanding Newt Terms</a>
+</li>
+
+                        
+                            
+<li class="active">
+    <a href="./">Project 2</a>
+</li>
+
+                        
+                            
+<li >
+    <a href="../project3/">Project 3</a>
+</li>
+
+                        
+                        </ul>
+                    </li>
+                
+                
+                
+                    <li class="dropdown">
+                        <a href="#" class="dropdown-toggle" data-toggle="dropdown">Newt Tool <b class="caret"></b></a>
+                        <ul class="dropdown-menu">
+                        
+                            
+<li >
+    <a href="../../chapter3/newt_ops/">Command structure</a>
+</li>
+
+                        
+                            
+<li >
+    <a href="../../chapter3/newt_tool_reference/">Command list</a>
+</li>
+
+                        
+                        </ul>
+                    </li>
+                
+                
+                
+                    <li class="dropdown">
+                        <a href="#" class="dropdown-toggle" data-toggle="dropdown">Newt OS <b class="caret"></b></a>
+                        <ul class="dropdown-menu">
+                        
+                            
+<li >
+    <a href="../../chapter4/newt_os/">Features</a>
+</li>
+
+                        
+                        </ul>
+                    </li>
+                
+                
+                
+                    <li class="dropdown">
+                        <a href="#" class="dropdown-toggle" data-toggle="dropdown">Modules <b class="caret"></b></a>
+                        <ul class="dropdown-menu">
+                        
+                            
+<li >
+    <a href="../../chapter5/mods/">Overview</a>
+</li>
+
+                        
+                            
+<li >
+    <a href="../../chapter5/console/">Console</a>
+</li>
+
+                        
+                        </ul>
+                    </li>
+                
+                
+                
+                    <li class="dropdown">
+                        <a href="#" class="dropdown-toggle" data-toggle="dropdown">Packaging it up <b class="caret"></b></a>
+                        <ul class="dropdown-menu">
+                        
+                            
+<li >
+    <a href="../../chapter6/dist/">Creating Packages</a>
+</li>
+
+                        
+                        </ul>
+                    </li>
+                
+                
+                </ul>
+            
+
+            <ul class="nav navbar-nav navbar-right">
+                <li>
+                    <a href="#" data-toggle="modal" data-target="#mkdocs_search_modal">
+                        <i class="fa fa-search"></i> Search
+                    </a>
+                </li>
+                
+                    <li >
+                        <a rel="next" href="../vocabulary/">
+                            <i class="fa fa-arrow-left"></i> Previous
+                        </a>
+                    </li>
+                    <li >
+                        <a rel="prev" href="../project3/">
+                            Next <i class="fa fa-arrow-right"></i>
+                        </a>
+                    </li>
+                
+                
+            </ul>
+        </div>
+    </div>
+</div>
+
+        <div class="container">
+            
+                <div class="col-md-3"><div class="bs-sidebar hidden-print affix well" role="complementary">
+    <ul class="nav bs-sidenav">
+    
+        <li class="main active"><a href="#project-2-blinky-on-additional-boards">Project 2 - Blinky on additional boards</a></li>
+        
+            <li><a href="#objective">Objective</a></li>
+        
+            <li><a href="#stm32f303vc-mcu">STM32F303VC MCU</a></li>
+        
+            <li><a href="#nrf52-series">nRF52 Series</a></li>
+        
+    
+    </ul>
+</div></div>
+                <div class="col-md-9" role="main">
+
+<h2 id="project-2-blinky-on-additional-boards">Project 2 - Blinky on additional boards<a class="headerlink" href="#project-2-blinky-on-additional-boards" title="Permanent link">&para;</a></h2>
+<h3 id="objective">Objective<a class="headerlink" href="#objective" title="Permanent link">&para;</a></h3>
+<p>The goal of this tutorial is to download a generic firmware skeleton ("bootstrap image") that applies to any hardware and then throw in additional applicable eggs to generate a build for a specific board. </p>
+<p>The following target hardware chips are covered:</p>
+<ul>
+<li><a href="#stm32f303vc-mcu">STM32F303VC MCU</a> from STMicroelectronics</li>
+<li><a href="#nrf52-series">nRF52 Series</a> from Nordic Semiconductors </li>
+</ul>
+<h3 id="stm32f303vc-mcu">STM32F303VC MCU<a class="headerlink" href="#stm32f303vc-mcu" title="Permanent link">&para;</a></h3>
+<h4 id="hardware-needed">Hardware needed<a class="headerlink" href="#hardware-needed" title="Permanent link">&para;</a></h4>
+<ul>
+<li>Discovery kit with STM32F303VC MCU</li>
+<li>Laptop running Mac OS</li>
+</ul>
+<h4 id="step-by-step-instructions-to-build-image">Step by Step Instructions to build image<a class="headerlink" href="#step-by-step-instructions-to-build-image" title="Permanent link">&para;</a></h4>
+<ul>
+<li>
+<p>The first step is to download the generic skeleton of the project. The eggs installed are not hardware architecture specific.</p>
+<pre><code>[user:~/foo]$ newt nest create test_project
+Downloading nest skeleton from https://www.github.com/mynewt/tadpole...   ok!
+Nest test_project successfully created in ~/foo/test_project
+
+[user:~/foo]$ cd test_project/
+</code></pre>
+</li>
+<li>
+<p>Then, the clutch of eggs named larva is added from the nest (also named larva) on the github. This step simply downloads the clutch description file and does not actually install the eggs that constitute the clutch. The clutch description file (<code>clutch.yml</code>) will be used to check dependencies during the egg install to ensure completeness. It serves as a reference for all the eggs in the clutch that one can choose from and install.</p>
+<pre><code>[user:~/foo/test_project]$ newt nest add-clutch larva https://github.com/mynewt/larva
+Downloading clutch.yml from https://github.com/mynewt/larva/master... ok!
+Verifying clutch.yml format... ok!
+Clutch larva successfully installed to Nest.
+</code></pre>
+</li>
+<li>
+<p>The next step is to install relevant eggs from the larva nest on github. The instructions assume that you know what application or project you are interested in (the blinky application, in this case), what hardware you are using (STM32F3DISCOVERY board, in this case) and hence, what board support package you need. </p>
+<pre><code>[user:~/foo/test_projec]$ newt egg install project/blinky          
+Downloading larva from https://github.com/mynewt/larva//master... ok!
+Installing project/blinky
+Installation was a success!
+
+[user:~/foo/test_project]$ newt egg install hw/bsp/stm32f3discovery
+Downloading larva from https://github.com/mynewt/larva//master... ok!
+Installing hw/bsp/stm32f3discovery
+Installing hw/mcu/stm/stm32f3xx
+Installing libs/cmsis-core
+Installing compiler/arm-none-eabi-m4
+Installation was a success!
+</code></pre>
+</li>
+<li>
+<p>It's time to create a target for the project and define the target attributes. </p>
+<pre><code>[user:~/foo/test_project]$ newt target create blink_f3disc
+Creating target blink_f3disc
+Target blink_f3disc successfully created!
+
+[user:~/foo/test_project]$ newt target set blink_f3disc project=blinky
+Target blink_f3disc successfully set project to blinky
+
+[user:~/foo/test_project]$ newt target set blink_f3disc bsp=hw/bsp/stm32f3discovery
+Target blink_f3disc successfully set bsp to hw/bsp/stm32f3discovery
+
+[marko@Markos-MacBook-Pro-2:~/foo/test_project]$ newt target set blink_f3disc compiler_def=debug
+Target blink_f3disc successfully set compiler_def to debug
+
+[user:~/foo/test_project]$ newt target set blink_f3disc compiler=arm-none-eabi-m4
+Target blink_f3disc successfully set compiler to arm-none-eabi-m4
+
+[user:~/foo/test_project]$ newt target set blink_f3disc arch=cortex_m4
+Target blink_f3disc successfully set arch to cortex_m4
+
+[user:~/foo/test_project]$ newt target show blink_f3disc
+blink_f3disc
+    arch: cortex_m4
+    project: blinky
+    bsp: hw/bsp/stm32f3discovery
+    compiler_def: debug
+    compiler: arm-none-eabi-m4
+    name: blink_f3disc
+</code></pre>
+</li>
+<li>
+<p>Finally, you get to build the target and generate an executable that can now be uploaded to the board via the JTAG port. You can go into the openocd directory and start an OCD session as you did in Project 1.</p>
+<pre><code>[user:~/foo/test_project]$ newt target build         blink_f3disc
+Building target blink_f3disc (project = blinky)
+Compiling case.c
+Compiling suite.c
+Compiling testutil.c
+Compiling testutil_arch_arm.c
+Archiving libtestutil.a
+Compiling os.c
+Compiling os_callout.c
+Compiling os_eventq.c
+Compiling os_heap.c
+Compiling os_mbuf.c
+Compiling os_mempool.c
+Compiling os_mutex.c
+Compiling os_sanity.c
+Compiling os_sched.c
+Compiling os_sem.c
+Compiling os_task.c
+Compiling os_time.c
+Compiling os_arch_arm.c
+Assembling HAL_CM4.s
+Assembling SVC_Table.s
+Archiving libos.a
+Compiling hal_gpio.c
+Compiling stm32f3xx_hal_gpio.c
+Archiving libstm32f3xx.a
+Compiling cmsis_nvic.c
+Compiling libc_stubs.c
+Compiling os_bsp.c
+Compiling sbrk.c
+Compiling system_stm32f3xx.c
+Assembling startup_stm32f303xc.s
+Archiving libstm32f3discovery.a
+Compiling main.c
+Building project blinky
+Linking blinky.elf
+Successfully run!
+</code></pre>
+</li>
+</ul>
+<h3 id="nrf52-series">nRF52 Series<a class="headerlink" href="#nrf52-series" title="Permanent link">&para;</a></h3>
+<h4 id="hardware-needed_1">Hardware needed<a class="headerlink" href="#hardware-needed_1" title="Permanent link">&para;</a></h4>
+<ul>
+<li>nRF52 Development Kit</li>
+<li>Laptop running Mac OS</li>
+</ul>
+<h4 id="step-by-step-instructions-to-build-image_1">Step by Step Instructions to build image<a class="headerlink" href="#step-by-step-instructions-to-build-image_1" title="Permanent link">&para;</a></h4>
+<ul>
+<li>
+<p>The first step is to download the generic skeleton of the project. The eggs installed are not hardware architecture specific.</p>
+<pre><code>[]user@~/dev]$ newt nest create nordic_blinky
+Downloading nest skeleton from https://www.github.com/mynewt/tadpole... ok!
+Nest nordic_blinky successfully created in ~dev/nordic_blinky
+
+user@~/dev$ cd nordic_blinky/
+</code></pre>
+</li>
+<li>
+<p>Then, the clutch of eggs named larva is added from the nest (also named larva) on the github. This step simply downloads the clutch description file and does not actually install the eggs that constitute the clutch. The clutch description file (<code>clutch.yml</code>) will be used to check dependencies during the egg install to ensure completeness. It serves as a reference for all the eggs in the clutch that one can choose from and install.</p>
+<pre><code>[]user@~/dev/nordic_blinky]$ newt nest add-clutch larva https://github.com/mynewt/larva
+Downloading clutch.yml from https://github.com/mynewt/larva/master... ok!
+Verifying clutch.yml format...ok!
+Clutch larva successfully installed to Nest.
+</code></pre>
+</li>
+<li>
+<p>The next step is to install relevant eggs from the larva nest on github. The instructions assume that you know what application or project you are interested in (the blinky application, in this case), what hardware you are using (STM32F3DISCOVERY board, in this case) and hence, what board support package you need. </p>
+<pre><code>[user@~/dev/nordic_blinky]$ newt egg install project/blinky 
+Downloading larva from https://github.com/mynewt/larva//master... ok!
+Installing project/blinky
+Installation was a success!
+
+[user@~/dev/nordic_blinky]$ newt egg install hw/bsp/nrf52pdk
+Downloading larva from https://github.com/mynewt/larva//master... ok!
+Installing hw/bsp/nrf52pdk
+Installing hw/mcu/nordic/nrf52xxx
+Installing libs/cmsis-core
+Installing compiler/arm-none-eabi-m4
+Installation was a success!
+</code></pre>
+</li>
+<li>
+<p>It's time to create a target for the project and define the target attributes. </p>
+<pre><code>[user@~/dev/nordic_blinky]$ newt target create blink_nordic
+Creating target blink_nordic
+Target blink_nordic successfully created!
+[user@~/dev/nordic_blinky]$ newt target set blink_nordic project=blinky
+Target blink_nordic successfully set project to blinky
+[user@~/dev/nordic_blinky]$ newt target set blink_nordic bsp=hw/bsp/nrf52pdk
+Target blink_nordic successfully set bsp to hw/bsp/nrf52pdk
+[user@~/dev/nordic_blinky]$ newt target set blink_nordic compiler_def=debug
+Target blink_nordic successfully set compiler_def to debug
+[user@~/dev/nordic_blinky]$ newt target set blink_nordic compiler=arm-none-eabi-m4
+Target blink_nordic successfully set compiler to arm-none-eabi-m4
+[user@~/dev/nordic_blinky]$ newt target set blink_nordic arch=cortex_m4
+Target blink_nordic successfully set arch to cortex_m4
+[user@~/dev/nordic_blinky]$ newt target show
+blink_nordic
+    compiler: arm-none-eabi-m4
+    name: blink_nordic
+    arch: cortex_m4
+    project: blinky
+    bsp: hw/bsp/nrf52pdk
+    compiler_def: debug
+</code></pre>
+</li>
+<li>
+<p>Finally, you get to build the target and generate an executable that can now be uploaded to the board via the on-board SEGGER J-Link debugger. </p>
+<pre><code>[user@~/dev/nordic_blinky]$ newt target build blink_nordic
+Building target blink_nordic (project = blinky)
+Compiling case.c
+Compiling suite.c
+Compiling testutil.c
+Compiling testutil_arch_arm.c
+Archiving libtestutil.a
+Compiling os.c
+Compiling os_callout.c
+Compiling os_eventq.c
+Compiling os_heap.c
+Compiling os_mbuf.c
+Compiling os_mempool.c
+Compiling os_mutex.c
+Compiling os_sanity.c
+Compiling os_sched.c
+Compiling os_sem.c
+Compiling os_task.c
+Compiling os_time.c
+Compiling os_arch_arm.c
+Assembling HAL_CM4.s
+Assembling SVC_Table.s
+Archiving libos.a
+Compiling hal_cputime.c
+Compiling hal_gpio.c
+Compiling hal_uart.c
+Archiving libnrf52xxx.a
+Compiling cmsis_nvic.c
+Compiling hal_bsp.c
+Compiling libc_stubs.c
+Compiling os_bsp.c
+Compiling sbrk.c
+Compiling system_nrf52.c
+Assembling gcc_startup_nrf52.s
+Archiving libnrf52pdk.a
+Compiling main.c
+Building project blinky
+Linking blinky.elf
+Successfully run!
+</code></pre>
+</li>
+<li>
+<p>In order to be able to communicate with the SEGGER J-Link debugger on the dev board, you have to download and install the J-Link GDB Server software on to your laptop. You may download the "Software and documentation pack for Mac OS X" from <a href="https://www.segger.com/jlink-software.html">https://www.segger.com/jlink-software.html</a>. The command line version of the server is used in the steps below. </p>
+</li>
+<li>
+<p>Open a new terminal and start a J-Link session.</p>
+<pre><code>[user@~/dev/nordic_blinky/project/blinky/bin]$ which JLinkGDBServer
+/usr/local/bin/JLinkGDBServer
+[user@~/dev/nordic_blinky/project/blinky/bin]$ JLinkGDBServer -if SWD
+SEGGER J-Link GDB Server V5.02f Command Line Version
+
+JLinkARM.dll V5.02f (DLL compiled Oct  2 2015 20:55:03)
+
+-----GDB Server start settings-----
+GDBInit file:                  none
+GDB Server Listening port:     2331
+SWO raw output listening port: 2332
+Terminal I/O port:             2333
+Accept remote connection:      yes
+Generate logfile:              off
+Verify download:               off
+Init regs on start:            off
+Silent mode:                   off
+Single run mode:               off
+Target connection timeout:     0 ms
+------J-Link related settings------
+J-Link Host interface:         USB
+J-Link script:                 none
+J-Link settings file:          none
+------Target related settings------
+Target device:                 unspecified
+Target interface:              SWD
+Target interface speed:        1000kHz
+Target endian:                 little
+
+Connecting to J-Link...
+J-Link is connected.
+Firmware: J-Link OB-SAM3U128-V2-NordicSemi compiled Aug 28 2015 19:26:24
+Hardware: V1.00
+S/N: 682371959
+Checking target voltage...
+Target voltage: 3.30 V
+Listening on TCP/IP port 2331
+Connecting to target...Connected to target
+Waiting for GDB connection...Connected to 127.0.0.1
+</code></pre>
+</li>
+<li>
+<p>You need a configuration file for the GDB session to be opened correctly and the image ("blinky.elf") you built for this target downloaded to flash. A sample config script is given below. Alternatively, you could choose to type each command at the gdb prompt.</p>
+<pre><code> [user@~/dev/nordic_blinky/project/blinky/bin/blink_nordic]$ cat jlink-gdb.cfg 
+ echo ***Setting up the environment for debugging gdb.***\n
+ set complaints 1
+ set prompt (gdb) 
+ set endian little
+ echo \n*** Set target charset ASCII\n
+ set target-charset ASCII
+ echo \n*** Connecting over port #2331 ***\n
+ target remote localhost:2331
+ echo \n*** Enable flash write and set device to nrf52 ***\n
+ monitor flash download=1
+ monitor flash device=nRF52
+ echo \n*** loading blinky.elf ***\n
+ load ~/dev/nordic_blinky/project/blinky/bin/blink_nordic/blinky.elf 
+ symbol-file ~/dev/nordic_blinky/project/blinky/bin/blink_nordic/blinky.elf
+ echo \n*** Resetting target ***\n
+ monitor reset
+ echo \n*** Halting target ***\n
+ monitor halt
+</code></pre>
+</li>
+<li>
+<p>Start the gdb session and monitor that it loads the image, resets the target, and halts for a command to continue. </p>
+<pre><code>[user@~/dev/nordic_blinky/project/blinky/bin/blink_nordic]$ arm-none-eabi-gdb -x ~/dev/nordic_blinky/project/blinky/bin/blink_nordic/jlink-gdb.cfg
+
+GNU gdb (GNU Tools for ARM Embedded Processors) 7.8.0.20150604-cvs
+Copyright (C) 2014 Free Software Foundation, Inc.
+License GPLv3+: GNU GPL version 3 or later &lt;http://gnu.org/licenses/gpl.html&gt;
+This is free software: you are free to change and redistribute it.
+There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
+and "show warranty" for details.
+This GDB was configured as "--host=x86_64-apple-darwin10 --target=arm-none-eabi".
+Type "show configuration" for configuration details.
+For bug reporting instructions, please see:
+&lt;http://www.gnu.org/software/gdb/bugs/&gt;.
+Find the GDB manual and other documentation resources online at:
+&lt;http://www.gnu.org/software/gdb/documentation/&gt;.
+For help, type "help".
+Type "apropos word" to search for commands related to "word".
+
+***Setting up the environment for debugging gdb.***
+The target is assumed to be little endian
+
+*** Set target charset ASCII
+
+*** Connecting over port #2331 ***
+0x00003c34 in ?? ()
+
+*** Enable flash write and set device to nrf52 ***
+Flash download enabled
+Selecting device: nRF52
+
+*** loading blinky.elf ***
+Loading section .text, size 0x5c84 lma 0x0
+Loading section .ARM.extab, size 0x24 lma 0x5c84
+Loading section .ARM.exidx, size 0xd8 lma 0x5ca8
+Loading section .data, size 0x8f8 lma 0x5d80
+Start address 0x48c, load size 26232
+Transfer rate: 12808 KB/sec, 2914 bytes/write.
+During symbol reading, unexpected overlap between:
+ (A) section `.text' from `~/dev/nordic_blinky/project/blinky/bin/blink_nordic/blinky.elf' [0x0, 0x5c84)
+ (B) section `*COM*' from `~/dev/nordic_blinky/project/blinky/bin/blink_nordic/blinky.elf' [0x0, 0x0).
+Will ignore section B.
+
+*** Resetting target ***
+Resetting target
+
+*** Halting target ***
+</code></pre>
+</li>
+<li>
+<p>Type 'c' to continue. The LED on the board will start to blink. You will also see some activity in the terminal showing the open J-Link GDB server connection. The LED will continue to blink after you quit out of that connection.</p>
+<pre><code>(gdb) c
+Continuing.
+</code></pre>
+</li>
+</ul></div>
+            
+        </div>
+
+        <footer class="col-md-12">
+            <hr>
+            
+            <p>Documentation built with <a href="http://www.mkdocs.org/">MkDocs</a>.</p>
+        </footer>
+
+        <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>var base_url = '../..';</script>
+        <script data-main="../../mkdocs/js/search.js" src="../../mkdocs/js/require.js"></script>
+        <script src="../../js/base.js"></script>
+
+        <div class="modal" id="mkdocs_search_modal" tabindex="-1" role="dialog" aria-labelledby="Search Modal" aria-hidden="true">
+            <div class="modal-dialog">
+                <div class="modal-content">
+                    <div class="modal-header">
+                        <button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">&times;</span><span class="sr-only">Close</span></button>
+                        <h4 class="modal-title" id="exampleModalLabel">Search</h4>
+                    </div>
+                    <div class="modal-body">
+                        <p>
+                            From here you can search these documents. Enter
+                            your search terms below.
+                        </p>
+                        <form role="form">
+                            <div class="form-group">
+                                <input type="text" class="form-control" placeholder="Search..." id="mkdocs-search-query">
+                            </div>
+                        </form>
+                        <div id="mkdocs-search-results"></div>
+                    </div>
+                    <div class="modal-footer">
+                    </div>
+                </div>
+            </div>
+        </div>
+
+    </body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/369ba988/chapter2/project3/index.html
----------------------------------------------------------------------
diff --git a/chapter2/project3/index.html b/chapter2/project3/index.html
new file mode 100644
index 0000000..271077c
--- /dev/null
+++ b/chapter2/project3/index.html
@@ -0,0 +1,264 @@
+<!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.incubator.apache.org/index.html/chapter2/project3/">
+        <link rel="shortcut icon" href="../../img/favicon.ico">
+
+	<title>Project 3 - Mynewt</title>
+
+        <link href="../../css/bootstrap-custom.min.css" rel="stylesheet">
+        <link href="../../css/font-awesome-4.0.3.css" rel="stylesheet">
+        <link href="../../css/base.css" rel="stylesheet">
+        <link rel="stylesheet" href="../../css/highlight.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]-->
+
+        
+    </head>
+
+    <body>
+
+        <div class="navbar navbar-default 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>
+            
+
+            <!-- Main title -->
+            <a class="navbar-brand" href="../..">Mynewt</a>
+        </div>
+
+        <!-- Expanded navigation -->
+        <div class="navbar-collapse collapse">
+            
+                <!-- Main navigation -->
+                <ul class="nav navbar-nav">
+                
+                
+                    <li >
+                        <a href="../..">Home</a>
+                    </li>
+                
+                
+                
+                    <li class="dropdown">
+                        <a href="#" class="dropdown-toggle" data-toggle="dropdown">Get Started <b class="caret"></b></a>
+                        <ul class="dropdown-menu">
+                        
+                            
+<li >
+    <a href="../../chapter1/newt_concepts/">Newt Concepts</a>
+</li>
+
+                        
+                            
+<li >
+    <a href="../../chapter1/project1/">Blinky, The First Project</a>
+</li>
+
+                        
+                        </ul>
+                    </li>
+                
+                
+                
+                    <li class="dropdown active">
+                        <a href="#" class="dropdown-toggle" data-toggle="dropdown">Get Acclimated <b class="caret"></b></a>
+                        <ul class="dropdown-menu">
+                        
+                            
+<li >
+    <a href="../vocabulary/">Understanding Newt Terms</a>
+</li>
+
+                        
+                            
+<li >
+    <a href="../project2/">Project 2</a>
+</li>
+
+                        
+                            
+<li class="active">
+    <a href="./">Project 3</a>
+</li>
+
+                        
+                        </ul>
+                    </li>
+                
+                
+                
+                    <li class="dropdown">
+                        <a href="#" class="dropdown-toggle" data-toggle="dropdown">Newt Tool <b class="caret"></b></a>
+                        <ul class="dropdown-menu">
+                        
+                            
+<li >
+    <a href="../../chapter3/newt_ops/">Command structure</a>
+</li>
+
+                        
+                            
+<li >
+    <a href="../../chapter3/newt_tool_reference/">Command list</a>
+</li>
+
+                        
+                        </ul>
+                    </li>
+                
+                
+                
+                    <li class="dropdown">
+                        <a href="#" class="dropdown-toggle" data-toggle="dropdown">Newt OS <b class="caret"></b></a>
+                        <ul class="dropdown-menu">
+                        
+                            
+<li >
+    <a href="../../chapter4/newt_os/">Features</a>
+</li>
+
+                        
+                        </ul>
+                    </li>
+                
+                
+                
+                    <li class="dropdown">
+                        <a href="#" class="dropdown-toggle" data-toggle="dropdown">Modules <b class="caret"></b></a>
+                        <ul class="dropdown-menu">
+                        
+                            
+<li >
+    <a href="../../chapter5/mods/">Overview</a>
+</li>
+
+                        
+                            
+<li >
+    <a href="../../chapter5/console/">Console</a>
+</li>
+
+                        
+                        </ul>
+                    </li>
+                
+                
+                
+                    <li class="dropdown">
+                        <a href="#" class="dropdown-toggle" data-toggle="dropdown">Packaging it up <b class="caret"></b></a>
+                        <ul class="dropdown-menu">
+                        
+                            
+<li >
+    <a href="../../chapter6/dist/">Creating Packages</a>
+</li>
+
+                        
+                        </ul>
+                    </li>
+                
+                
+                </ul>
+            
+
+            <ul class="nav navbar-nav navbar-right">
+                <li>
+                    <a href="#" data-toggle="modal" data-target="#mkdocs_search_modal">
+                        <i class="fa fa-search"></i> Search
+                    </a>
+                </li>
+                
+                    <li >
+                        <a rel="next" href="../project2/">
+                            <i class="fa fa-arrow-left"></i> Previous
+                        </a>
+                    </li>
+                    <li >
+                        <a rel="prev" href="../../chapter3/newt_ops/">
+                            Next <i class="fa fa-arrow-right"></i>
+                        </a>
+                    </li>
+                
+                
+            </ul>
+        </div>
+    </div>
+</div>
+
+        <div class="container">
+            
+                <div class="col-md-3"><div class="bs-sidebar hidden-print affix well" role="complementary">
+    <ul class="nav bs-sidenav">
+    
+        <li class="main active"><a href="#how-to-test-an-egg">How to Test an Egg</a></li>
+        
+    
+    </ul>
+</div></div>
+                <div class="col-md-9" role="main">
+
+<h2 id="how-to-test-an-egg">How to Test an Egg<a class="headerlink" href="#how-to-test-an-egg" title="Permanent link">&para;</a></h2></div>
+            
+        </div>
+
+        <footer class="col-md-12">
+            <hr>
+            
+            <p>Documentation built with <a href="http://www.mkdocs.org/">MkDocs</a>.</p>
+        </footer>
+
+        <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>var base_url = '../..';</script>
+        <script data-main="../../mkdocs/js/search.js" src="../../mkdocs/js/require.js"></script>
+        <script src="../../js/base.js"></script>
+
+        <div class="modal" id="mkdocs_search_modal" tabindex="-1" role="dialog" aria-labelledby="Search Modal" aria-hidden="true">
+            <div class="modal-dialog">
+                <div class="modal-content">
+                    <div class="modal-header">
+                        <button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">&times;</span><span class="sr-only">Close</span></button>
+                        <h4 class="modal-title" id="exampleModalLabel">Search</h4>
+                    </div>
+                    <div class="modal-body">
+                        <p>
+                            From here you can search these documents. Enter
+                            your search terms below.
+                        </p>
+                        <form role="form">
+                            <div class="form-group">
+                                <input type="text" class="form-control" placeholder="Search..." id="mkdocs-search-query">
+                            </div>
+                        </form>
+                        <div id="mkdocs-search-results"></div>
+                    </div>
+                    <div class="modal-footer">
+                    </div>
+                </div>
+            </div>
+        </div>
+
+    </body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/369ba988/chapter2/vocabulary/index.html
----------------------------------------------------------------------
diff --git a/chapter2/vocabulary/index.html b/chapter2/vocabulary/index.html
new file mode 100644
index 0000000..0e0c567
--- /dev/null
+++ b/chapter2/vocabulary/index.html
@@ -0,0 +1,415 @@
+<!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.incubator.apache.org/index.html/chapter2/vocabulary/">
+        <link rel="shortcut icon" href="../../img/favicon.ico">
+
+	<title>Understanding Newt Terms - Mynewt</title>
+
+        <link href="../../css/bootstrap-custom.min.css" rel="stylesheet">
+        <link href="../../css/font-awesome-4.0.3.css" rel="stylesheet">
+        <link href="../../css/base.css" rel="stylesheet">
+        <link rel="stylesheet" href="../../css/highlight.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]-->
+
+        
+    </head>
+
+    <body>
+
+        <div class="navbar navbar-default 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>
+            
+
+            <!-- Main title -->
+            <a class="navbar-brand" href="../..">Mynewt</a>
+        </div>
+
+        <!-- Expanded navigation -->
+        <div class="navbar-collapse collapse">
+            
+                <!-- Main navigation -->
+                <ul class="nav navbar-nav">
+                
+                
+                    <li >
+                        <a href="../..">Home</a>
+                    </li>
+                
+                
+                
+                    <li class="dropdown">
+                        <a href="#" class="dropdown-toggle" data-toggle="dropdown">Get Started <b class="caret"></b></a>
+                        <ul class="dropdown-menu">
+                        
+                            
+<li >
+    <a href="../../chapter1/newt_concepts/">Newt Concepts</a>
+</li>
+
+                        
+                            
+<li >
+    <a href="../../chapter1/project1/">Blinky, The First Project</a>
+</li>
+
+                        
+                        </ul>
+                    </li>
+                
+                
+                
+                    <li class="dropdown active">
+                        <a href="#" class="dropdown-toggle" data-toggle="dropdown">Get Acclimated <b class="caret"></b></a>
+                        <ul class="dropdown-menu">
+                        
+                            
+<li class="active">
+    <a href="./">Understanding Newt Terms</a>
+</li>
+
+                        
+                            
+<li >
+    <a href="../project2/">Project 2</a>
+</li>
+
+                        
+                            
+<li >
+    <a href="../project3/">Project 3</a>
+</li>
+
+                        
+                        </ul>
+                    </li>
+                
+                
+                
+                    <li class="dropdown">
+                        <a href="#" class="dropdown-toggle" data-toggle="dropdown">Newt Tool <b class="caret"></b></a>
+                        <ul class="dropdown-menu">
+                        
+                            
+<li >
+    <a href="../../chapter3/newt_ops/">Command structure</a>
+</li>
+
+                        
+                            
+<li >
+    <a href="../../chapter3/newt_tool_reference/">Command list</a>
+</li>
+
+                        
+                        </ul>
+                    </li>
+                
+                
+                
+                    <li class="dropdown">
+                        <a href="#" class="dropdown-toggle" data-toggle="dropdown">Newt OS <b class="caret"></b></a>
+                        <ul class="dropdown-menu">
+                        
+                            
+<li >
+    <a href="../../chapter4/newt_os/">Features</a>
+</li>
+
+                        
+                        </ul>
+                    </li>
+                
+                
+                
+                    <li class="dropdown">
+                        <a href="#" class="dropdown-toggle" data-toggle="dropdown">Modules <b class="caret"></b></a>
+                        <ul class="dropdown-menu">
+                        
+                            
+<li >
+    <a href="../../chapter5/mods/">Overview</a>
+</li>
+
+                        
+                            
+<li >
+    <a href="../../chapter5/console/">Console</a>
+</li>
+
+                        
+                        </ul>
+                    </li>
+                
+                
+                
+                    <li class="dropdown">
+                        <a href="#" class="dropdown-toggle" data-toggle="dropdown">Packaging it up <b class="caret"></b></a>
+                        <ul class="dropdown-menu">
+                        
+                            
+<li >
+    <a href="../../chapter6/dist/">Creating Packages</a>
+</li>
+
+                        
+                        </ul>
+                    </li>
+                
+                
+                </ul>
+            
+
+            <ul class="nav navbar-nav navbar-right">
+                <li>
+                    <a href="#" data-toggle="modal" data-target="#mkdocs_search_modal">
+                        <i class="fa fa-search"></i> Search
+                    </a>
+                </li>
+                
+                    <li >
+                        <a rel="next" href="../../chapter1/project1/">
+                            <i class="fa fa-arrow-left"></i> Previous
+                        </a>
+                    </li>
+                    <li >
+                        <a rel="prev" href="../project2/">
+                            Next <i class="fa fa-arrow-right"></i>
+                        </a>
+                    </li>
+                
+                
+            </ul>
+        </div>
+    </div>
+</div>
+
+        <div class="container">
+            
+                <div class="col-md-3"><div class="bs-sidebar hidden-print affix well" role="complementary">
+    <ul class="nav bs-sidenav">
+    
+        <li class="main active"><a href="#understanding-newt-terms">Understanding Newt Terms</a></li>
+        
+            <li><a href="#nest">Nest</a></li>
+        
+            <li><a href="#project">Project</a></li>
+        
+            <li><a href="#egg">Egg</a></li>
+        
+            <li><a href="#clutch">Clutch</a></li>
+        
+            <li><a href="#eggshell">Eggshell</a></li>
+        
+            <li><a href="#target">Target</a></li>
+        
+            <li><a href="#capability">Capability</a></li>
+        
+            <li><a href="#identity">Identity</a></li>
+        
+    
+    </ul>
+</div></div>
+                <div class="col-md-9" role="main">
+
+<h2 id="understanding-newt-terms">Understanding Newt Terms<a class="headerlink" href="#understanding-newt-terms" title="Permanent link">&para;</a></h2>
+<h3 id="nest">Nest<a class="headerlink" href="#nest" title="Permanent link">&para;</a></h3>
+<p>The nest is the base directory of your embedded software. It is meant to be the workspace containing a logical collection of the source code for one or more of your projects. A nest can contain multiple projects, and reflect multiple end products. </p>
+<p>As the base repository of your source code, the nest has a master branch and several other branches off it. You may choose any branch to nest on. Each project in your nest will typically consist of several <a href="#egg">eggs</a>. A project could be an egg itself as well. In addition to eggs, a local nest will contain additional items such as <a href="#target">target</a> or build definitions, clutch description files, scripts etc.</p>
+<p>For example, a walk through the "larva" nest at <a href="https://github.com/mynewt/larva.git">https://github.com/mynewt/larva.git</a> shows the following structure. The nest.yml file in the larva directory indicates that it is a nest. An egg will have the egg.yml file in it as shown below. By this nomenclature, each board support package for a particular chip is an egg, the API for the hardware abstraction layer is an egg, and so on. </p>
+<pre><code>larva
+  |- nest.yml 
+  |- compiler
+        |- arm-none-eabi-m4
+        |- sim
+  |- hw (hardware)
+        |- bsp (board support package)
+                |- nrf52pdk (Nordic nRF52 series chip)
+                        |- egg.yml
+                        |- ...
+                |- olimex_stm32-e407_devboard (used in chapter1 project)
+                        |- egg.yml
+                        |- ...
+                |- stm32f3discovery (another board with stm32f3 mcu)
+                        |- egg.yml
+                        |- ...
+                |- yet another board
+                        |- egg.yml
+                        |- ...
+        |- hal (hardware abstraction layer APIs)
+                |- egg.yml
+                |- include
+                        |- hal_cputime.h
+                        |- hal_flash.h
+                        |- hal_gpio.h
+                        |- ... (header files for other peripherals)
+        |- mcu (microcontroller)
+                |- stm (STMicro family)
+                    |- stm32f3xx (STM32f3 series, 32-bit ARM Cortex-M4  core)
+                        |- egg.yml
+                        |- src
+                            |- hal_gpio.c (specific to the STM32f3 mcu)
+                            |- hal_cputime.c
+                            |- ... (code for other peripherals)
+                |- nordic (Nordic Semiconductor family)
+                    |- nrf52xxx (nRF52 Series SoC, Cortex-M4F core)
+                        |- egg.yml
+                        |- src
+                            |- hal_gpio.c (specific to the nRF52 mcu )
+                            |- hal_cputime.c
+                            |- ... (code for other peripherals)
+                |- yet another family of mcu
+                    |- ...
+  |- libs
+        |- bootutil (hw architecture independent boot loader library)
+                |- egg.yml
+                |- src
+                    |- loader.c
+                    |- ... (related source code files)
+        |- nffs (hw architecture independent Newtron Flash File System)
+                |- egg.yml
+                |- src
+                    |- nffs.c
+                    |- ... (related source code files)
+        |- another library 
+                |- egg.yml
+                |- src
+                    |- ... (related source code files)
+  |- project
+  |- scripts
+
+
+</code></pre>
+
+<p>The newt tool offers the <code>nest</code> command to create and manage nests. In general, commands represent actions and flags are modifiers for those actions. A command can have children commands and optionally run an action. A full description of the <code>nest</code> command can be found in the newt tool reference in Chapter 3.</p>
+<pre><code>newt nest [flags]
+newt nest [child-commands]
+</code></pre>
+<p>A complete list of all the nest commands can be found in the newt tool reference in <a href="../../chapter3/newt_tool_reference/">Chapter 3</a>.</p>
+<h3 id="project">Project<a class="headerlink" href="#project" title="Permanent link">&para;</a></h3>
+<p>Projects represent the individual build configurations of your embedded system and essentially defines your application. The project files are what dictate the resulting binary that is generated. </p>
+<p>Layout-wise, a project is a directory inside a nest and contains eggs required for a certain application. For example, the <code>blinky</code> egg sits in <code>project/blinky</code> directory of the <code>larva</code> nest. This egg is used in the blinky project (application) outlined in <a href="../../chapter1/project1/">Chapter 1</a>. &lt;<em>Note: This Will Change</em>&gt;</p>
+<p>A project has the following concepts or properties associated with it. You can find them in the <code>&lt;project-name&gt;.yml</code> file in the project directory. For example, the <code>project/blinky</code> directory has the <code>blinky.yml</code> file indicating some or all of the properties below. Only the name of a project is required for the project to exist, however additional properties may need to be specified for the eggs in it to compile properly and produce an executable. </p>
+<ul>
+<li>Project name</li>
+<li>Base path of the project (nest/project/project-name by default)</li>
+<li>Eggs belonging to the project</li>
+<li><a href="#capabilities">Capabilities</a> that are required for the project or target </li>
+<li><a href="#identity">Identity</a> to classify the type of project or target</li>
+<li>Compiler flags to call out any specific compiler requirement</li>
+</ul>
+<p>A project could itself be an egg if it is a distributable package for a specific application. </p>
+<p>The newt tool offers various commands that you can use with a project. For example, if your project is an egg, you can use the following command to install a project from a nest.</p>
+<pre><code>newt egg install [flags] &lt;project egg name&gt;
+</code></pre>
+<h3 id="egg">Egg<a class="headerlink" href="#egg" title="Permanent link">&para;</a></h3>
+<p>An egg is a distributable package of libraries. Just as an egg in nature has various parts each of which serves a certain purpose, the Mynewt egg consists of software parcels or modules that have different functions. However, unlike the egg in nature these software modules can exist by itself and may be distributed; therefore, they too are essentially eggs. Once this concept is grasped it is easy to see how an egg may consist of other eggs.</p>
+<p>The two main directories in an egg are <code>/include</code> and <code>/src</code>.</p>
+<p>The newt tool offers several egg commands to list, inspect, install, and do other operations on eggs. For example, the following command</p>
+<pre><code>newt egg list
+</code></pre>
+<p>outputs all the eggs in the current nest where each egg has details on its version, path, and dependencies. A sample output for an egg is given below.</p>
+<pre><code>Egg libs/os, version 0.1.0
+path: /Users/aditihilbert/dev/test_project/libs/os
+deps: libs/testutil@none#stable
+</code></pre>
+<p>A complete list of all the egg commands can be found in the newt tool reference in <a href="../../chapter3/newt_tool_reference/">Chapter 3</a>.</p>
+<h3 id="clutch">Clutch<a class="headerlink" href="#clutch" title="Permanent link">&para;</a></h3>
+<p>A clutch is a snapshot of all eggs in a remote nest at any point in time. On any given github branch, a nest with a clutch of eggs will contain a <code>clutch.yml</code> file that specifies the version number, dependencies, and hash value for each constituent egg as well as the name of the entire clutch and the github url for it. [Note: Currently ]</p>
+<p>You may download multiple clutches into your local nest as long as the names of the clutches are different. This allows you to mix and match various features and functionality coming from different clutches of eggs. You can see all the clutches in the <code>.nest/clutches</code> directory in your nest.</p>
+<p>The newt tool offers clutch management commands within the <code>newt nest</code> command. For example, the following command creates a new clutch using all the eggs in the current directory. It requires that a clutch name be specified and the url for the location of that clutch in the online repository. These two inputs go into the <code>clutch.yml</code> file in the nest.</p>
+<pre><code>newt nest generate-clutch &lt;name&gt; &lt;url&gt;
+</code></pre>
+<p>Note that a clutch merely defines the eggs belonging together and requires the eggs to be installed (hatched) for the source code to be populated in the project. </p>
+<h3 id="eggshell">Eggshell<a class="headerlink" href="#eggshell" title="Permanent link">&para;</a></h3>
+<p>The term eggshell is used to refer to the eggs of a clutch in a remote repository. They are not useful on your local machine until you actually install them. So they are mere shells of themselves while sitting on the online repository. When you enter the following command outputs the total number of shells in each remote clutch.</p>
+<pre><code>newt nest list-clutches
+</code></pre>
+<p>So, if you had two clutches installed, the output could be:</p>
+<pre><code>Remote clutch larva (eggshells: 19)
+Remote clutch ble_test (eggshells: 15)
+</code></pre>
+<h3 id="target">Target<a class="headerlink" href="#target" title="Permanent link">&para;</a></h3>
+<p>A target is the hardware build or its software equivalent (e.g. test, simulator) set for a project. It tells the newt tool how to build the source code within a given nest. Once a new target is created, its architecture and other details needs to be defined. An example of a defined target named "blink_f3disc" is given below.</p>
+<pre><code>blink_f3disc
+         compiler_def: debug
+         compiler: arm-none-eabi-m4
+         name: blink_f3disc
+         arch: cortex_m4
+         project: blinky
+         bsp: hw/bsp/stm32f3discovery
+</code></pre>
+<p>The newt tool offers commands to create, set up and manipulate targets. For example, the create command below creates an empty target named <code>my_target1</code> and the set command sets one detail of its definition, namely the architecture.</p>
+<pre><code>newt target create my_target1
+newt target set my_target1 arch=cortex_m4
+</code></pre>
+<h3 id="capability">Capability<a class="headerlink" href="#capability" title="Permanent link">&para;</a></h3>
+<p>Capability is functionality that is exposed by an egg. A capability is tracked by its name and version. An egg may require capabilities exposed by another egg, thus establishing a dependency tracked through the egg.yml files. </p>
+<p>The newt tool can ascertain a map of all the egg capabilities and use it to check dependencies and make sure all the necessary eggs are in a project for a particular target.</p>
+<h3 id="identity">Identity<a class="headerlink" href="#identity" title="Permanent link">&para;</a></h3>
+<p>Identity is a property of a target or project in the newt world. A target may inherit it from a project or vice versa. It may be used to determine what eggs to include or how an egg code should behave in a build or which linkerscripts to use. For example, the identity of a lock is different from the identity of a wearable monitor. Even if they were to be built on the same hardware target, different features and behavior are required. Their different identities result in differing sets of eggs in the projects and/or the same egg behaving differently depending on the identity.</p></div>
+            
+        </div>
+
+        <footer class="col-md-12">
+            <hr>
+            
+            <p>Documentation built with <a href="http://www.mkdocs.org/">MkDocs</a>.</p>
+        </footer>
+
+        <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>var base_url = '../..';</script>
+        <script data-main="../../mkdocs/js/search.js" src="../../mkdocs/js/require.js"></script>
+        <script src="../../js/base.js"></script>
+
+        <div class="modal" id="mkdocs_search_modal" tabindex="-1" role="dialog" aria-labelledby="Search Modal" aria-hidden="true">
+            <div class="modal-dialog">
+                <div class="modal-content">
+                    <div class="modal-header">
+                        <button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">&times;</span><span class="sr-only">Close</span></button>
+                        <h4 class="modal-title" id="exampleModalLabel">Search</h4>
+                    </div>
+                    <div class="modal-body">
+                        <p>
+                            From here you can search these documents. Enter
+                            your search terms below.
+                        </p>
+                        <form role="form">
+                            <div class="form-group">
+                                <input type="text" class="form-control" placeholder="Search..." id="mkdocs-search-query">
+                            </div>
+                        </form>
+                        <div id="mkdocs-search-results"></div>
+                    </div>
+                    <div class="modal-footer">
+                    </div>
+                </div>
+            </div>
+        </div>
+
+    </body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/369ba988/chapter3/newt_ops/index.html
----------------------------------------------------------------------
diff --git a/chapter3/newt_ops/index.html b/chapter3/newt_ops/index.html
new file mode 100644
index 0000000..0b415b1
--- /dev/null
+++ b/chapter3/newt_ops/index.html
@@ -0,0 +1,297 @@
+<!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.incubator.apache.org/index.html/chapter3/newt_ops/">
+        <link rel="shortcut icon" href="../../img/favicon.ico">
+
+	<title>Command structure - Mynewt</title>
+
+        <link href="../../css/bootstrap-custom.min.css" rel="stylesheet">
+        <link href="../../css/font-awesome-4.0.3.css" rel="stylesheet">
+        <link href="../../css/base.css" rel="stylesheet">
+        <link rel="stylesheet" href="../../css/highlight.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]-->
+
+        
+    </head>
+
+    <body>
+
+        <div class="navbar navbar-default 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>
+            
+
+            <!-- Main title -->
+            <a class="navbar-brand" href="../..">Mynewt</a>
+        </div>
+
+        <!-- Expanded navigation -->
+        <div class="navbar-collapse collapse">
+            
+                <!-- Main navigation -->
+                <ul class="nav navbar-nav">
+                
+                
+                    <li >
+                        <a href="../..">Home</a>
+                    </li>
+                
+                
+                
+                    <li class="dropdown">
+                        <a href="#" class="dropdown-toggle" data-toggle="dropdown">Get Started <b class="caret"></b></a>
+                        <ul class="dropdown-menu">
+                        
+                            
+<li >
+    <a href="../../chapter1/newt_concepts/">Newt Concepts</a>
+</li>
+
+                        
+                            
+<li >
+    <a href="../../chapter1/project1/">Blinky, The First Project</a>
+</li>
+
+                        
+                        </ul>
+                    </li>
+                
+                
+                
+                    <li class="dropdown">
+                        <a href="#" class="dropdown-toggle" data-toggle="dropdown">Get Acclimated <b class="caret"></b></a>
+                        <ul class="dropdown-menu">
+                        
+                            
+<li >
+    <a href="../../chapter2/vocabulary/">Understanding Newt Terms</a>
+</li>
+
+                        
+                            
+<li >
+    <a href="../../chapter2/project2/">Project 2</a>
+</li>
+
+                        
+                            
+<li >
+    <a href="../../chapter2/project3/">Project 3</a>
+</li>
+
+                        
+                        </ul>
+                    </li>
+                
+                
+                
+                    <li class="dropdown active">
+                        <a href="#" class="dropdown-toggle" data-toggle="dropdown">Newt Tool <b class="caret"></b></a>
+                        <ul class="dropdown-menu">
+                        
+                            
+<li class="active">
+    <a href="./">Command structure</a>
+</li>
+
+                        
+                            
+<li >
+    <a href="../newt_tool_reference/">Command list</a>
+</li>
+
+                        
+                        </ul>
+                    </li>
+                
+                
+                
+                    <li class="dropdown">
+                        <a href="#" class="dropdown-toggle" data-toggle="dropdown">Newt OS <b class="caret"></b></a>
+                        <ul class="dropdown-menu">
+                        
+                            
+<li >
+    <a href="../../chapter4/newt_os/">Features</a>
+</li>
+
+                        
+                        </ul>
+                    </li>
+                
+                
+                
+                    <li class="dropdown">
+                        <a href="#" class="dropdown-toggle" data-toggle="dropdown">Modules <b class="caret"></b></a>
+                        <ul class="dropdown-menu">
+                        
+                            
+<li >
+    <a href="../../chapter5/mods/">Overview</a>
+</li>
+
+                        
+                            
+<li >
+    <a href="../../chapter5/console/">Console</a>
+</li>
+
+                        
+                        </ul>
+                    </li>
+                
+                
+                
+                    <li class="dropdown">
+                        <a href="#" class="dropdown-toggle" data-toggle="dropdown">Packaging it up <b class="caret"></b></a>
+                        <ul class="dropdown-menu">
+                        
+                            
+<li >
+    <a href="../../chapter6/dist/">Creating Packages</a>
+</li>
+
+                        
+                        </ul>
+                    </li>
+                
+                
+                </ul>
+            
+
+            <ul class="nav navbar-nav navbar-right">
+                <li>
+                    <a href="#" data-toggle="modal" data-target="#mkdocs_search_modal">
+                        <i class="fa fa-search"></i> Search
+                    </a>
+                </li>
+                
+                    <li >
+                        <a rel="next" href="../../chapter2/project3/">
+                            <i class="fa fa-arrow-left"></i> Previous
+                        </a>
+                    </li>
+                    <li >
+                        <a rel="prev" href="../newt_tool_reference/">
+                            Next <i class="fa fa-arrow-right"></i>
+                        </a>
+                    </li>
+                
+                
+            </ul>
+        </div>
+    </div>
+</div>
+
+        <div class="container">
+            
+                <div class="col-md-3"><div class="bs-sidebar hidden-print affix well" role="complementary">
+    <ul class="nav bs-sidenav">
+    
+        <li class="main active"><a href="#command-structure">Command Structure</a></li>
+        
+    
+    </ul>
+</div></div>
+                <div class="col-md-9" role="main">
+
+<h2 id="command-structure">Command Structure<a class="headerlink" href="#command-structure" title="Permanent link">&para;</a></h2>
+<p>In the newt tool, commands represent actions and flags are modifiers for those actions. A command can have children commands which are also simply referred to as commands. One or more arguments may need to be provided to a command to execute it correctly. </p>
+<p>In the example below, the <code>newt</code> command has the child command <code>target set</code>. The first argument 'my_target1' is the name of the target whose attributes are being set. The second argument 'arch=cortex_m4' specifies the value to set the attribute (variable) 'arch' to, which in this case is 'cortex_m4'. </p>
+<pre><code>newt target set my_target1 arch=cortex_m4
+</code></pre>
+<p>Global flags work on all newt commands in the same way. An example is the flag <code>-v, --verbose</code> to ask for a verbose output while executing a command. The help flag <code>-h</code> or  <code>--help</code> is available on all commands but provides command specific output, of course. These flags may be specified in either a long or a short form. </p>
+<p>A command may additionally take flags specific to it. For example, the <code>-b</code> flag may be used with <code>newt egg install</code> to tell it which branch to install the egg from. </p>
+<pre><code>newt egg install -b &lt;branchname&gt; &lt;eggname&gt;
+</code></pre>
+<p>In addition to the newt tool <a href="../newt_tool_reference/">reference</a> in this documentation set, command-line help is available for each command (and child command). Simply use the flag <code>-h</code> or <code>--help</code> as shown below:</p>
+<pre><code>$ newt target export --help
+Export build targets from the current nest, and print them to 
+standard output. If the -a (or -export-all) option is specified, 
+then all targets will be exported. Otherwise, &lt;target-name&gt; 
+must be specified, and only that target will be exported.
+
+Usage: 
+  newt target export [flags]
+
+Examples:
+  newt target export [-a -export-all] [&lt;target-name&gt;]
+  newt target export -a &gt; my_exports.txt
+  newt target export my_target &gt; my_target_export.txt
+
+Flags:
+  -a, --export-all=false: If present, export all targets
+  -h, --help=false: help for export
+
+Global Flags:
+  -l, --loglevel="WARN": Log level, defaults to WARN.
+  -q, --quiet=false: Be quiet; only display error output.
+  -s, --silent=false: Be silent; don't output anything.
+  -v, --verbose=false: Enable verbose output when executing commands.
+</code></pre></div>
+            
+        </div>
+
+        <footer class="col-md-12">
+            <hr>
+            
+            <p>Documentation built with <a href="http://www.mkdocs.org/">MkDocs</a>.</p>
+        </footer>
+
+        <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>var base_url = '../..';</script>
+        <script data-main="../../mkdocs/js/search.js" src="../../mkdocs/js/require.js"></script>
+        <script src="../../js/base.js"></script>
+
+        <div class="modal" id="mkdocs_search_modal" tabindex="-1" role="dialog" aria-labelledby="Search Modal" aria-hidden="true">
+            <div class="modal-dialog">
+                <div class="modal-content">
+                    <div class="modal-header">
+                        <button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">&times;</span><span class="sr-only">Close</span></button>
+                        <h4 class="modal-title" id="exampleModalLabel">Search</h4>
+                    </div>
+                    <div class="modal-body">
+                        <p>
+                            From here you can search these documents. Enter
+                            your search terms below.
+                        </p>
+                        <form role="form">
+                            <div class="form-group">
+                                <input type="text" class="form-control" placeholder="Search..." id="mkdocs-search-query">
+                            </div>
+                        </form>
+                        <div id="mkdocs-search-results"></div>
+                    </div>
+                    <div class="modal-footer">
+                    </div>
+                </div>
+            </div>
+        </div>
+
+    </body>
+</html>