diff --git a/SUBSYSTEMS.md b/SUBSYSTEMS.md index 00575c1840..e965338857 100644 --- a/SUBSYSTEMS.md +++ b/SUBSYSTEMS.md @@ -36,6 +36,28 @@ affect more than one module. ## Network devices ### IEEE 802.15.4 + - José I. Álamos (@jia200x) + +### NRF802154 + + - José I. Álamos (@jia200x) + +### CC2538 + + - José I. Álamos (@jia200x) + +### KW2XRF + + - José I. Álamos (@jia200x) + +### MRF24J40 + + - José I. Álamos (@jia200x) + +### AT86RF2XX + + - José I. Álamos (@jia200x) + #### AT86RF215 - Benjamin Valentin (@benpicco) @@ -44,6 +66,8 @@ affect more than one module. ### LoRa + - José I. Álamos (@jia200x) + ### CC110X ### ESP-NOW @@ -101,6 +125,10 @@ affect more than one module. - Benjamin Valentin (@benpicco) +#### Netif + + - José I. Álamos (@jia200x) + #### UDP - Martine S. Lenders (@miri64) @@ -109,19 +137,27 @@ affect more than one module. ### OpenThread + - José I. Álamos (@jia200x) + ### LWIP - Martine S. Lenders (@miri64) ### OpenWSN + - José I. Álamos (@jia200x) + ## Physical/Link Layer ### LoRaWAN + - José I. Álamos (@jia200x) + ### BLE (nimble) ### IEEE 802.15.4 + - José I. Álamos (@jia200x) + ## Interfaces ### Sock @@ -129,8 +165,12 @@ affect more than one module. ### Netif + - José I. Álamos (@jia200x) + ### Netdev + - José I. Álamos (@jia200x) + ## Application protocols ### CoAP diff --git a/boards/nrf52840dongle/doc.txt b/boards/nrf52840dongle/doc.txt index 1fe7f11b9d..beb8a3f787 100644 --- a/boards/nrf52840dongle/doc.txt +++ b/boards/nrf52840dongle/doc.txt @@ -29,14 +29,17 @@ reset button as well as 15 configurable external pins. - [nRF52840 web page](https://www.nordicsemi.com/?sc_itemid=%7BCDCCA013-FE4C-4655-B20C-1557AB6568C9%7D) - [documentation and hardware description](https://infocenter.nordicsemi.com/topic/ug_nrf52840_dongle/UG/nrf52840_Dongle/intro.html?cp=3_0_5) -### Flash the board +### Flash the board {#nrf52840dongle_flash} -The board is flashed using its on-board boot loader; the -[nrfutil](https://github.com/NordicSemiconductor/pc-nrfutil) program needs to -be installed. That can turn the binary into a suitable zip file and send it to the -bootloader. +The board is flashed using its on-board boot loader; the proprietary +[nrfutil](https://www.nordicsemi.com/Products/Development-tools/nRF-Util) program needs to +be installed, and `nrfutil install nrf5sdk-tools` needs to be executed. Note +that nrfutil, even when not running the "install" command, will install itself +into `~/.nrfutil`. The older Python based version of nrfutil is no longer +maintained by Nordic, and has become dysfunctional on Python 3.11. -The process is automated in the usual `make flash` target. +The nrfutil can turn the binary into a suitable zip file and send it to the +bootloader. The process is automated in the usual `make flash` target. If RIOT is already running on the board, it will automatically reset the CPU and enter the bootloader. @@ -45,13 +48,6 @@ manually by pressing the board's reset button. Readiness of the bootloader is indicated by LD2 pulsing in red. -#### nrfutil installation - -On systems with Python 2 available, `pip install nrfutil` works. - -On systems with Python 3, a recent version of pip is required to install all dependencies; -you may need to run `pip install --upgrade pip` before being able to run `pip install nrfutil` successfully. - ### Accessing STDIO The usual way to obtain a console on this board is using an emulated USB serial port (CDC-ACM). diff --git a/cpu/avr8_common/avr_libc_extra/posix_unistd.c b/cpu/avr8_common/avr_libc_extra/posix_unistd.c index 05aa350997..55b50f2285 100644 --- a/cpu/avr8_common/avr_libc_extra/posix_unistd.c +++ b/cpu/avr8_common/avr_libc_extra/posix_unistd.c @@ -177,4 +177,9 @@ ssize_t write(int fd, const void *src, size_t count) #endif } +void perror(const char *s) +{ + printf("%s: %s\n", s, strerror(errno)); +} + /** @} */ diff --git a/dist/testbed-support/makefile.iotlab.archi.inc.mk b/dist/testbed-support/makefile.iotlab.archi.inc.mk index 1b34034b97..8ab42b19ff 100644 --- a/dist/testbed-support/makefile.iotlab.archi.inc.mk +++ b/dist/testbed-support/makefile.iotlab.archi.inc.mk @@ -4,17 +4,12 @@ IOTLAB_ARCHI_b-l072z-lrwan1 = st-lrwan1:sx1276 IOTLAB_ARCHI_b-l475e-iot01a = st-iotnode:multi IOTLAB_ARCHI_dwm1001 = dwm1001:dw1000 IOTLAB_ARCHI_firefly = firefly:multi -IOTLAB_ARCHI_frdm-kw41z = frdm-kw41z:multi IOTLAB_ARCHI_iotlab-a8-m3 = a8:at86rf231 IOTLAB_ARCHI_iotlab-m3 = m3:at86rf231 IOTLAB_ARCHI_microbit = microbit:ble -IOTLAB_ARCHI_nrf51dk = nrf51dk:ble IOTLAB_ARCHI_nrf52dk = nrf52dk:ble -IOTLAB_ARCHI_nrf52832-mdk = nrf52832mdk:ble IOTLAB_ARCHI_nrf52840dk = nrf52840dk:multi -IOTLAB_ARCHI_nrf52840-mdk = nrf52840mdk:multi IOTLAB_ARCHI_nucleo-wl55jc = nucleo-wl55jc:stm32wl -IOTLAB_ARCHI_pba-d-01-kw2x = phynode:kw2xrf IOTLAB_ARCHI_samr21-xpro = samr21:at86rf233 IOTLAB_ARCHI_samr30-xpro = samr30:at86rf212b IOTLAB_ARCHI_samr34-xpro = samr34:sx1276 diff --git a/examples/dtls-echo/Makefile.ci b/examples/dtls-echo/Makefile.ci index 0e7e4cfccf..b964559249 100644 --- a/examples/dtls-echo/Makefile.ci +++ b/examples/dtls-echo/Makefile.ci @@ -1,22 +1,30 @@ BOARD_INSUFFICIENT_MEMORY := \ airfy-beacon \ - b-l072z-lrwan1 \ + arduino-duemilanove \ + arduino-leonardo \ + arduino-mega2560 \ + arduino-nano \ + arduino-uno \ + atmega1284p \ + atmega328p \ + atmega328p-xplained-mini \ + atxmega-a3bu-xplained \ blackpill-stm32f103c8 \ blackpill-stm32f103cb \ bluepill-stm32f030c8 \ bluepill-stm32f103c8 \ bluepill-stm32f103cb \ calliope-mini \ - cc2650-launchpad \ - cc2650stk \ + derfmega128 \ hifive1 \ hifive1b \ i-nucleo-lrwan1 \ im880b \ - lsn50 \ - maple-mini \ + mega-xplained \ microbit \ - nrf51dk \ + microduino-corerf \ + msb-430 \ + msb-430h \ nrf51dongle \ nrf6310 \ nucleo-f030r8 \ @@ -24,20 +32,16 @@ BOARD_INSUFFICIENT_MEMORY := \ nucleo-f042k6 \ nucleo-f070rb \ nucleo-f072rb \ - nucleo-f103rb \ nucleo-f302r8 \ nucleo-f303k8 \ nucleo-f334r8 \ nucleo-l011k4 \ nucleo-l031k6 \ nucleo-l053r8 \ - nucleo-l073rz \ - opencm904 \ samd10-xmini \ saml10-xpro \ saml11-xpro \ slstk3400a \ - spark-core \ stk3200 \ stm32f030f4-demo \ stm32f0discovery \ @@ -45,5 +49,9 @@ BOARD_INSUFFICIENT_MEMORY := \ stm32g0316-disco \ stm32l0538-disco \ stm32mp157c-dk2 \ + telosb \ + waspmote-pro \ yunjia-nrf51822 \ + z1 \ + zigduino \ # diff --git a/examples/dtls-sock/Makefile.ci b/examples/dtls-sock/Makefile.ci index 230d191b48..e0a920b713 100644 --- a/examples/dtls-sock/Makefile.ci +++ b/examples/dtls-sock/Makefile.ci @@ -3,21 +3,15 @@ BOARD_INSUFFICIENT_MEMORY := \ b-l072z-lrwan1 \ blackpill-stm32f103c8 \ blackpill-stm32f103cb \ + bluepill-stm32f030c8 \ bluepill-stm32f103c8 \ bluepill-stm32f103cb \ - bluepill-stm32f030c8 \ calliope-mini \ - cc1350-launchpad \ - cc2650-launchpad \ - cc2650stk \ - e104-bt5010a-tb \ - e104-bt5011a-tb \ hifive1 \ hifive1b \ i-nucleo-lrwan1 \ im880b \ lsn50 \ - maple-mini \ microbit \ nrf51dongle \ nrf6310 \ @@ -26,28 +20,22 @@ BOARD_INSUFFICIENT_MEMORY := \ nucleo-f042k6 \ nucleo-f070rb \ nucleo-f072rb \ - nucleo-f103rb \ nucleo-f302r8 \ nucleo-f303k8 \ nucleo-f334r8 \ nucleo-l011k4 \ nucleo-l031k6 \ nucleo-l053r8 \ - nucleo-l073rz \ - olimexino-stm32 \ - opencm904 \ samd10-xmini \ saml10-xpro \ saml11-xpro \ slstk3400a \ - spark-core \ stk3200 \ stm32f030f4-demo \ stm32f0discovery \ stm32f7508-dk \ stm32g0316-disco \ stm32l0538-disco \ - stm32mindev \ stm32mp157c-dk2 \ yunjia-nrf51822 \ # diff --git a/examples/gcoap_dtls/Makefile.ci b/examples/gcoap_dtls/Makefile.ci index b5fc7e8abc..21a39ee469 100644 --- a/examples/gcoap_dtls/Makefile.ci +++ b/examples/gcoap_dtls/Makefile.ci @@ -1,5 +1,16 @@ BOARD_INSUFFICIENT_MEMORY := \ airfy-beacon \ + arduino-duemilanove \ + arduino-leonardo \ + arduino-mega2560 \ + arduino-nano \ + arduino-uno \ + atmega1284p \ + atmega328p \ + atmega328p-xplained-mini \ + atxmega-a1-xplained \ + atxmega-a1u-xpro \ + atxmega-a3bu-xplained \ b-l072z-lrwan1 \ blackpill-stm32f103c8 \ blackpill-stm32f103cb \ @@ -7,12 +18,17 @@ BOARD_INSUFFICIENT_MEMORY := \ bluepill-stm32f103c8 \ bluepill-stm32f103cb \ calliope-mini \ + derfmega128 \ hifive1 \ hifive1b \ i-nucleo-lrwan1 \ im880b \ lsn50 \ + mega-xplained \ microbit \ + microduino-corerf \ + msb-430 \ + msb-430h \ nrf51dongle \ nrf6310 \ nucleo-f030r8 \ @@ -29,8 +45,6 @@ BOARD_INSUFFICIENT_MEMORY := \ samd10-xmini \ saml10-xpro \ saml11-xpro \ - seeedstudio-gd32 \ - sipeed-longan-nano \ slstk3400a \ stk3200 \ stm32f030f4-demo \ @@ -39,5 +53,9 @@ BOARD_INSUFFICIENT_MEMORY := \ stm32g0316-disco \ stm32l0538-disco \ stm32mp157c-dk2 \ + telosb \ + waspmote-pro \ yunjia-nrf51822 \ + z1 \ + zigduino \ # diff --git a/pkg/tinydtls/Makefile b/pkg/tinydtls/Makefile index 1f0d59fdfa..093ed79ab8 100644 --- a/pkg/tinydtls/Makefile +++ b/pkg/tinydtls/Makefile @@ -5,7 +5,10 @@ PKG_LICENSE=EPL-1.0,EDL-1.0 include $(RIOTBASE)/pkg/pkg.mk -CFLAGS += -Wno-implicit-fallthrough +# tinyDTLS custom logging functions pass non-literals to printf(), so disable them +ifneq (,$(filter arch_avr8,$(FEATURES_USED))) + CFLAGS += -DNDEBUG +endif all: $(QQ)"$(MAKE)" -C $(PKG_SOURCE_DIR) -f $(PKG_SOURCE_DIR)/Makefile.riot diff --git a/pkg/tinydtls/Makefile.dep b/pkg/tinydtls/Makefile.dep index c3087a52c0..ece6f6f090 100644 --- a/pkg/tinydtls/Makefile.dep +++ b/pkg/tinydtls/Makefile.dep @@ -7,9 +7,6 @@ USEMODULE += tinydtls_aes USEMODULE += tinydtls_ecc USEMODULE += ztimer_msec -# TinyDTLS only has support for 32-bit architectures ATM -FEATURES_REQUIRED += arch_32bit - ifneq (,$(filter sock_dtls,$(USEMODULE))) USEMODULE += tinydtls_sock_dtls USEMODULE += ztimer_usec diff --git a/pkg/tinydtls/patches/0001-dtls_debug-mock-dsrv_log-when-NDEBUG.patch b/pkg/tinydtls/patches/0001-dtls_debug-mock-dsrv_log-when-NDEBUG.patch new file mode 100644 index 0000000000..499fceee1c Binary files /dev/null and b/pkg/tinydtls/patches/0001-dtls_debug-mock-dsrv_log-when-NDEBUG.patch differ diff --git a/tests/gcoap_dns/Makefile.ci b/tests/gcoap_dns/Makefile.ci index 15c82efa87..15737ba2fb 100644 --- a/tests/gcoap_dns/Makefile.ci +++ b/tests/gcoap_dns/Makefile.ci @@ -1,12 +1,28 @@ BOARD_INSUFFICIENT_MEMORY := \ airfy-beacon \ + arduino-duemilanove \ + arduino-leonardo \ + arduino-mega2560 \ + arduino-nano \ + arduino-uno \ + atmega1284p \ + atmega328p \ + atmega328p-xplained-mini \ + atxmega-a1-xplained \ + atxmega-a1u-xpro \ + atxmega-a3bu-xplained \ blackpill-stm32f103c8 \ bluepill-stm32f030c8 \ bluepill-stm32f103c8 \ calliope-mini \ + derfmega128 \ i-nucleo-lrwan1 \ im880b \ + mega-xplained \ microbit \ + microduino-corerf \ + msb-430 \ + msb-430h \ nrf51dongle \ nrf6310 \ nucleo-f030r8 \ @@ -21,8 +37,6 @@ BOARD_INSUFFICIENT_MEMORY := \ samd10-xmini \ saml10-xpro \ saml11-xpro \ - seeedstudio-gd32 \ - sipeed-longan-nano \ slstk3400a \ stk3200 \ stm32f030f4-demo \ @@ -31,5 +45,9 @@ BOARD_INSUFFICIENT_MEMORY := \ stm32g0316-disco \ stm32l0538-disco \ stm32mp157c-dk2 \ + telosb \ + waspmote-pro \ yunjia-nrf51822 \ + z1 \ + zigduino \ # diff --git a/tests/gnrc_sock_dodtls/Makefile b/tests/gnrc_sock_dodtls/Makefile index 68018f167d..578b487c9c 100644 --- a/tests/gnrc_sock_dodtls/Makefile +++ b/tests/gnrc_sock_dodtls/Makefile @@ -4,9 +4,6 @@ RIOTBASE ?= $(CURDIR)/../.. export TAP ?= tap0 -# TinyDTLS only has support for 32-bit architectures ATM -FEATURES_REQUIRED += arch_32bit - USEMODULE += auto_init_gnrc_netif USEMODULE += ipv4_addr USEMODULE += ipv6_addr diff --git a/tests/gnrc_sock_dodtls/Makefile.ci b/tests/gnrc_sock_dodtls/Makefile.ci index 4fcb7992fd..049408ff34 100644 --- a/tests/gnrc_sock_dodtls/Makefile.ci +++ b/tests/gnrc_sock_dodtls/Makefile.ci @@ -1,11 +1,23 @@ BOARD_INSUFFICIENT_MEMORY := \ + arduino-duemilanove \ + arduino-leonardo \ + arduino-mega2560 \ + arduino-nano \ + arduino-uno \ + atmega1284p \ + atmega328p \ + atmega328p-xplained-mini \ + atxmega-a3bu-xplained \ blackpill-stm32f103c8 \ - bluepill-stm32f103c8 \ bluepill-stm32f030c8 \ + bluepill-stm32f103c8 \ + derfmega128 \ hifive1 \ hifive1b \ i-nucleo-lrwan1 \ im880b \ + mega-xplained \ + microduino-corerf \ msb-430 \ msb-430h \ nucleo-f030r8 \ @@ -26,12 +38,12 @@ BOARD_INSUFFICIENT_MEMORY := \ stk3200 \ stm32f030f4-demo \ stm32f0discovery \ - stm32l0538-disco \ stm32f7508-dk \ stm32g0316-disco \ + stm32l0538-disco \ stm32mp157c-dk2 \ telosb \ - thingy52 \ + waspmote-pro \ z1 \ zigduino \ # diff --git a/tests/nanocoap_cli/Makefile.ci b/tests/nanocoap_cli/Makefile.ci index 5eb0790d82..25fe259785 100644 --- a/tests/nanocoap_cli/Makefile.ci +++ b/tests/nanocoap_cli/Makefile.ci @@ -1,7 +1,17 @@ BOARD_INSUFFICIENT_MEMORY := \ + arduino-duemilanove \ + arduino-leonardo \ + arduino-mega2560 \ + arduino-nano \ + arduino-uno \ + atmega328p \ + atmega328p-xplained-mini \ + atxmega-a1-xplained \ + atxmega-a1u-xpro \ bluepill-stm32f030c8 \ i-nucleo-lrwan1 \ - m1284p \ + mega-xplained \ + microduino-corerf \ msb-430 \ msb-430h \ nucleo-f030r8 \ @@ -14,7 +24,6 @@ BOARD_INSUFFICIENT_MEMORY := \ nucleo-l053r8 \ samd10-xmini \ seeedstudio-gd32 \ - sipeed-longan-nano \ slstk3400a \ stk3200 \ stm32f030f4-demo \ @@ -22,6 +31,7 @@ BOARD_INSUFFICIENT_MEMORY := \ stm32g0316-disco \ stm32l0538-disco \ telosb \ + waspmote-pro \ z1 \ zigduino \ # diff --git a/tests/pkg_tinydtls_sock_async/Makefile b/tests/pkg_tinydtls_sock_async/Makefile index fbf7ecbcfe..04548eb882 100644 --- a/tests/pkg_tinydtls_sock_async/Makefile +++ b/tests/pkg_tinydtls_sock_async/Makefile @@ -1,8 +1,5 @@ include ../Makefile.tests_common -# TinyDTLS only has support for 32-bit architectures ATM -FEATURES_REQUIRED += arch_32bit - # Include packages that pull up and auto-init the link layer. # NOTE: 6LoWPAN will be included if IEEE802.15.4 devices are present USEMODULE += netdev_default diff --git a/tests/pkg_tinydtls_sock_async/Makefile.ci b/tests/pkg_tinydtls_sock_async/Makefile.ci index 230d191b48..397599b27a 100644 --- a/tests/pkg_tinydtls_sock_async/Makefile.ci +++ b/tests/pkg_tinydtls_sock_async/Makefile.ci @@ -1,15 +1,25 @@ BOARD_INSUFFICIENT_MEMORY := \ airfy-beacon \ + arduino-duemilanove \ + arduino-leonardo \ + arduino-mega2560 \ + arduino-nano \ + arduino-uno \ + atmega1284p \ + atmega328p \ + atmega328p-xplained-mini \ + atxmega-a3bu-xplained \ b-l072z-lrwan1 \ blackpill-stm32f103c8 \ blackpill-stm32f103cb \ + bluepill-stm32f030c8 \ bluepill-stm32f103c8 \ bluepill-stm32f103cb \ - bluepill-stm32f030c8 \ calliope-mini \ cc1350-launchpad \ cc2650-launchpad \ cc2650stk \ + derfmega128 \ e104-bt5010a-tb \ e104-bt5011a-tb \ hifive1 \ @@ -18,7 +28,11 @@ BOARD_INSUFFICIENT_MEMORY := \ im880b \ lsn50 \ maple-mini \ + mega-xplained \ microbit \ + microduino-corerf \ + msb-430 \ + msb-430h \ nrf51dongle \ nrf6310 \ nucleo-f030r8 \ @@ -47,7 +61,10 @@ BOARD_INSUFFICIENT_MEMORY := \ stm32f7508-dk \ stm32g0316-disco \ stm32l0538-disco \ - stm32mindev \ stm32mp157c-dk2 \ + telosb \ + waspmote-pro \ yunjia-nrf51822 \ + z1 \ + zigduino \ #