mirror of
https://github.com/RIOT-OS/RIOT.git
synced 2024-12-29 04:50:03 +01:00
2015.12: added release notes
This commit is contained in:
parent
398a81c287
commit
4d69f76660
@ -1,3 +1,230 @@
|
||||
RIOT-2015.12 - Release Notes
|
||||
============================
|
||||
RIOT is a real-time multi-threading operating system that supports a range of
|
||||
devices that are typically found in the Internet of Things: 8-bit
|
||||
microcontrollers, 16-bit microcontrollers and light-weight 32-bit processors.
|
||||
|
||||
RIOT is based on the following design principles: energy-efficiency, real-time
|
||||
capabilities, small memory footprint, modularity, and uniform API access,
|
||||
independent of the underlying hardware (this API offers partial POSIX
|
||||
compliance).
|
||||
|
||||
RIOT is developed by an international open source community which is
|
||||
independent of specific vendors (e.g. similarly to the Linux community).
|
||||
|
||||
About this release:
|
||||
===================
|
||||
This release is mostly a clean-up and bug-fixing release. Besides that, it introduces SAUL,
|
||||
the [S]ensor [A]ctuator [U]ber [L]ayer, which offers a unified API to interact with all
|
||||
different types of sensors and actuators on RIOT supported hardware. Furthermore, it re-enables
|
||||
the support for ICN by integrating CCN-Lite as a package. A lot of new overall documentation was
|
||||
added and existing documentation was improved (http://riot-os.org/api/). In addition,
|
||||
a Vagrant (https://www.vagrantup.com/) configuration file was added to the RIOT repository in
|
||||
order to create reproducible and portable environments that contain all necessary toolchains.
|
||||
|
||||
About 222 pull requests with about 631 commits have been merged since the last release and 48
|
||||
additional issues have been solved. 37 people contributed code in 102 days. 980 files have been
|
||||
touched with ~59779 insertions and ~12115 deletions.
|
||||
|
||||
Notations used below:
|
||||
=====================
|
||||
+ means new feature/item
|
||||
* means modified feature/item
|
||||
- means removed feature/item
|
||||
|
||||
|
||||
New features and changes
|
||||
========================
|
||||
|
||||
General
|
||||
-------
|
||||
|
||||
Device support
|
||||
--------------
|
||||
+ SAUL [S]ensor [A]ctuator [U]ber [L]ayer
|
||||
|
||||
Core
|
||||
----
|
||||
* replaced deprecated dINT()/eINT() calls by up-to-date disableIRQ()/enableIRQ()/restoreIRQ()
|
||||
calls throughout the whole core
|
||||
|
||||
Network Stack
|
||||
-------------
|
||||
+ TFTP support
|
||||
+ 6LoWPAN: Next Header Compression
|
||||
+ leaf mode for RPL nodes
|
||||
* RPL: refactoring of instances and dodags (saved 1kB ROM and 0,5kB RAM)
|
||||
* FIB: initial source route support
|
||||
* change to non-blocking 6LoWPAN fragmentation
|
||||
* POSIX sockets: various fixes
|
||||
* periodic stats printing for ping6 command
|
||||
* convert all vtimer into xtimer calls
|
||||
* send router advertisements without PIOs
|
||||
|
||||
Packages
|
||||
--------
|
||||
+ CCN-Lite as a ICN network stack
|
||||
+ RELIC: efficient cryptography library
|
||||
* fix TLSF to compile with -pedantic
|
||||
|
||||
Supported platforms
|
||||
-------------------
|
||||
Additional support for the following boards:
|
||||
+ weio board with NXP LPC11U34 (ARM Cortex-M0)
|
||||
+ Silicon Labs Wireless Eval Kit SLWSTK6220A (Wonder Gecko)
|
||||
+ STM32 Nucleo-F401
|
||||
|
||||
Drivers
|
||||
-------
|
||||
+ Arduino-mega2560 GPIO
|
||||
+ Arduino pin mapping for Mega2560 and Due
|
||||
|
||||
Network drivers
|
||||
---------------
|
||||
+ enc28j60 Ethernet chip
|
||||
+ at86rf2xx: Add support for channel page
|
||||
* at86rf2xx: fix LQI reading
|
||||
* implement sleep mode for at86rf2xx
|
||||
|
||||
Sensors drivers
|
||||
---------------
|
||||
+ AT30TSE75x temperature sensor
|
||||
+ TCS3772 Color Light-to-Digital converter
|
||||
|
||||
System libraries
|
||||
----------------
|
||||
+ partial support for the Arduino API
|
||||
+ lightweight semaphores
|
||||
+ fmt: simple string formatting library
|
||||
+ xtimer: 32-bit version of msg_recv_timeout
|
||||
* implicit socket binding for POSIX connect() and sendto()
|
||||
* posix_semaphore: make API POSIX compliant
|
||||
|
||||
Examples
|
||||
--------
|
||||
+ microcoap/conn example
|
||||
+ minimal GNRC networking example
|
||||
|
||||
Build System
|
||||
------------
|
||||
* split the Cortex-M0 buildtest group to avoid timeout issues with Travis
|
||||
* split the Cortex-M4 buildtest group to avoid timeout issues with Travis
|
||||
|
||||
Other
|
||||
-----
|
||||
+ vagrant configuration
|
||||
+ documentation: various high-level descriptions of crucial features
|
||||
+ IoT-LAB: create and connect to debug server
|
||||
* pyterm: fix problems with German umlauts as input
|
||||
|
||||
Fixed Issues from the last release
|
||||
==================================
|
||||
|
||||
#2724: Add support for serial number passing to CMSIS boards, document it
|
||||
Documentation about how to discover and set the serial number of CMSIS-DAP chips is missing
|
||||
#3201: Odd length packet snips cause invalid check sum
|
||||
If an odd length packet snip occurs in a packet and is not the last snip
|
||||
(in the order the packet is supposed to be, not in the list's order)
|
||||
in a packet it will generate a wrong check sum.
|
||||
|
||||
Known Issues
|
||||
============
|
||||
|
||||
network related issues
|
||||
----------------------
|
||||
#3075: nhdp: unnecessary microsecond precision
|
||||
NHDP works with timer values of microsecond precision which is not required. Changing
|
||||
to lower precision would save some memory.
|
||||
#3086: Max. packet length for AT86RF2XX
|
||||
The size of the link-layer header is not dynamically calculated, but instead the maximum
|
||||
size is always assumed.
|
||||
#3970: RPL: Advertise DODAG only over the assigned interface
|
||||
gnrc_rpl seems to multicast DIOs over all interfaces, though gnrc_rpl_init expects an
|
||||
interface as parameter and sets the RPL-nodes multicast address only for that interface.
|
||||
#4048: potential racey memory leak
|
||||
According to the packet buffer stats, flood-pinging a multicast destination may lead to a
|
||||
memory leak due to a race condition. However, it seems to be a rare case and a
|
||||
completely filled up packet buffer was not observed.
|
||||
#4462: IPHC/NHC broken between Linux and a RIOT node with a RIOT-based border router in between.
|
||||
|
||||
native related issues
|
||||
---------------------
|
||||
#495: native not float safe
|
||||
When the FPU is used when an asynchronous context switch occurs, either the
|
||||
stack gets corrupted or a floating point exception occurs.
|
||||
#534: native debugging on osx fails
|
||||
Using valgrind or gdb with a nativenet target in OSX leads to "the network"
|
||||
being stuck (gdb) or the whole process being stuck (valgrind).
|
||||
#3341 and #3824: nativenet crashes when hammered
|
||||
Flood-pinging a native instance from more than one host (either multiple threads on the
|
||||
host system or multiple other native instances), leads to a SEGFAULT.
|
||||
#4608: tests/xtimer_usleep_until: unstable behaviour
|
||||
The test starts to output "too large difference" and fails after a random period of time.
|
||||
|
||||
other platform related issues
|
||||
-----------------------------
|
||||
#4560: make: clang is more pedantic than gcc
|
||||
oonf_api is not building with clang.
|
||||
#4583: cpp11: clang doesn't allow `mutex_t` to be used with `constexpr`
|
||||
All cpp11-* tests fail with clang.
|
||||
|
||||
other issues
|
||||
------------
|
||||
#2761: core: define default flags
|
||||
If a thread is created without the corresponding flag (CREATE_STACKTEST),
|
||||
the ps command will yield wrong numbers for the stack usage
|
||||
#2927: core: Automatically select the lowest possible LPM mode
|
||||
Not all available low power modes (LPMs) are implemented for each platform and the
|
||||
concept of how the LPM is chosen needs some reconsideration
|
||||
#2967: Makefile.features: location is not relevant for all features
|
||||
Provided features for the build system should be split up into a board and cpu specific
|
||||
part
|
||||
#3109: periph/random: random_read should return unsigned int
|
||||
The documentation of this function does not match corresponding implementation.
|
||||
#4488: Making the newlib thread-safe
|
||||
When calling puts/printf after thread_create(), the CPU hangs for DMA enabled uart drivers.
|
||||
|
||||
Special Thanks
|
||||
--------------
|
||||
We like to give our special thanks to all the companies that provided us with their hardware
|
||||
for porting and testing, namely the people from (in alphabetical order):
|
||||
Atmel, Freescale, Limifrog, Phytec, SiLabs, and Zolertia; and also companies that directly
|
||||
sponsored development time:
|
||||
Cisco Systems, Google, Eistec, Ell-i, Engineering Spirit, FreshTemp LLC, and Phytec.
|
||||
|
||||
More information
|
||||
================
|
||||
http://www.riot-os.org
|
||||
|
||||
Mailing lists
|
||||
-------------
|
||||
* RIOT OS kernel developers list
|
||||
* devel@riot-os.org (http://lists.riot-os.org/mailman/listinfo/devel)
|
||||
* RIOT OS users list
|
||||
* users@riot-os.org (http://lists.riot-os.org/mailman/listinfo/users)
|
||||
* RIOT commits
|
||||
* commits@riot-os.org (http://lists.riot-os.org/mailman/listinfo/commits)
|
||||
* Github notifications
|
||||
* notifications@riot-os.org (http://lists.riot-os.org/mailman/listinfo/notifications)
|
||||
|
||||
IRC
|
||||
-----
|
||||
* Join the RIOT IRC channel at: irc.freenode.net, #riot-os
|
||||
|
||||
License
|
||||
=======
|
||||
|
||||
* Most of the code developed by the RIOT community is licensed under the
|
||||
GNU Lesser General Public License (LGPL) version 2.1 as published by the Free Software Foundation.
|
||||
* Some external sources are published under a separate, LGPL compatible license
|
||||
(e.g. some files developed by SICS).
|
||||
|
||||
All code files contain licensing information.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
RIOT-2015.09 - Release Notes
|
||||
============================
|
||||
RIOT is a real-time multi-threading operating system that supports a range of
|
||||
|
Loading…
Reference in New Issue
Block a user