SL:Waspmote: Unterschied zwischen den Versionen

Aus Doc-Wiki
Zur Navigation springen Zur Suche springen
imported>Abochem
imported>Abochem
Zeile 28: Zeile 28:
 
To read out data from the Gateway, on Linux <tt>cutecom</tt> can be used. Use <tt>ls /dev/ttyUSB*</tt> to find out the available TTY devices. If you only connect the gateway, it should be the only thing listed.
 
To read out data from the Gateway, on Linux <tt>cutecom</tt> can be used. Use <tt>ls /dev/ttyUSB*</tt> to find out the available TTY devices. If you only connect the gateway, it should be the only thing listed.
   
If the Gateway is not displaying data or receiving from other nodes, make sure that the XBee parameters are set to the same values on the XBee extension boards for all participating nodes. This can be done by e.g. flashing one of the example applications (Examples -> 03. Communication -> XBEE -> XBEE_802 -> _802_01_configure_XBee_parameters) on a node, putting the boards on it one by one and restarting it. This should configure the boards with some compatible set of parameters.
+
If the Gateway is not displaying data or receiving from other nodes, make sure that the XBee parameters are set to the same values on the XBee extension boards for all participating nodes. This can be done by e.g. flashing one of the example applications (Examples -> 03. Communication -> XBEE -> XBEE_802 -> _802_01_configure_XBee_parameters) on a node, putting the boards on it one by one and restarting it. This should configure the boards with some compatible set of parameters. If this program gives errors, try the waspmote factory default program first.
   
 
The correct baud rate to read out packets from the Gateway will depend on the XBEE parameters flashed on the board connected to it. If configured by the example program as above, it should be 115200, otherwise it may be 9600 or 19200 or something else even. Just try it out. Lots of <tt>\x00</tt> or <tt>\0</tt> output means the baud rate is too high, scrambled too short output means it is too low.
 
The correct baud rate to read out packets from the Gateway will depend on the XBEE parameters flashed on the board connected to it. If configured by the example program as above, it should be 115200, otherwise it may be 9600 or 19200 or something else even. Just try it out. Lots of <tt>\x00</tt> or <tt>\0</tt> output means the baud rate is too high, scrambled too short output means it is too low.

Version vom 18. Januar 2016, 14:09 Uhr

Equipment

We have one Waspmote evaluation kit, including four nodes, a USB Gateway, five XBee modules and various sensors and other accessories.

TODO

Make a list of everything.

Requirements

Get the Waspmote Technical Guide from here: http://www.libelium.com/development/waspmote/documentation/waspmote-technical-guide/

The Waspmote IDE (customized Arduino IDE) can be retrieved here: http://www.libelium.com/development/waspmote/sdk_applications


Getting started and gotchas

Attach one of the rechargeable LiIon batteries to a mote in the three pin white connector towards the middle of the node, next to the three LEDs.

Before using it first, charge using USB for 24h. In contrast with IRIS and CM nodes, for Waspmotes, the battery is required when connecting the node to the PC using USB.

To disconnect a battery, use the plastic pick from the Libelium box. Do not pull on wires. Actually, since the wires look a bit fragile, it may be safer to just always leave the batteries connected.

Each node has two switches, one on the top (where the boards are plugged) and one on the bottom. The top switch is the power switch, the bottom switch is a hibernation switch. You can usually just put them in the same position. Towards the USB connector, the switches are in off position. Towards the middle of the node is on.

To reflash a Waspmote node, it needs to be switched on.

To read out data from the Gateway, on Linux cutecom can be used. Use ls /dev/ttyUSB* to find out the available TTY devices. If you only connect the gateway, it should be the only thing listed.

If the Gateway is not displaying data or receiving from other nodes, make sure that the XBee parameters are set to the same values on the XBee extension boards for all participating nodes. This can be done by e.g. flashing one of the example applications (Examples -> 03. Communication -> XBEE -> XBEE_802 -> _802_01_configure_XBee_parameters) on a node, putting the boards on it one by one and restarting it. This should configure the boards with some compatible set of parameters. If this program gives errors, try the waspmote factory default program first.

The correct baud rate to read out packets from the Gateway will depend on the XBEE parameters flashed on the board connected to it. If configured by the example program as above, it should be 115200, otherwise it may be 9600 or 19200 or something else even. Just try it out. Lots of \x00 or \0 output means the baud rate is too high, scrambled too short output means it is too low.

Security

If you try to use application layer AES encryption, note that Libelium does not provide a decrypt function. Using hardware encryption by configuring the link layer should work? Not tested yet.

TODO

Port our TinyOS AES implementation. It should be faster too. It would be nice to have an Arduino implementation anyway.

Alternatively, look into this: http://munacl.cryptojedi.org/atmega.shtml

For key generation, a way to gather entropy is required. This looks somewhat promising:

https://sites.google.com/site/astudyofentropy/project-definition/timer-jitter-entropy-sources/entropy-library

Reading ADC pins however seems to be a bad idea: http://arxiv.org/pdf/1212.3777.pdf

Going by my experience on other AVR based platforms (i.e. IRIS), the cycle counts specified for the Libelium crypto functions in their docs (http://www.libelium.com/development/waspmote/documentation/encryption-programming-guide/) seem kind of off. RSA looks way too fast and AES too slow. That's also something to look into.