as we do not build the periph drivers selectable currently,
the guard is triggered even for boards that do not have any
PWM defined and don't want to use it...
First start calculating the CRC in hardware when receiving a frame.
Then, other than the at86rf2xx transceivers the cc2420 don't consider the
CRC_OK flag when reporting a successful packet reception. This change
introduces a check for this bit and drops the packet else by flushing
the RX FIFO.
When redoing the SPI driver for the msp430 platforms an assert
statement was introduced to prohibit SPI access without any
buffers. Since in the existing code the FIFO pointer is incremented
through a dummy read this results in triggering aforementioned
assert.
It was pointed out that after a state change to RX_AACK_ON reading back
the state to confirm the transition can fail due to an imidiate change
into BUSY_RX_AACK between the successful change on the transceiver and
querying the state.
For this we exclude the readback of the state for transitions to
RX_AACK_ON.
The rational behind this change is the following:
If the transceiver is in any *_BUSY state when `at86rf2xx_set_state()`
gets called this would bypass the `(state == old_state)` check and
unneeded state transitions could be triggered.
without this patch, tx_power is directly set on the device but not in
gnrc_netdev_t. Thus, calling ifconfig in shell shows tx_power always
at 0dBm, never showing the correct, current value. Additionally, it
verifies that given tx_power to be set is in valid range.
`len` and `count` are both values that should never go `< 0`, so instead of
having to test this (in theory) every time the function is called (regardless
of by assert or if its unnecessary code), I propose to change it to `size_t`.
As a bonus I made the type of recv's buf parameter generic - no reason for it to
be a char and it might lead to unnecessary static casting requirements
This patch adds two new options to netopt. NETOPT_CCA_MODE to set
the CCA mode corresponding to the respective PHY standard and
NETOPT_RF_TESTMODE to set the test mode for the radio.
add encryption to drivers
fix new line at the end of file
add shell command for enable encryption and set encryption key on a given device
modify _net_if_set_encrypt_key to support any key length
modify _net_if_set_encrypt_key to support any key length of the key
modify blank line
fix ace before tab in indent
fix ace before tab indent
fix ace before tab indent an error
fix trailing white space
drivers/xbee: encryption support
add encryption to drivers
fix new line at the end of file
add shell command for enable encryption and set encryption key on a given device
modify _net_if_set_encrypt_key to support any key length
modify _net_if_set_encrypt_key to support any key length of the key
modify blank line
fix ace before tab in indent
fix ace before tab indent
fix ace before tab indent an error
fix trailing white space
modify drivers/xbee/xbee.c
fix white spaces on xbee.c
Update xbee encryption driver
white line at end xbee.h
fix error
fix sc_netif.c
fix rebase master interactive
drivers/xbee: encryption support
add encryption to drivers
fix new line at the end of file
add shell command for enable encryption and set encryption key on a given device
modify _net_if_set_encrypt_key to support any key length
modify _net_if_set_encrypt_key to support any key length of the key
modify blank line
fix ace before tab in indent
fix ace before tab indent
fix ace before tab indent an error
fix trailing white space
drivers/xbee: encryption support
add encryption to drivers
fix new line at the end of file
add shell command for enable encryption and set encryption key on a given device
modify _net_if_set_encrypt_key to support any key length
modify _net_if_set_encrypt_key to support any key length of the key
modify blank line
fix ace before tab in indent
fix ace before tab indent
fix ace before tab indent an error
fix trailing white space
modify drivers/xbee/xbee.c
fix white spaces on xbee.c
Update xbee encryption driver
white line at end xbee.h
fix error
fix rebase conflict 4
fix same missing in patches changes
fix ascii to hex index parser
fix syntax rules
fix syntax issue 2
add _netopt_strmap NETOPT_ENCRYPTION e NETOPT_ENCRYPTION_KEY
fix trailng white spaces
When debugging multihop wireless network, it is useful to emulate non-transitive
network, that is, node A can communicate with B and B can communicate with C,
but A cannot communicate with C directly.
If `XBEE_DENIED_ADDRESSES`, which is an array of XBee long addresses, is
defined, packets from those addresses are dropped silently.
Example:
CFLAGS += "-DXBEE_DENIED_ADDRESSES={ 0x02, 0x12, 0x34, 0x56, 0x78, 0x9a, 0xbc, 0xde, 0x02, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11 }"
`_set_addr` is called from `xbee_init` with lower bytes of the long address.
If `_set_addr` destructs the given address, the long address is also destructed.
XBee sends short address even for `API_ID_TX_LONG_ADDR` if short address is
enabled. This results in check sum error of ICMPv6 since the IP address is
computed based on long address on the sender side while it is computed based on
short address on the receiver side.
The cpuid buffer is also used as a temporary buffer to store the EUI-64 of the transceiver, so we need to make sure that it is always big enough.
May be padded with zeroes for smaller CPUIDs.
After some discussion on the devel mailing list about smuggeling in corrupted frames by e.g. SDRs I'd propose we mask the length field according to the datasheet again. It was done before in at86rf2xx_get_length but this funtion did get used anymore along the way.
On OS X, `netdev2_tap` suspends monitoring file descriptor until `_recv` is
called. If no spaces in left in pktbuf, `gnrc_netdev2_eth` does not call `_recv`
that results in deadlock.
With this commit, `gnrc_netdev2_eth` calls `_recv` with NULL buffer and non-zero
length parameter, that indicates the driver to drop frame and resume working.