This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
proiecte:coap-sparrow [2017/01/23 21:49] dan.dragan [General Overview] |
proiecte:coap-sparrow [2017/01/26 23:33] (current) iulia.manda [Porting CoAP on Sparrow v4] |
||
---|---|---|---|
Line 16: | Line 16: | ||
* the data exchange between 6LoWPAN devices other IPv6 network | * the data exchange between 6LoWPAN devices other IPv6 network | ||
* local data exchange between devices inside the 6LoWPAN | * local data exchange between devices inside the 6LoWPAN | ||
- | * eneration | + | * generation |
- | {{: | + | {{ :proiecte: 6lowpan.png?600 | IPv6 network with a 6LoWPAN mesh network}} |
- | = IPv6 network with a 6LoWPAN mesh network = | + | |
- | {{: | + | The starting point CoAP implementation was supported by 6LoWPAN mesh networks that used as Coordinator a development board with an Atmel ARM-based microcontroller and the Routers and Devices were development boards with Atmel ATMega128rfa1 microcontrollers. In this model the Coordinator contained a Real Time Operating System (FreeRTOS) with a scheduler designed to provide a predictable execution pattern. The scheduler was used to plan for execution both initialization tasks for network, low-power IP and CoAP tasks and events like responding to device join/leave requests, responding to CoAP requests. |
- | = Previous model of a 6LoWPAN mesh network = | + | |
+ | {{ :proiecte: coaprtos.png?600 | 6LoWPAN mesh network with FreeRTOS}} | ||
===== Implementation and setup configuration ===== | ===== Implementation and setup configuration ===== | ||
- | {{: | + | The new approach required using Sparrow v4 for all three types of nodes. Porting the Device and Router applications was not very difficult because the previous model used the same microcontroller, |
- | = 6LoWPAN mesh network | + | On the Coordinator side the effort was more consistent. The figure below shows the new model with a redesigned network. First of all, the build configuration files needed to be rewritten, because of the switch from ARM to AVR, not only for the CoAP application, |
+ | |||
+ | {{ :proiecte: coapbaremetal.png?600 | 6LoWPAN mesh network without RTOS support}} | ||
+ | |||
+ | 6LoWPAN | ||
In order to set up a new Sparrow wireless sensor network using COAP the following instructions should be used: | In order to set up a new Sparrow wireless sensor network using COAP the following instructions should be used: | ||
- | * Request access to Dresden Elektronik 6LoWPAN stack repository[1]. | + | * Request access to Dresden Elektronik 6LoWPAN stack repository [1]. |
* Install the next packages on your Linux machine: avr-libc, avrdude, binutils-avr, | * Install the next packages on your Linux machine: avr-libc, avrdude, binutils-avr, | ||
< | < | ||
Line 77: | Line 82: | ||
</ | </ | ||
- | {{: | + | The image below represents the output of a serial monitoring of the Coordinator when three other Sparrow nodes joined the network. The Coordinator assigns MAC addresses and short addresses to the routers and devices and registers them in a children table. |
- | = Serial monitor output for a Sparrow Coordinator = | + | |
+ | {{ :proiecte: serialmonitor.png | Serial monitor for Coordinator}} | ||
- | {{: | + | The below topology presents a coordinator, |
- | = Sparrow CoAP topology with a Coordinator, | + | |
+ | {{ :proiecte: topology.jpg?600 | Sparrow CoAP topology}} | ||
===== Resources ===== | ===== Resources ===== | ||
* [1] https:// | * [1] https:// | ||
+ | * [2] Jonas Olsson, 6LoWPAN demystified, | ||
+ | * [3] https:// |