# dtls_echo 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 "DATA TO DATA TO DATA!" # Testings ## Boards Those boards that do not support the `../gnrc_networking` example are included in the `BOARD_INSUFFICIENT_MEMORY`, plus the board `cc2650stk`. There are certain boards that are having issues with `crypto.c` and `dtls_time.h` Which for now are in the the `BOARD_BLACKLIST`. The boards that requires `periph_conf.h` are not tested. Boards with problem type 1 (`crypto.c`): z1 wsn430-v1_4 wsn430-v1_3b waspmote-pro msb-430h msb-430 chronos arduino-mega2560 Boards with problem type 2 (`dtls_time.h`): cc2538dk msbiot telosb 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 ## FIT-LAB The code has been tested in the FIT-LAB with M3 motes. However, erros can occurrs. Enabling the line `CFLAGS += -DNDEBUG` in the `Makefile` reduces the risk.