PSEUDOMODULES += openwsn_serial \ openwsn_debugpins \ openwsn_6lo_fragmentation \ openwsn_icmpv6_echo \ openwsn_iee802154e_security \ openwsn_leds \ openwsn_sock \ openwsn_sock_async \ openwsn_scheduler \ openwsn_sctimer \ openwsn_sctimer_rtt \ openwsn_sctimer_ztimer \ openwsn_radio \ # DIRS += $(RIOTBASE)/pkg/openwsn/contrib # Using -isystem instead of -I to prevent warnings for the following headers INCLUDES += -isystem$(PKGDIRBASE)/openwsn \ -isystem$(PKGDIRBASE)/openwsn/kernel \ -isystem$(PKGDIRBASE)/openwsn/inc \ -isystem$(PKGDIRBASE)/openwsn/drivers/common \ -isystem$(PKGDIRBASE)/openwsn/drivers/common/crypto \ -isystem$(PKGDIRBASE)/openwsn/bsp/boards/ \ -isystem$(PKGDIRBASE)/openwsn/openstack/ \ -isystem$(PKGDIRBASE)/openwsn/openstack/02a-MAClow \ -isystem$(PKGDIRBASE)/openwsn/openstack/02b-MAChigh \ -isystem$(PKGDIRBASE)/openwsn/openstack/03a-IPHC \ -isystem$(PKGDIRBASE)/openwsn/openstack/03b-IPv6 \ -isystem$(PKGDIRBASE)/openwsn/openstack/04-TRAN \ -isystem$(PKGDIRBASE)/openwsn/openstack/cross-layers \ -isystem$(PKGDIRBASE)/openwsn/openapps \ -isystem$(PKGDIRBASE)/openwsn/openapps/cjoin \ -isystem$(PKGDIRBASE)/openwsn/openweb \ -isystem$(PKGDIRBASE)/openwsn/openweb/opencoap \ -isystem$(RIOTBASE)/pkg/openwsn/include \ ifneq (,$(filter openwsn_riotos,$(USEMODULE))) INCLUDES += -isystem$(RIOTBASE)/pkg/openwsn/scheduler DIRS += $(RIOTBASE)/pkg/openwsn/scheduler endif ifneq (,$(filter openwsn_sock_udp,$(USEMODULE))) INCLUDES += -isystem$(RIOTBASE)/pkg/openwsn/sock DIRS += $(RIOTBASE)/pkg/openwsn/sock endif # Set OpenWSN configurations flags, see $(PKG_SOURCE_DIR)/openwsn-fw/inc/config.h ifneq (,$(filter openwsn_cjoin,$(USEMODULE))) CFLAGS += -DBOARD_CRYPTOENGINE_ENABLED=1 endif ifneq (,$(filter openwsn_sock%,$(USEMODULE))) ifneq (,$(filter openwsn_sock_async,$(USEMODULE))) CFLAGS += -DSOCK_HAS_ASYNC endif ifneq (,$(filter sock_async_event,$(USEMODULE))) # Needed only if using event and not simple callbacks CFLAGS += -DSOCK_HAS_ASYNC_CTX endif endif # In OpenWSN the ISR stack is shared with the network stack. OpenWSN stack is # 2Kb, this means that the ISR stack in OpenWSN might have up to 2Kb available. # To keep the same marging increase the ISR stack to 2Kb as well. In practice # 1Kb should be enough. CFLAGS += -DISR_STACKSIZE=2048 # at86rf2xx state machine is in enhanced mode by default, OpenWSN requires # basic mode. ifneq (,$(filter at86rf2xx,$(USEMODULE))) CFLAGS += -DAT86RF2XX_BASIC_MODE endif # Auto ACK should be disabled in order to run OpenWSN ifndef CONFIG_KCONFIG_USEMODULE_IEEE802154 CFLAGS += -DCONFIG_IEEE802154_AUTO_ACK_DISABLE endif