Todo List
Global _sock_tl_ep::netif
port to common network interface identifiers in PR #5511.
Global AT86RF2XX_PARAM_CS
Work around missing RESET pin on Mulle v0.6x
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

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

: Not supported

: Not supported

: Not supported

: Not supported

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 icmpv6.h
build error messages
Global ieee802154_get_frame_hdr_len (const uint8_t *mhr)
include security header implications
Global in_port_t
IPv6 option names
Global lua_riot_builtin_c::luaopen )(lua_State *)
Add better docs.
Global lua_riot_newstate (void *memory, size_t mem_size, lua_CFunction panicf)
Use a per-state allocator
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

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

Implement MLD

Global NETOPT_AUTOCCA
How to get feedback?
Global NETOPT_RX_TIMEOUT
in what time unit?
Global NETOPT_TX_TIMEOUT
in what time unit?
Module pkg_tlsf
The tlsf code uses printf to report errors. This is not OK.
Global PM_BLOCKER_INITIAL

Idle modes are enabled by default, deep sleep mode blocked

Idle modes are enabled by default, deep sleep mode blocked

Module posix_select

Omitted from original specification for now:

  • Inclusion of <signal.h>; no POSIX signal handling implemented in RIOT yet
  • pselect() as it uses sigset_t from <signal.h>
  • handling of the writefds and errorfds parameters of select()

Currently, only sockets are supported

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 definition 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)

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_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 WEAK
This should be made part of RIOT.