|
| 1 | +RIOT-2014.12 - Release Notes |
| 2 | +============================ |
| 3 | +RIOT is a real-time multi-threading operating system that supports a range of |
| 4 | +devices that are typically found in the Internet of Things: from 8-bit |
| 5 | +microcontrollers to light-weight 32-bit processors. |
| 6 | + |
| 7 | +RIOT is based on the following design principles: energy-efficiency, real-time |
| 8 | +capabilities, small memory footprint, modularity, and uniform API access, |
| 9 | +independent of the underlying hardware (this API offers partial POSIX |
| 10 | +compliance). |
| 11 | + |
| 12 | +New features |
| 13 | +============ |
| 14 | +Core |
| 15 | +---- |
| 16 | ++ introduced new thread_yield() and renamed the old implementation to thread_yield_higher() |
| 17 | + |
| 18 | +Supported platforms |
| 19 | +------------------- |
| 20 | +Additional support for the following boards: |
| 21 | ++ Arduino Mega 2560 (first-time support of an 8-bit platform) |
| 22 | ++ HikoB Fox |
| 23 | ++ Atmel samr21-Xplained Pro |
| 24 | ++ OpenMote |
| 25 | ++ cc2538 Developer Kit |
| 26 | ++ Spark-Core |
| 27 | ++ f4vi1 |
| 28 | ++ Airfy-Beacon |
| 29 | ++ STMF0Discovery Board |
| 30 | ++ STMF3Discovery Board |
| 31 | ++ STMF4Discovery Board |
| 32 | ++ nrf51822 Development Kit |
| 33 | ++ yunjia-nrf51822 |
| 34 | ++ MSB-IoT |
| 35 | ++ native on ARM platforms |
| 36 | + |
| 37 | +Drivers |
| 38 | +------- |
| 39 | ++ various peripheral drivers (ADC, UART, timer, SPI, I²C, RTC, RTT, DAC, PWM...) |
| 40 | ++ MQ-3 alcohol sensor |
| 41 | ++ ISL29020 light sensor |
| 42 | ++ LPS331AP pressure sensor |
| 43 | ++ LSM303DLHC accelerometer |
| 44 | ++ L3G4200D gyroscope |
| 45 | ++ servo motor |
| 46 | ++ TI HDC 1000 low power humidity and temperature digital sensor |
| 47 | ++ SRF02/SRF08 ultrasonic range sensors |
| 48 | ++ PIR motion sensor |
| 49 | ++ RGB LED |
| 50 | + |
| 51 | +Network Stack |
| 52 | +--------------- |
| 53 | ++ AODVv2 |
| 54 | ++ RPL non-storing mode |
| 55 | ++ OF manager for RPL |
| 56 | ++ Source Routing Header support |
| 57 | ++ introduced netapi |
| 58 | ++ introduced netdev, a general interface for network device drivers |
| 59 | ++ introduced global packet buffer |
| 60 | + |
| 61 | +System libraries |
| 62 | +---------------- |
| 63 | ++ CBOR |
| 64 | ++ UBJSON |
| 65 | ++ color module for PWM |
| 66 | + |
| 67 | +Packages |
| 68 | +-------- |
| 69 | ++ libfixmath |
| 70 | + |
| 71 | +Other |
| 72 | +----- |
| 73 | ++ C++ support for most platforms |
| 74 | ++ PCAP based wireless sniffer |
| 75 | + |
| 76 | +Changes |
| 77 | +======= |
| 78 | +Core |
| 79 | +---- |
| 80 | +* PIDs begin with 1 |
| 81 | +* mamximum 16 priority levels for every platform |
| 82 | +* fixed sched_switch() |
| 83 | +* simplified mutex signatures |
| 84 | +* minimized size of TCB |
| 85 | +* allow hwtimer to run with more than 1MHz |
| 86 | +* imported ringbuffer from sys |
| 87 | + |
| 88 | +Supported platforms |
| 89 | +------------------- |
| 90 | +* improved iot-lab_M3 support |
| 91 | +* major improvements on the mbed LPC1768 |
| 92 | +* improved at86rf231 radio driver |
| 93 | +* fixed hwtimer for MSP430 |
| 94 | +* added support for timer B for MSP430 |
| 95 | +* fixed thread_yield() for MSP430 |
| 96 | +* several fixes for the cc2420 |
| 97 | +* improved interrupt handling on ARM |
| 98 | +* adjusted stack sizes for Cortex platforms |
| 99 | + |
| 100 | +Network Stack |
| 101 | +--------------- |
| 102 | +* refactored CCN-lite |
| 103 | +* refactored RPL |
| 104 | +* renamed destiny to transport_layer and socket_base |
| 105 | +* several fixes for TCP |
| 106 | +* split UDP and TCP |
| 107 | + |
| 108 | +System libraries |
| 109 | +---------------- |
| 110 | +- removed hashtable implementation |
| 111 | + |
| 112 | +Packages |
| 113 | +-------- |
| 114 | +* updated and simplified OpenWSN |
| 115 | + |
| 116 | +Other |
| 117 | +----- |
| 118 | +* Improved and cleaned up build system |
| 119 | +* various new helper targets (like debug, distclean, reset, objdump...) |
| 120 | +* use newlib's nano specs if available |
| 121 | +* various new features and added Python 3 compatibility for pyterm |
| 122 | +* major reduction of warnings in doxygen and improved html layout |
| 123 | + |
| 124 | +Fixed Issues from the last release |
| 125 | +================================== |
| 126 | +#426: Interrupt handling on MSP430 is buggy |
| 127 | + Several fixes by @rousselk |
| 128 | +#1798: core: first thread on runqueue is scheduled twice |
| 129 | + Was fixed along with the thread_yield() refactoring |
| 130 | +#1127: Random build fails on OSX |
| 131 | + native is building stable also on OSX now |
| 132 | + |
| 133 | +Known Issues |
| 134 | +============ |
| 135 | +network related issues |
| 136 | +---------------------- |
| 137 | +#21: Deal with stdin in bordermultiplex.c |
| 138 | + Not all supported platforms provide a stdin in the current release. |
| 139 | + However, the implementation of the 6LoWPAN border router won't work |
| 140 | + without stdin. |
| 141 | +#861: neighbor discovery for 6LoWPAN not working |
| 142 | + Duplicate address detection according to RFC 6775 is also missing. |
| 143 | +#1577: ccn-lite: populate does not work with disabled cache |
| 144 | + If cache is set to zero, the chunks cannot be loaded and therefore also not get populated. |
| 145 | +#1870: IPv6 neighbor advertisements are malformed |
| 146 | + According to Wireshark, ICMPv6 neighbor advertisements are malformed (wrong |
| 147 | + checksum or other reasons). |
| 148 | + |
| 149 | +native related issues |
| 150 | +--------------------- |
| 151 | +#495: native not float safe |
| 152 | + When the FPU is used when an asynchronous context switch occurs, either the |
| 153 | + stack gets corrupted or a floating point exception occurs. |
| 154 | +#499: native is segfaulting on heavy network usage |
| 155 | + Sending more than 100 packets per second causes a SEGFAULT in RIOT native. |
| 156 | +#534: native debugging on osx fails |
| 157 | + Using valgrind or gdb with a nativenet target in OSX leads to "the network" |
| 158 | + being stuck (gdb) or the whole process being stuck (valgrind). |
| 159 | +#715: test_hwtimer_wait fails on native |
| 160 | + The problem appears to be lost signals and depends on the CPU speed. |
| 161 | +#787: reboot not working with open file descriptors on native |
| 162 | + If for example a tap device is in use, the reboot command fails. |
| 163 | +#862: sometimes the tap bridge does not work in native |
| 164 | + Sometimes (rather suddenly) packages are not received by a TAP and won't be |
| 165 | + received even if I reconfigure the bridge. |
| 166 | + |
| 167 | + |
| 168 | +other platform related issues |
| 169 | +----------------------------- |
| 170 | +#1232: x86 doesn't build on OS X with clang |
| 171 | + Current version of the x86 port doesn't build for OS X with clang. |
| 172 | +#1442: setting channel is not persistent cc2420 |
| 173 | + After changing the channel via a shell command, the channel reverts back to an arbitrary |
| 174 | + value. However, this might be only a shell problem. |
| 175 | +#1753: vtimer_msg test crashes after ~49'20" |
| 176 | + dependent on the platform, vtimer stops working after some time. |
| 177 | +#1891: printf formatting does not work properly on some Cortex platforms for 64 bit numbers |
| 178 | + This problem happens mostly for the Newlib nano, which does not support 64 bit integer |
| 179 | + printing, but sometimes happens also with other toolchains. |
| 180 | +#1964 and #1955: eventual problems with IoT-LAB M3 nodes in the testbed |
| 181 | + The shell is sometimes not properly working after a reboot and the PDR is sometimes |
| 182 | + worse than expected. |
| 183 | +#2143: tests.core doesn't compile for all platforms |
| 184 | + For some missing GCC compiler builtins, the unittests do not compile for MSP430 |
| 185 | + platforms. |
| 186 | +#2228: samd21 stack sizes are too small |
| 187 | + The application examples/default for example will crash when issuing the txtsnd command |
| 188 | + |
| 189 | +other issues: |
| 190 | +-------------- |
| 191 | +#1449: a removed vtimer might still get called back by hwtimer |
| 192 | + The timer callback might still fire even after vtimer_remove() was called. |
| 193 | +#2175: valgrind registeres "Invalid write of size 4" in unittests for ubjson |
| 194 | + According to valgrind the stack gets corrupted in UBJSON. |
| 195 | + |
| 196 | +For all issues and open pull requests please check the RIOT issue tracker: |
| 197 | +https://github.com/RIOT-OS/RIOT/issues |
| 198 | + |
| 199 | +Special Thanks |
| 200 | +-------------------- |
| 201 | +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): airfy, Atmel, ELL-i, Intel, IoT-Lab, mbed, Phytec, and Udoo |
| 202 | + |
| 203 | + |
| 204 | +More information |
| 205 | +================ |
| 206 | +http://www.riot-os.org |
| 207 | + |
| 208 | +Mailing lists |
| 209 | +------------- |
| 210 | +* RIOT OS kernel developers list |
| 211 | + * devel@riot-os.org (http://lists.riot-os.org/mailman/listinfo/devel) |
| 212 | +* RIOT OS users list |
| 213 | + * users@riot-os.org (http://lists.riot-os.org/mailman/listinfo/users) |
| 214 | +* RIOT commits |
| 215 | + * commits@riot-os.org (http://lists.riot-os.org/mailman/listinfo/commits) |
| 216 | +* Github notifications |
| 217 | + * notifications@riot-os.org (http://lists.riot-os.org/mailman/listinfo/notifications) |
| 218 | + |
| 219 | +License |
| 220 | +======= |
| 221 | +* All sources and binaries that have been developed at Freie Universität Berlin |
| 222 | + and most of the other code are licensed under the GNU Lesser General Public |
| 223 | + License version 2 as published by the Free Software Foundation. |
| 224 | +* Some external sources, especially files developed by SICS are published under |
| 225 | + a separate license. |
| 226 | + |
| 227 | +All code files contain licensing information. |
| 228 | + |
| 229 | + |
1 | 230 | RIOT-2014.05 - Release Notes
|
2 | 231 | ============================
|
3 | 232 | RIOT is a real-time multi-threading operating system that supports a range of
|
|
0 commit comments