6LoWPAN-installation

Version 3 (6lowpan group from 18-748 -, 05/06/2010 07:52 pm)

1 1 6lowpan group from 18-748 -
= Nano-RK 6LoWPAN Installation =
2 1 6lowpan group from 18-748 -
'''STEP 1: Install Linux'''
3 1 6lowpan group from 18-748 -
4 1 6lowpan group from 18-748 -
Install a Linux kernel >= 2.6.32.  The 6LoWPAN network driver has only been tested on 2.6.32 and
5 1 6lowpan group from 18-748 -
will not compile on previous versions.
6 1 6lowpan group from 18-748 -
7 1 6lowpan group from 18-748 -
'''STEP 2: Obtain an IPv6 Address'''
8 1 6lowpan group from 18-748 -
9 1 6lowpan group from 18-748 -
For 6LoWPAN to work you need to have an IPv6 address.  Unfortunately, most ISPs only provide
10 1 6lowpan group from 18-748 -
IPv4 connectivity.  If this is the case you can obtain an IPv6 address by using the Freenet6
11 1 6lowpan group from 18-748 -
tunnelling service.  You can find more info here: [http://gogonet.gogo6.com/page/freenet6-services].
12 1 6lowpan group from 18-748 -
You will need to register so that their service can give you an IPv6 address.
13 1 6lowpan group from 18-748 -
14 1 6lowpan group from 18-748 -
'''STEP 3: Obtain an IPv6 Network prefix'''
15 1 6lowpan group from 18-748 -
16 1 6lowpan group from 18-748 -
Because we will be distributing IPv6 addresses to each node you will also need to acquire a
17 1 6lowpan group from 18-748 -
network prefix.  Luckily, freenet6 also offers a service where you can get a full IPv6
18 1 6lowpan group from 18-748 -
network prefix.
19 1 6lowpan group from 18-748 -
20 3 6lowpan group from 18-748 -
To do this make sure to change your gw6c.conf configuration file to 'router':
21 3 6lowpan group from 18-748 -
22 3 6lowpan group from 18-748 -
{{{
23 3 6lowpan group from 18-748 -
host_type=router
24 3 6lowpan group from 18-748 -
}}}
25 3 6lowpan group from 18-748 -
26 3 6lowpan group from 18-748 -
Also change the Network interface to 6lowpan0:
27 3 6lowpan group from 18-748 -
28 3 6lowpan group from 18-748 -
{{{
29 3 6lowpan group from 18-748 -
if_prefix=6lowpan0
30 3 6lowpan group from 18-748 -
}}}
31 3 6lowpan group from 18-748 -
32 1 6lowpan group from 18-748 -
'''STEP 4: Setup Edge Router Network Device Driver'''
33 1 6lowpan group from 18-748 -
34 1 6lowpan group from 18-748 -
go to the driver directory...
35 1 6lowpan group from 18-748 -
36 1 6lowpan group from 18-748 -
{{{
37 1 6lowpan group from 18-748 -
cd edge/driver/kernel-2.6.32
38 1 6lowpan group from 18-748 -
}}}
39 1 6lowpan group from 18-748 -
40 1 6lowpan group from 18-748 -
and compile the driver...
41 1 6lowpan group from 18-748 -
42 1 6lowpan group from 18-748 -
{{{
43 1 6lowpan group from 18-748 -
make
44 1 6lowpan group from 18-748 -
}}}
45 1 6lowpan group from 18-748 -
46 1 6lowpan group from 18-748 -
now start up the 6LoWPAN module...
47 1 6lowpan group from 18-748 -
48 1 6lowpan group from 18-748 -
{{{
49 1 6lowpan group from 18-748 -
sudo insmod sixlowpan.ko
50 1 6lowpan group from 18-748 -
}}}
51 1 6lowpan group from 18-748 -
52 1 6lowpan group from 18-748 -
{{{
53 1 6lowpan group from 18-748 -
sudo ifconfig 6lowpan0 up
54 1 6lowpan group from 18-748 -
}}}
55 1 6lowpan group from 18-748 -
56 1 6lowpan group from 18-748 -
Running "ifconfig" should now display "6lowpan0" as a network interface:
57 1 6lowpan group from 18-748 -
58 1 6lowpan group from 18-748 -
{{{
59 1 6lowpan group from 18-748 -
$ifconfig
60 2 6lowpan group from 18-748 -
6lowpan0  Link encap:Ethernet  HWaddr 92:9d:0b:44:66:c2
61 2 6lowpan group from 18-748 -
          inet6 addr: fe80::909d:bff:fe44:66c2/64 Scope:Link
62 2 6lowpan group from 18-748 -
          UP BROADCAST RUNNING NOARP  MTU:1500  Metric:1
63 2 6lowpan group from 18-748 -
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
64 2 6lowpan group from 18-748 -
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
65 2 6lowpan group from 18-748 -
          collisions:0 txqueuelen:0
66 2 6lowpan group from 18-748 -
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
67 1 6lowpan group from 18-748 -
}}}
68 1 6lowpan group from 18-748 -
69 1 6lowpan group from 18-748 -
Now start up gw6c...
70 1 6lowpan group from 18-748 -
71 1 6lowpan group from 18-748 -
{{{
72 1 6lowpan group from 18-748 -
sudo /etc/init.d/gw6c start
73 1 6lowpan group from 18-748 -
}}}
74 1 6lowpan group from 18-748 -
75 1 6lowpan group from 18-748 -
Running "ifconfig" again should now display the IPv6 prefix associated with 6lowpan0
76 1 6lowpan group from 18-748 -
77 2 6lowpan group from 18-748 -
{{{
78 2 6lowpan group from 18-748 -
$ifconfig
79 2 6lowpan group from 18-748 -
6lowpan0  Link encap:Ethernet  HWaddr 16:38:96:c7:4f:48  
80 2 6lowpan group from 18-748 -
          inet6 addr: 2001:5c0:1107:9b00::1/64 Scope:Global
81 2 6lowpan group from 18-748 -
          inet6 addr: fe80::1438:96ff:fec7:4f48/64 Scope:Link
82 2 6lowpan group from 18-748 -
          UP BROADCAST RUNNING NOARP  MTU:1500  Metric:1
83 2 6lowpan group from 18-748 -
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
84 2 6lowpan group from 18-748 -
          TX packets:3 errors:0 dropped:0 overruns:0 carrier:0
85 2 6lowpan group from 18-748 -
          collisions:0 txqueuelen:0 
86 2 6lowpan group from 18-748 -
          RX bytes:0 (0.0 B)  TX bytes:298 (298.0 B)
87 2 6lowpan group from 18-748 -
88 2 6lowpan group from 18-748 -
}}}
89 2 6lowpan group from 18-748 -
90 1 6lowpan group from 18-748 -
'''STEP 5: Setup the Edge Router Radio Node'''
91 1 6lowpan group from 18-748 -
92 1 6lowpan group from 18-748 -
We now need to configure the radio node to be used by the edge router so that it may communicate
93 1 6lowpan group from 18-748 -
with the firefly network.
94 1 6lowpan group from 18-748 -
95 1 6lowpan group from 18-748 -
First go to the radio node directory...
96 1 6lowpan group from 18-748 -
97 1 6lowpan group from 18-748 -
{{{
98 1 6lowpan group from 18-748 -
cd edge/node
99 1 6lowpan group from 18-748 -
}}}
100 1 6lowpan group from 18-748 -
101 1 6lowpan group from 18-748 -
Compile and program a node...
102 1 6lowpan group from 18-748 -
103 1 6lowpan group from 18-748 -
{{{
104 2 6lowpan group from 18-748 -
make && make program
105 1 6lowpan group from 18-748 -
}}}
106 1 6lowpan group from 18-748 -
107 1 6lowpan group from 18-748 -
'''STEP 6: Setup the Edge Router User Level Process'''
108 1 6lowpan group from 18-748 -
109 1 6lowpan group from 18-748 -
Last thing to setup is the user level process.
110 1 6lowpan group from 18-748 -
111 1 6lowpan group from 18-748 -
Go to the user space process directory
112 1 6lowpan group from 18-748 -
113 1 6lowpan group from 18-748 -
{{{
114 1 6lowpan group from 18-748 -
cd edge/user
115 1 6lowpan group from 18-748 -
}}}
116 1 6lowpan group from 18-748 -
117 1 6lowpan group from 18-748 -
compile...
118 1 6lowpan group from 18-748 -
119 1 6lowpan group from 18-748 -
{{{
120 1 6lowpan group from 18-748 -
make
121 1 6lowpan group from 18-748 -
}}}
122 1 6lowpan group from 18-748 -
123 1 6lowpan group from 18-748 -
and run the process...
124 1 6lowpan group from 18-748 -
125 1 6lowpan group from 18-748 -
{{{
126 1 6lowpan group from 18-748 -
sudo ./edge
127 1 6lowpan group from 18-748 -
}}}
128 1 6lowpan group from 18-748 -
129 1 6lowpan group from 18-748 -
'''STEP 7: Setup the nodes'''
130 1 6lowpan group from 18-748 -
131 1 6lowpan group from 18-748 -
See the [http://www.nanork.org/wiki/6LoWPAN-api 6LoWPAN api] to find the correct way of programming
132 1 6lowpan group from 18-748 -
on the nodes.  Examples can be found in the apps/ folder.
133 1 6lowpan group from 18-748 -
134 1 6lowpan group from 18-748 -
'''STEP 8: Setup the MAC Addresses'''
135 1 6lowpan group from 18-748 -
136 1 6lowpan group from 18-748 -
You should now assign each firefly node in your network with a unique 16-bit address.  You can
137 1 6lowpan group from 18-748 -
do this by using the config-eeprom program.
138 1 6lowpan group from 18-748 -
139 1 6lowpan group from 18-748 -
{{{
140 1 6lowpan group from 18-748 -
./config-eeprom
141 1 6lowpan group from 18-748 -
}}}
142 1 6lowpan group from 18-748 -
143 1 6lowpan group from 18-748 -
'''STEP 9: Test'''
144 1 6lowpan group from 18-748 -
145 1 6lowpan group from 18-748 -
Congratulations you should now have a network of firefly nodes connected to the internet.  Test
146 1 6lowpan group from 18-748 -
that this is in fact true by going to [http://www.ipv6tools.org] and try pinging one of the nodes
147 1 6lowpan group from 18-748 -
in your network.