WITH_LEDS_BLINKING_INVERSE option in MyConfig.
This allows easy inversing of led blink behavior depending on how the
leds were connected.
Introduce hw-macro for digitalWrite used by the LED blinking.
Had to make some chnages to make the code work on codebender (which
seems to run a bit older version of AVR-LIBC. The compiler didn't like
array constructor initializations either..
Whitelisting is enabled using MY_SECURE_NODE_WHITELISTING in MyConfig.h.
The whitelist is provided in backend constructors.
See the SecureActuator example for a typical usecase.
ATSHA204 emulated signing backend. The emulated ATSHA204
implementation offers pseudo random number generation and
HMAC-SHA256 authentication compatible with a "physical"
ATSHA204.
NOTE: Key is stored in clear text in the Arduino firmware.
Therefore, the use of this back-end could compromise the key
used in the signed message infrastructure if device is lost
and its memory dumped.
The seed for the random number generated is sampled from an
analog pin. The pin is set in MyConfig.h using RANDOMSEED_PIN.
The pin should be unconnected.
The key to use for HMAC calculations must match the key used by
other nodes this node will exchange signed messages with. The key
for ATSHA204 emulator is set in MyConfig.h using hmacKey.
Default SDA pin is A3 for single wire communication.
The pin is selected in MyConfig.h.
I2C variant of ATSHA204 is not supported.
Messages are signed using HMAC-SHA256 where some parts of the
message digest are ATSHA204 specific.
The dummy signing driver implements the most rudimentary form of
signing. No pre-shared key is used, nonce is simply incremeted
each turn and signature is only calculated on the fist byte using
data XOR nonce.
This driver is intended for library debugging and sensor network
integrity verification (signed messages will force the radio to
transmit all 32 bytes of data).
It does check SIGNING_IDENTIFIER byte to avoid illegal mixing of
signing backends in the network (as seen by this node) and it does
verify proper execution order on the API.
The dummy driver rejects all other signing backend protocols.
Signing backend is selected in MyConfig.h
Adjusted all Gateway examples but only one sensor example so far
(DallasTemperature). Other sensor examples should get the same three
lines added (not mandatory but helps avoiding unnecessary debugging when
selecting the wrong setup)
Remove unused libraries.
Add default CS/CE pin to Config.h
Add new variebles for voltage and current.
Add new internal command sent to controller when gateway is ready and online