SL:Waspmote: Unterschied zwischen den Versionen
imported>Abochem |
imported>Abochem |
||
Zeile 1: | Zeile 1: | ||
+ | == 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 == |
== Requirements == |
||
Version vom 14. Januar 2016, 11:57 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.
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:
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.