This example shows you how to use TinyDTLS with the non-socket approach.
This code is based on ../gnrc_networking and ../gnrc_tftp. Is a good idea to read their README.md's for any doubt of how making the testings.
SOCKET vs. Non-socket (GNRC)
This example is configured to use the GNRC instead of sockets (over GNRC). At the moment, the configuration must be done manually in the Makefile of this project.
Fast configuration (Between RIOT instances):
Preparing the logical interfaces:
./../../dist/tools/tapsetup/tapsetup --create 2
For the server instance:
make all; PORT=tap1 make term dtlss start ifconfig
Do not forget to copy the IPv6 addresses!
For the client:
PORT=tap0 make term dtlsc <IPv6's server address> "DATA TO DATA TO DATA!"
Those boards that do not support the
../gnrc_networking example are included
BOARD_INSUFFICIENT_MEMORY, plus the board
There are certain boards that are having issues with
dtls_time.h Which for now are in the the
The boards that requires
periph_conf.h are not tested.
Boards with problem type 1 (
Boards with problem type 2 (
Boards with problem type 3 (Redifinition): saml21-xpro samr21-xpro arduino-uno arduino-duemilanove
NOTE: Those on type 1 can be benefit of the following PR: https://github.com/RIOT-OS/RIOT/issues/2360 However, there are still issues to fix.
NOTE: Those on type 2 can be fixed with the patch at https://github.com/RIOT-OS/RIOT/pull/5974
The code has been tested in the FIT-LAB with M3 motes.
However, erros can occurrs. Enabling the line
CFLAGS += -DNDEBUG in
Makefile reduces the risk.