# ASD programming tutorials for the AVRRZRAVEN platform

Note that you need to have the demo binary for the 3290p processor flahsed on your AVRRAVEN to see the LCD function properly; the lessons are meant for the 1284p, where the ASD is used to build the applications

## Lesson 1: LCD

This lesson illustrates the use of timers and handlers. It prints a message to the screen and blinks the LED periodically.

## Lesson 2: ping

This lesson illustrates the steps in bringing up a complete IPv6 LoWPAN wireless network capability.

It extends the event-driven model associated it boot and timer events with a sequence of system and networking events.

The only required step is iwconfig_init(), which starts the process of bringing up the LoWPAN wireless interface. It enables the interface, at which point the link local IPv6 address is assigned from the EUID64 of the IEEE 802.15.4 link.

To illustrate the remainder of the process, the iwconfig_handler() requests notification when a global IPv6 address is assigned. This address is assigned by DHCPv6, which also provides an IPv4 address for the node. These addresses are shown in the ArchRock LowPAN Router management interface.

Once the IP address is displayed on the LCD, one can ping the node

## Lesson 3: tcpEcho

This lesson builds on top of lesson 2. Here we go a step further by opening a TCP listening socket and wait for incoming byte streams. Once data is received, they are written to the sender verbatim.

## Lesson 4: shell

This lesson builds a service (a simple "shell" application) on top of the TCP server we built in lesson 3