summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGuido Günther <agx@sigxcpu.org>2016-03-13 09:21:15 +0100
committerGuido Günther <agx@sigxcpu.org>2016-03-13 09:21:15 +0100
commitc88097fc358db98b55dc51d690a0c1655ee4dd5c (patch)
tree58a9045279affecf4d08154825df028c5af7020e
parentc0ac414ac65f4bc63fd3bb37bfc6b79fae4b005d (diff)
Revisiting this problem after almost a year
-rw-r--r--hw/merkur-board.mdwn25
-rw-r--r--hw/rpi6lowpan.mdwn2
2 files changed, 21 insertions, 6 deletions
diff --git a/hw/merkur-board.mdwn b/hw/merkur-board.mdwn
index 76b8696..640c24a 100644
--- a/hw/merkur-board.mdwn
+++ b/hw/merkur-board.mdwn
@@ -7,7 +7,7 @@ some sensors. The [Merkur Board][0] is open hardware:
It has digital outputs as well as digital, analog and PWM outputs and
supports attaching Arduino Grove Modules which should make experiments
-simple. In order to test thinks I use the
+simple. In order to test things I use the
[Plant Oberservation Kit][1] set.
One uses USB-Serial converter to flash the device. Details on how to
@@ -63,13 +63,12 @@ breakout*][8] flashing works as expected:
The flashed firmware uses *channel 26* and *pan_id 0xabcd* by default. This can
be seen on the serial output (you can use the same serial converter as for
flashing). To read the serial console I've so far used the serial console
-window from the arduino ide since *screen* doesn't support the 14400 baud used
-by the merkur-board.
+window from the arduino ide since *screen* doesn't support the 38400 baud used
+by the merkur-board ().
While I'm seeing packages looking for a RIPL router send by the merkur-board
when using a Raspberry Pi as described in [[here|rpi6lowpan]], I can't ping the
-board on it's link local address yet. I can also verify that it detects the
-RIPL router but the device is still not reachable.
+board on it's link local address yet.
So let's for now use a second merkur board as [edge-router][].
@@ -90,6 +89,20 @@ We can now query the moisture sensor using [libcoap]:
$ ./coap-client -m get coap://[2001:db8:c001:f00d:221:2eff:ff00:347c]/moisture/v
+## Some Linux, Contiki interop progress
+
+Looking into the above problem in some more detail it shows that using
+[[rpi6lowpan]] setup in [monitor mode][] we see all the packages sent
+from the merkur boards on Linux but not vice verca. If we
+[disable sleep mode][] in contiki we can receive frames from Linux
+when pinging the merkur-board from the Raspberry Pi:
+
+ Received NS from fe80::80cd:9a1:845b:4d6a to ff02::1:ff00:3304 with target addressfe80::221:2e��f:ff0N��
+ Sending NA to fe80::80cd:9a1:845b:4d6a from fe80::221:2eff:ff00:3304 with target address fe80::221:2eff:ff00:3304
+ sicslowpan output: sending packet len 80
+ before compression (40): 6000000000283aff
+ ...
+
[0]: http://osdwiki.open-entry.com/doku.php/de:projekte:merkur
[1]: http://osdwiki.open-entry.com/doku.php/de:projekte:plant_observation_kit
[2]: http://osdwiki.open-entry.com/doku.php/de:tutorials:first_steps_arduino_ide
@@ -103,3 +116,5 @@ We can now query the moisture sensor using [libcoap]:
[edge-router]: http://osdwiki.open-entry.com/doku.php/de:tutorials:contiki:merkur_board_rpl_usb_router
[Find A5]: http://osdwiki.open-entry.com/doku.php/de:products:merkur_grove_board_4
[libcoap]: http://sourceforge.net/projects/libcoap/
+[monitor mode]: http://wpan.cakelab.org/#_sniffing
+[disable sleep mode]: https://github.com/agx/osd-contiki/commit/5ecf780a4873b6942e50964cfcb3d067b0a60cce
diff --git a/hw/rpi6lowpan.mdwn b/hw/rpi6lowpan.mdwn
index e42a623..3ec638d 100644
--- a/hw/rpi6lowpan.mdwn
+++ b/hw/rpi6lowpan.mdwn
@@ -7,7 +7,7 @@ at86rf233) so we can later use it as a e.g. border router.
[[!img rpiradio.jpg size="x150" alt="Raspberry Pi with 802.15.4 radio"]]
The default Raspberry Pi kernel used to lack support for recent
-[wpan-tools][3]. So we cross build akernel and boot it via tftp.
+[wpan-tools][3]. So we cross build a kernel and boot it via tftp.
Newer kernels have basic support so you only need to do this if you
want to hack on the kernel's [6LoWPAN][1] parts.