Todo List
Global _is_6ln (const gnrc_ipv6_netif_t *netif)
Use corresponding function in gnrc_netif2 instead.
Global _is_6lr (const gnrc_ipv6_netif_t *netif)
Use corresponding function in gnrc_netif2 instead.
Global _sock_tl_ep::netif
port to common network interface identifiers in PR #5511.
Global AT86RF2XX_DEFAULT_PANID
Read some global network stack specific configuration value
File cc430_regs.h
This file is incomplete, not all registers are listed. Further There are probably some inconsistencies throughout the MSP430 family which need to be addressed.
Global CLOCK_CORECLOCK

Move all clock configuration code here from the board.h

Move all clock configuration code here from the board.h

Move all clock configuration code here from the board.h

Move all clock configuration code here from the board.h

Move all clock configuration code here from the board.h

Move all clock configuration code here from the board.h

Move all clock configuration code here from the board.h

Move all clock configuration code here from the board.h

Move all clock configuration code here from the board.h

Move all clock configuration code here from the board.h

Move all clock configuration code here from the board.h

File cortexm_common/include/cpu.h
remove include irq.h once core was adjusted
Global cpu_print_last_instruction (void)

: Not supported

: Not supported

: Not supported

: Not supported

: Not supported

Module Define the interface to the AT86RF212B radio
Work around missing RESET pin on Mulle v0.6x
Module Define the interface to the AT86RF212B radio
Work around missing RESET pin on Mulle v0.6x
File dev_enums.h
Remove this file once all peripheral drivers are ported to the more efficient implementations style
Module drivers_nrf5x_nrfmin
So far the driver uses only a single RX buffer that is locked until the data was read/discarded. This can potentially lead to a lot of packet loss -> using more than one buffer would help here...
Module drivers_periph

describe concept in detail

link to driver model

describe/link implementation guide

list best practices

Module drivers_periph_adc
Extend interface for continuous mode?
Module drivers_saul
So far, the interface only supports simple read and set operations. It probably needs to be extended to handling events, thresholds, and so on.
Global gcoap_get_resource_list (void *buf, size_t maxlen, uint8_t cf)

add support for JSON CoRE Link Format

add support for 'CBOR CoRE Link Format`

Global getsockopt (int socket, int level, int option_name, void *option_value, socklen_t *option_len)

implement out these functions

File gnrc/icmpv6.h
build error messages
Global gnrc_ipv6_netif_find_best_src_addr (kernel_pid_t pid, const ipv6_addr_t *dest, bool ll_only)

Rule 4 from RFC 6724 is currently not implemented. Has to updated as soon as gnrc supports Mobile IP.

Rule 6 from RFC 6724 is currently not implemented. Has to updated as soon as gnrc supports flow labels.

Rule 7 from RFC 6724 is currently not implemented. Has to updated as soon as gnrc supports temporary addresses.

Global gnrc_ndp_rtr_adv_handle (kernel_pid_t iface, gnrc_pktsnip_t *pkt, ipv6_hdr_t *ipv6, ndp_rtr_adv_t *rtr_adv, size_t icmpv6_size)
As router check consistency as described in RFC 4861, section 6.2.3
Global gnrc_netif2_ipv6_t::route_info_cb )(unsigned type, const ipv6_addr_t *ctx_addr, const void *ctx)
Define types (RRQ, RRN, NSC) in NIB
Global I2C_FLAG_WRITE
Remove dev_enums.h include once all platforms are ported to the updated periph interface
Global ieee802154_get_frame_hdr_len (const uint8_t *mhr)
include security header implications
Global in_port_t
IPv6 option names
Global MSP430_INITIAL_CPU_SPEED

Move this to the periph_conf.h

Move this to the periph_conf.h

Move this to the periph_conf.h

Move this to the periph_conf.h

Move this to the periph_conf.h

Move this to the periph_conf.h

Move this to the periph_conf.h

Move this to the periph_conf.h

Move this to the periph_conf.h

Move this to the periph_conf.h

Move this to the periph_conf.h

Move this to the periph_conf.h

Move this to the periph_conf.h

File msp430_regs.h
This file is incomplete, not all registers are listed. Further There are probably some inconsistencies throughout the MSP430 family which need to be addressed.
Module net_emcute

Gateway discovery (so far there is no support for handling ADVERTISE, GWINFO, and SEARCHGW). Open question to answer here: how to put / how to encode the IPv(4/6) address AND the port of a gateway in the GwAdd field of the GWINFO message

QOS level 2

put the node to sleep (send DISCONNECT with duration field set)

handle DISCONNECT messages initiated by the broker/gateway

support for pre-defined and short topic IDs

handle (previously) active subscriptions on reconnect/disconnect

handle re-connect/disconnect from unresponsive gateway (in case a number of ping requests are unanswered)

react only to incoming ping requests that are actually send by the gateway we are connected to

Module net_gnrc_ipv6_nib

Add detailed description

Implement multihop DAD

Implement classic SLAAC

Global PM_BLOCKER_INITIAL
we block all modes per default, until PM is cleanly implemented
Global sem_close (sem_t *sem)
named semaphore are currently not supported
Global sem_open (const char *name, int oflag,...)
named semaphore are currently not supported
Global sem_unlink (const char *name)
named semaphore are currently not supported
Global sendto (int socket, const void *buffer, size_t length, int flags, const struct sockaddr *address, socklen_t address_len)
For Generic (GNRC) network stack any recvfrom call that is called to receive an expected response to this send command, must be called from the same thread. This is undesired behavior and will be fixed in upcoming versions of RIOT.
Global SOCK_ADDR_ANY_NETIF
Use an equivalent defintion from PR #5511
Global sock_ip_ep_t::netif
port to common network interface identifiers in PR #5511.
File socket.h
Omitted from original specification for now:
  • struct msghdr, struct cmesghdr, and struct linger and all related defines
  • getsockopt()/setsockopt() and all related defines.
  • shutdown() and all related defines.
  • sockatmark()
File stmclk.h
This interface should probably be moved and implemented for every STM32 CPU
Module sys_arduino

Make it possible to bootstrap Arduino code manually from any RIOT application. Include a pseudomule as e.g. arduino_base, which does not implement a main function calling setup() and loop(), so these functions have to be called manually from a RIOT application.

Implement analog outputs (PWM mapping)

Implement analog inputs (ADC mapping)

Implement SPI interface class

Add support for the 'Wire Library' (I2C)

Add means to include various Arduino Libraries (maybe as pkg?)

Implement anything else that is missing...

Adapt Arduino build script, so sketches do not have to have the file ending *.sketch anymore

Module sys_cbor

API for Indefinite-Length Byte Strings and Text Strings (see https://tools.ietf.org/html/rfc7049#section-2.2.2)

Module sys_phydat
It might make sense to introduce additional data types for increased precision, i.e. something like phydat_float_t...
Module sys_vfs
VFS layer reference counting and locking for open files and simultaneous access.
Global THREAD_EXTRA_STACKSIZE_PRINTF

Adjust values for Cortex-M4F with FPU?

Configure second set if no newlib nano.specs are available?

Global time_t
Remove once msp430 libc supports time_t
Global TIMER_DEV (x)
remove dev_enums.h include once all platforms are ported to the updated periph interface
Class timespec
Remove once msp430 libc supports struct timespec
Class timeval
Remove once msp430 libc supports struct timeval