-
Notifications
You must be signed in to change notification settings - Fork 2k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
1 changed file
with
208 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,211 @@ | ||
RIOT-2016.07 - 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) | ||
and is licensed with a non-viral copyleft license (LGPLv2.1), which allows | ||
indirect business models around the free open-source software platform | ||
provided by RIOT. | ||
|
||
About this release: | ||
=================== | ||
This release was focused primarily on fixing bugs, but also adds two new | ||
supported radio transceivers: CC2420 and CC2538. | ||
This new radio support allows to new interoperability tests with other OS, | ||
allowing code size comparison and overall network performance for | ||
platforms based on these radios. | ||
|
||
About 198 pull requests with about 325 commits have been merged since the | ||
last release and about 65 issues have been solved. 46 people contributed with | ||
code in 112 days. 632 files have been touched with 19863 insertions and | ||
3682 deletions. | ||
|
||
|
||
Notations used below: | ||
===================== | ||
+ means new feature/item | ||
* means modified feature/item | ||
- means removed feature/item | ||
|
||
New features and changes | ||
======================== | ||
General | ||
---------- | ||
* No major changes or new features coming on this release. | ||
|
||
Core | ||
---- | ||
+ Introduced Mailbox IPC API (#4919) | ||
* Improved clist | ||
|
||
Network Stack | ||
--- | ||
+ Introduction of netstats in several platforms. | ||
* RPL optional auto initialisation | ||
|
||
|
||
Packages | ||
--- | ||
+ Added statistics for TLSF package (#5418) | ||
+ Added U8g2 library for monochrome displays (#5549) | ||
* Added on-the-fly content creation for CCN-lite. | ||
|
||
|
||
Platforms | ||
--- | ||
+ nrf52dk: add support for building with Nordic SoftDevice (6lo over BLE) | ||
+ Added support for Libellium's waspmote-pro board. | ||
+ Added support for the iotlab A8/M3 node (https://www.iot-lab.info/hardware/a8/) | ||
+ Added initial and rudimentary port for TI cc2650stk "SensorTag" (#4675) | ||
+ Split Zolertia Remote support into Remote Prototype A (remote-pa) and | ||
Remote Revision A (remote-reva) | ||
|
||
Drivers | ||
--- | ||
+ Texas Instruments CC2538 RF driver (PR #5291) | ||
+ Texas Instruments CC2420 RF driver (PR #5591) | ||
+ Bosch BM180 sensor. | ||
+ Added XBee optional AES encryption support | ||
|
||
System libraries | ||
--- | ||
* Several xtimer bug fixes | ||
|
||
Build System | ||
--- | ||
+ Ubuntu 16.04 packaged gcc-arm-none-eabi toolchain can now be used to compile | ||
RIOT for ARM boards | ||
|
||
Other | ||
--- | ||
* Reworked UART and code factorisation for ATmega CPUs. | ||
|
||
API changes | ||
--- | ||
* Unified interface of hashing functions | ||
|
||
Fixed Issues from the last release | ||
================================== | ||
#3824: native: gnrc: hardcore pinging crashes. | ||
#4583: cpp11: clang doesn't allow mutex_t to be used with constexpr All | ||
cpp11-* tests fail with clang. | ||
#5388: gnrc_sixlowpan_iphc_nhc: receiving NHC compressed UDP | ||
packets hits assert in IPv6 (Fixed by #5281). | ||
|
||
|
||
Known 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 | ||
#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. | ||
#5005: ndp: router advertisement sent with global address Under some | ||
circumstances a router might send RAs with GUAs. While they are ignored | ||
on receive (as RFC 4861 specifies), RAs should have link-local addresses | ||
and not even be send out this way. | ||
#5007: gnrc icmpv6: Ping reply goes out the wrong interface | ||
#5055: cpuid: multiple radios will get same EUI-64 Nodes with multiple | ||
interfaces might get the same EUI-64 for them since they are generated from | ||
the same CPU ID. | ||
#5230: gnrc ipv6: multicast packets are not dispatched to the upper layers. | ||
(Fix exists, but was postponed) | ||
#5390: pkg: OpenWSN does not compile This package still uses deprecated | ||
modules and was not tested for a long time. | ||
|
||
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). | ||
#334: 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. | ||
#2071; WIP: native: overdue fixes | ||
#4590: pkg: building relic with clang fails. | ||
#5432: native: valgrind fails | ||
|
||
other platform related issues | ||
----------------------------- | ||
#4560: make: clang is more pedantic than gcc oonf_api is not building with | ||
clang. | ||
(Partly solved by #4593) | ||
#4866: not all GPIO driver implementations are thread safe Due to non-atomic | ||
operations in the drivers some pin configurations might get lost. | ||
#5486: at86rf2xx: lost interrupts | ||
|
||
other issues | ||
------------ | ||
#1263: TLSF implementation contains (a) read-before-write error(s). | ||
#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 | ||
#4488: Making the newlib thread-safe When calling puts/printf after | ||
thread_create(), the CPU hangs for DMA enabled uart drivers. | ||
#4841: xtimer: timer already in the list Under some conditions an xtimer can end | ||
up twice in the internal list of the xtimer module. | ||
#5338: xtimer: xtimer_now() not ISR safe For non-32-bit platforms. | ||
|
||
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 alphabeticalorder): | ||
Atmel, Freescale, Limifrog, Nordic, OpenMote, Phytec, SiLabs, UDOO,and Zolertia; | ||
and also companies that directly sponsored development time:Cisco Systems, | ||
Eistec, Ell-i, Enigeering Spirit, Nordic, FreshTemp LLC, and Phytec. | ||
|
||
More information | ||
================ | ||
http://www.riot-os.org | ||
|
||
Mailing lists | ||
------------- | ||
* RIOT OS kernel developers list | ||
* [email protected] (http://lists.riot-os.org/mailman/listinfo/devel) | ||
* RIOT OS users list | ||
* [email protected] (http://lists.riot-os.org/mailman/listinfo/users) | ||
* RIOT commits | ||
* [email protected] (http://lists.riot-os.org/mailman/listinfo/commits) | ||
* Github notifications | ||
* [email protected] (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-2016.04 - Release Notes | ||
============================ | ||
RIOT is a real-time multi-threading operating system that supports a range of | ||
|