tag:github.com,2008:https://github.com/gustavosinbandera1/RIOT/releases Tags from RIOT 2020-01-22T13:14:25Z tag:github.com,2008:Repository/235600603/2020.01-RC2 2020-01-22T13:14:25Z 2020.01-RC2 <p>Merge pull request <a class="issue-link js-issue-link" href="https://github.com/RIOT-OS/RIOT/pull/13183">RIOT-OS#13183</a> from fjmolinas/backport/2020.01/fix_…</p> <p>…xtimer_now_irqdisable</p> <p>sys/xtimer: _xtimer_now64(): fix irq_disable() return value type [backport 2020.01]</p> fjmolinas tag:github.com,2008:Repository/235600603/2020.04-devel 2020-01-15T22:09:38Z 2020.04-devel fjmolinas tag:github.com,2008:Repository/235600603/2020.01-RC1 2020-01-15T21:43:40Z 2020.01-RC1: Merge pull request #13085 from miri64/boards/feat/feather-nrf52840 <p>Merge pull request <a class="issue-link js-issue-link" href="https://github.com/RIOT-OS/RIOT/pull/13085">RIOT-OS#13085</a> from miri64/boards/feat/feather-nrf5…</p> <p>…2840</p> <p>boards: initial import of Adafruit Feather nRF52840 Express</p> fjmolinas tag:github.com,2008:Repository/235600603/2019.10 2019-10-31T13:11:16Z RELEASE 2019.10 <p>RELEASE 2019.10</p> <p>RIOT-2019.10 - Release Notes <br />============================ <br />RIOT is a multi-threading operating system which enables soft real-time <br />capabilities and comes with support for a range of devices that are typically <br />found in the Internet of Things: 8-bit and 16-bit microcontrollers as well as <br />light-weight 32-bit processors.</p> <p>RIOT is based on the following design principles: energy-efficiency, soft <br />real-time capabilities, small memory footprint, modularity, and uniform API <br />access, independent of the underlying hardware (with partial POSIX compliance).</p> <p>RIOT is developed by an international open-source community which is <br />independent of specific vendors (e.g. similarly to the Linux community) and is <br />licensed with a non-viral copyleft license (LGPLv2.1), which allows indirect <br />business models around the free open-source software platform provided by RIOT.</p> <p>About this release: <br />===================</p> <p>The 2019.10 release includes:</p> <p> - initial support for SUIT firmware updates <br /> - USB CDC-ACM serial communication <br /> - complete rewrite of TI CC110x radio driver <br /> - initial support for IPv6 fragmentation <br /> - DTLS support in the sock networking stack <br /> - complete blockwise messaging for gcoap and nanocoap <br /> - as always, bug fixes and documentation updates</p> <p>About 460 pull requests, composed of 950 commits, have been merged since the <br />last release, and about 60 issues have been solved. 57 people contributed with <br />code in 105 days. Approximately 2000 files have been touched with 129000 <br />insertions and 25000 deletions.</p> <p>Notations used below: <br />===================== <br /> + means new feature/item <br /> * means modified feature/item <br /> - means removed feature/item</p> <p>New features and changes <br />========================</p> <p>System libraries <br />---------------- <br /> + sys/arduino: Added millis() <br /> * sys/arduino: make ADC feature optional <br /> + sys/fmt: Added submodule fmt_table for printing tables <br /> + sys/log: add module for colorized logging <br /> + sys/riotboot: add initial image digest verification <br /> * riotboot: define if building the bootloader <br /> + sys/shell: add heap command <br /> + sys/shell: cancel current line on CTRL-C. <br /> * shell/sc_gnrc_ipv6_nib: list and edit authoritative border router (ABR) list <br /> + sys/suit: initial support for SUIT firmware updates <br /> * sys: add schedstatistics module to remove dependency on xtimer <br /> * can: use memarray for pkt and router allocation <br /> + sys: single interrupt handler thread for interrupts in modules with blocking <br /> functions (but likely to be removed -- see Deprecations section below)</p> <p>Networking <br />---------- <br /> + sys: Add (CoAP) Link Format module <br /> + sys: add credman (D)TLS credential management module <br /> + sys: new sock submodule for DTLS <br /> + gnrc_ipv6_ext_frag: Initial import of IPv6 fragmentation and reassembly <br /> + gnrc_netif: allow for wait of minimum time between sends <br /> * gnrc_netif: add netif setter (part of refactoring to a pointer-based <br /> approach) <br /> * gnrc_sixlowpan_frag_vrb: add gnrc_sixlowpan_frag_vrb_from_route() <br /> + gnrc_sixlowpan_frag_rb: move reassembly buffer functions to their own module <br /> + gcoap: add Blockwise support <br /> * nanocoap: complete Blockwise support <br /> + nanocoap: add coap_opt_get_next() to iterate over options <br /> + nanocoap: add coap_opt_get_opaque() to retrieve option bytes <br /> * gnrc_tcp: several small improvements</p> <p>Packages <br />-------- <br /> * ccn-lite: version bump <br /> * pkg/libcose: bump version and update crypto support <br /> * nimble: adapt to nrf51 family <br /> + nimble: add IP-over-BLE support via netif/GNRC <br /> * nimble: bump version to 1.2.0 <br /> * nimble/netif: set max conn explicitly <br /> * semtech-loramac: add uplink_counter get/set functions <br /> + Cifra: add AES crypto library <br /> * cayenne-lpp: bump version to 0.1.1 <br /> + wolfSSL pkg addition with examples</p> <p>Boards <br />------ <br /> + board: add support for SAMR34-XPRO <br /> + boards/arduino-mkrwan1300: add initial support (without LoRa) <br /> * boards: Split off 128KiB version of bl*pill <br /> + boards/doc: Add a guide to find physical board pins <br /> + boards: Initial support for board HiFive1B <br /> - boards/mips-malta: remove board. <br /> + boards/nrf52: introduce shared dependencies in common/nrf52 and update <br /> boards <br /> * boards/nrf52832-mdk: enable I2C and use default configuration <br /> * board/nucleo-l031k6: Add i2c to periph_conf <br /> * board/nucleo-l432kc: Implementing I2C for board <br /> * boards: move CPU/CPU_MODEL definition to Makefile.features <br /> + boards/p-l496g-cell02: add support <br /> - boards: Remove support for the Jiminy-Mega256RFR2 <br /> * boards/sam0: refactor ADC_0 into plain ADC <br /> * boards/slwstk6000b-*: split one board for each module <br /> * boards/slwstk6000b: move CPU definition to Makefile.features <br /> + boards/stm32f723e-disco: add initial support <br /> * boards/stm32: introduce common timer configurations and use them where <br /> possible <br /> + boards/stm32l0538-disco: add initial support <br /> * pic32-wifire: add support for flashing with pic32prog</p> <p>CPU <br />--- <br /> + cpu/esp32: lwIP netdev <br /> * cpu/esp*: various improvements <br /> * cpu/kinetis: enable HWRNG for k64f <br /> - cpu/mips32r2_generic: remove cpu. <br /> * cpu: Moved stdio_init() prior to periph_init() for ARM targets <br /> * cpu/nrf5x: declare radio_nrfble feat for all nrfs <br /> + cpu/nrf5x: implement wdt peripheral driver <br /> + cpu/sam0_common: add hwrng driver <br /> * cpu/sam0_common/gpio: don't hard-code number of ports <br /> * cpu/sam0: update doc.txt with new MCU families <br /> * cpu/saml21: Make Low-Power SRAM available to programs <br /> + cpu/stm32_common: add watchdog for stm32 <br /> * stm32-common/spi: allow custom pin modes on spi to minimize power <br /> consumption <br /> * cpu/stm32f(2|4|7): add riotboot requirements <br /> * cpu/stm32l1: optimize power consumption <br /> * stm32l1/vendor: update vendor files to v2.3.0 <br /> * sam0: allow flashing with JLinkExe <br /> + sam0: Implement watchdog driver <br /> * cpu/samr30: update vendor files using ASF 3.35.1 <br /> + cpu/efm32: provide periph_uart_mode</p> <p>Device Drivers <br />-------------- <br /> + drivers: add mtd wrapper for periph_flashpage <br /> + drivers/cc110x: Complete rewrite from scratch, and detailed documentation <br /> * drivers/include/periph/eeprom: Changed uint8_t* to void* in API <br /> * drivers/periph/i2c: Updated i2c_release() to return void <br /> + drivers/ph_oem: support for Atlas Scientific pH OEM sensor <br /> + drivers: support for NXP PCA9685 I2C 16-channel, 12-bit PWM controller <br /> + usbus: Add CDC-ACM (Serial console) function <br /> * periph/timer: Fix return codes of timer API <br /> + can: add ncv7356 SW transceiver driver <br /> + drivers/lis2dh12: add I2C mode <br /> + drivers/periph: add doc on power management aspects <br /> * drivers/mrf24j40: add pseudomodules for MRF24J40MA/B/C/D/E</p> <p>Build System / Tooling <br />---------------------- <br /> * dist/tools/pyterm: drop loglevel from output <br /> * make: docker: delegate bind mounts to the containers <br /> * Makefile.base: implement relative path linking without 'realpath' <br /> * Makefile.base: use thin static archives. <br /> * Makefile.include: add flash-only as dependency of term <br /> * Makefile.include: do not build HEXFILE by default anymore <br /> * Makefile.include: require make version 4. <br /> * makefiles: add support for sysfs gpio debug adapter <br /> * Makefiles: add support to generate both `.hex` and `.bin` file and add <br /> FLASHFILE variable <br /> * makefiles/docker.inc.mk: various improvements <br /> * makefiles/murdock.inc.mk: change policy to run tests by default <br /> * make: introduce $(CLEAN) <br /> + murdock: introduce 'TEST_ON_CI_BLACKLIST' <br /> * toolchain/cflags: enable dwarf compression (save 50% HDD) <br /> * edbg: verify before flash <br /> + ci: add codespell check script for tracking typos <br /> + Makefile.include: add cleanterm target and use it for tests <br /> * arduino/sketches: build sketches as a module <br /> + github: use stale-bot to mark and close PRs without activity</p> <p>Testing <br />------- <br /> + tests: add distinct test app for nrfmin driver <br /> + tests: add Nordic SoftDevice test app <br /> * tests/gnrc_ndp: enhance coverage <br /> * tests/lua_loader: run the test in CI <br /> * tests/mcuboot: handle building in docker <br /> * tests/pkg_u8g2: run the test in CI <br /> * tests: provide test case for malformed IEEE 802.15.4 packets <br /> * tests/pthread_rwlock: run the test in CI <br /> * tests: re-enable utf-8 tests on native <br /> + tests/riotboot: add automatic test <br /> + tests/sys_crypto: add RFC3610 and NIST SP 800-38C tests <br /> * tests/test_tools: add a test for the testing tools environment <br /> * tools/compile_and_test_for_board: allow setting the flash targets <br /> * tests/gnrc_tcp: provide regression tests for fixed issues</p> <p>API Changes <br />========================</p> <p>``` <br />/* no error handling possible, so no need to return a value */ <br />- int i2c_release(i2c_t dev) <br />+ void i2c_release(i2c_t dev)</p> <p>/* return 0 on success, rather than 1; so like timer_init() */ <br />int timer_set(tim_t dev, int channel, unsigned int timeout) <br />int timer_set_absolute(tim_t dev, int channel, unsigned int value) <br />int timer_clear(tim_t dev, int channel)</p> <p>/* implementations already cast the argument to uint8_t* internally, so not <br /> a significant semantic change */ <br />- size_t eeprom_read(uint32_t pos, uint8_t *data, size_t len) <br />+ size_t eeprom_read(uint32_t pos, void *data, size_t len)</p> <p>- size_t eeprom_write(uint32_t pos, const uint8_t *data, size_t len) <br />+ size_t eeprom_write(uint32_t pos, const void *data, size_t len)</p> <p>/* now returns CIPHER_ERR_INVALID_KEY_SIZE on invalid keySize */ <br />int aes_init(cipher_context_t *context, const uint8_t *key, uint8_t keySize)</p> <p>/* add setter for netif of interface header */ <br />+ void gnrc_netif_hdr_set_netif(gnrc_netif_hdr_t *hdr, const gnrc_netif_t *netif)</p> <p>```</p> <p>Deprecations <br />========================</p> <p>Warnings <br />-------- <br />net/emb6 <br />net/nhdp <br />pkg/oonf_api</p> <p>As the release was finalized, rough consensus was reached on a system event <br />thread handler (<a class="issue-link js-issue-link" href="https://github.com/RIOT-OS/RIOT/pull/12474">RIOT-OS#12474</a>) that likely will remove the interrupt handler thread <br />(<a class="issue-link js-issue-link" href="https://github.com/RIOT-OS/RIOT/pull/10555">RIOT-OS#10555</a>) just introduced with this release.</p> <p>Removals <br />-------- <br />net/coap: remove deprecated COAP_CT_... defines</p> <p>Known issues <br />============</p> <p>Networking related issues <br />------------------------- <br /> packet buffer <br /> address <br /> assertion or completely without error <br /> configured prefix <br /> chars <br /> address</p> <p>Timer related issues <br />-------------------- <br /> time. <br /> _xtimer_now() and irq_disable()</p> <p>Drivers related issues <br />---------------------- <br /> MHz <br /> clock cycles <br /> supported</p> <p>Native related issues <br />---------------------</p> <p>Other platforms related issues <br />------------------------------ <br /> on host <br /> (not previous) <br /> boards <br /> CS <br /> LTO</p> <p>Build system related issues <br />--------------------------- <br /> flashfile <br /> evaluation <br /> image <br /> value</p> <p>Other issues <br />------------ <br />-none- tests/pkg_fatfs: vol_idx print overflow on large negative value <br /> 10 <br /> static_asserts in the same scope <br /> everywhere</p> <p>Fixed Issues from the last release (2019.07) <br />============================================</p> <p> echo -n <br /> causes Segmentation fault <br /> optimization <br /> in udp.c <br /> log_printfnoformat <br /> Makefile.include <br /> R21 <br /> types</p> <p>Acknowledgements <br />================ <br />We would like to thank all companies that provided us with hardware for porting <br />and testing RIOT-OS. Further thanks go to companies and institutions that <br />directly sponsored development time. And finally, big thanks to all of you <br />contributing in so many different ways to make RIOT worthwhile!</p> <p>More information <br />================ <br /><a href="http://www.riot-os.org">http://www.riot-os.org</a></p> <p>Mailing lists <br />------------- <br />* RIOT OS kernel developers list <br /> devel@riot-os.org (<a href="http://lists.riot-os.org/mailman/listinfo/devel">http://lists.riot-os.org/mailman/listinfo/devel</a>) <br />* RIOT OS users list <br /> users@riot-os.org (<a href="http://lists.riot-os.org/mailman/listinfo/users">http://lists.riot-os.org/mailman/listinfo/users</a>) <br />* RIOT commits <br /> commits@riot-os.org (<a href="http://lists.riot-os.org/mailman/listinfo/commits">http://lists.riot-os.org/mailman/listinfo/commits</a>) <br />* Github notifications <br /> notifications@riot-os.org (<a href="http://lists.riot-os.org/mailman/listinfo/notifications">http://lists.riot-os.org/mailman/listinfo/notifications</a>)</p> <p>IRC <br />--- <br />* Join the RIOT IRC channel at: irc.freenode.net, #riot-os</p> <p>License <br />======= <br />* The code developed by the RIOT community is licensed under the GNU Lesser <br /> General Public License (LGPL) version 2.1 as published by the Free Software <br /> Foundation. <br />* Some external sources and packages are published under a separate license.</p> <p>All code files contain licensing information.</p> kb2ma tag:github.com,2008:Repository/235600603/2019.10-RC2 2019-10-21T10:59:22Z 2019.10-RC2 <p>Merge pull request <a class="issue-link js-issue-link" href="https://github.com/RIOT-OS/RIOT/pull/12521">RIOT-OS#12521</a> from miri64/backport/2019.10/gnrc_ip…</p> <p>…v6/fix/i11980</p> <p>gnrc_ipv6: fix SEGFAULT when multicasting with multiple interfaces [backport 2019.10]</p> kb2ma tag:github.com,2008:Repository/235600603/2020.01-devel 2019-10-10T21:18:25Z 2020.01-devel kb2ma tag:github.com,2008:Repository/235600603/2019.10-RC1 2019-10-10T17:57:54Z 2019.10-RC1: Merge pull request #12375 from miri64/tests/enh/rs-i137 <p>Merge pull request <a class="issue-link js-issue-link" href="https://github.com/RIOT-OS/RIOT/pull/12375">RIOT-OS#12375</a> from miri64/tests/enh/rs-i137</p> <p>tests: prepare for <a class="issue-link js-issue-link" href="https://github.com/RIOT-OS/Release-Specs/issues/137">RIOT-OS/Release-Specs#137</a></p> kb2ma tag:github.com,2008:Repository/235600603/2019.07 2019-07-25T09:36:24Z RELEASE 2019.07 <p>RELEASE 2019.07</p> <p>RIOT-2019.07 - Release Notes <br />============================ <br />RIOT is a multi-threading operating system which enables soft real-time <br />capabilities and comes with support for a range of devices that are typically <br />found in the Internet of Things: 8-bit and 16-bit microcontrollers as well as <br />light-weight 32-bit processors.</p> <p>RIOT is based on the following design principles: energy-efficiency, soft <br />real-time capabilities, small memory footprint, modularity, and uniform API <br />access, independent of the underlying hardware (with partial POSIX compliance).</p> <p>RIOT is developed by an international open-source community which is <br />independent of specific vendors (e.g. similarly to the Linux community) and is <br />licensed with a non-viral copyleft license (LGPLv2.1), which allows indirect <br />business models around the free open-source software platform provided by RIOT.</p> <p>About this release: <br />===================</p> <p>The 2019.07 release includes a number of new features including many new <br />boards and cpu, riotboot added to many new and old boards, USB is now available, <br />BLE improvements, Ethernet on stm32 platforms, as well as many bug fixes and <br />documentation updates. Testing has also improved with both On-Target Testing <br />increasing and now Hardware Assisted Automated Tests being run.</p> <p>About 300 pull requests with about 659 commits have been merged since the last <br />release and about 50 issues have been solved. 26 people contributed with code <br />in 106 days. Approximately 1377 files have been touched with 181993 insertions <br />and 19668 deletions.</p> <p>Notations used below: <br />===================== <br /> + means new feature/item <br /> * means modified feature/item <br /> - means removed feature/item</p> <p>New features and changes <br />========================</p> <p>System libraries <br />---------------- <br /> + Add OCB encryption mode <br /> + sys/shell: add loramac shell command <br /> * Fletcher16: extend with multi-part functions <br /> + USBUS: Initial work towards an USB stack <br /> + usbus: Initial simple auto init structure <br /> * sys: make uart_stdio RX optional <br /> + sys/event: add event_wait_until() <br /> + sys/bluetil: add bluetil_addr_from_str() <br /> + usbus: Add CDC-ECM (Ethernet Control Model) function <br /> * usbus: simplify adding entry to list <br /> * sys/stdio_ethos: replace USE_ETHOS_FOR_STDIO by stdio_ethos pseudomodule</p> <p>Networking <br />---------- <br /> * gnrc_ipv6_nib: add address from netif to address validation timer <br /> + netdev_ieee802154: add txpower and page <br /> + net/lorawan/hdr: add lorawan header helpers <br /> + ble/nimble: add support for build-in IPSS service <br /> * pkg/semtech-loramac: rework interaction with the MAC <br /> * pkg/semtech-loramac: provide basic persistence for MAC state <br /> * RPL: API update suggestions <br /> + ipv6_ext: add fragmentation extension definitions <br /> * net/sock_util: Accept NULL pointers in urlsplit <br /> + sys/net: add netopt options for lorawan <br /> * gnrc_tftp: Fix out-of-bounds memory access when comparing modes <br /> - gnrc_pktbuf: remove gnrc_pktbuf_duplicate_upto <br /> - gnrc_ipv6: remove obsolete and harmful reception code <br /> * gnrc_tftp: set port on server init <br /> + ble/softdevice: add ble_nordic_softdevice feature <br /> * net/mqttsn: fix client ID length to comply to the standard <br /> + gnrc_tftp: Add minimum packet length check</p> <p>Packages <br />-------- <br /> * pkg/monocypher: bump version to 2.0.5 <br /> * ble/nimble: bump version to 9d4bda2 <br /> * openthread: update to release 20180926 <br /> * minmea: bump version to current master <br /> + nanocbor: Initial support for the nanocbor package <br /> * pkg/lua: Make the module searchers conform to the API</p> <p>Boards <br />------ <br /> + boards/stm32l0538-disco: add initial support <br /> + boards/nucleo-l4r5zi: initial basic support <br /> + boards/particle-{xenon,argon,boron}: add initial support <br /> * boards/kw41z: add common configuration and use it with existing <br /> kw41z boards <br /> + added SPI support for Nucleo-F767ZI <br /> + boards: Add support for the Arduino-Leonardo <br /> * boards/nucleof7*: SPI and refactoring <br /> + boards/stm32: introduce and use new common rtt configuration header <br /> + boards/stm32l0/l4: add rtt feature <br /> + boards: add support for i-nucleo-lrwan1 (Arduino-like shield) <br /> + boards/nrf52840-mdk: added I2C config <br /> + boards/lsn50: add support for Dragino LSN50 LoRa Sensor Node <br /> * boards/stm32l0: introduce common clock configuration and apply it to <br /> related boards <br /> * boards/b-l072z-lrwan1: use STM32 common i2C configuration <br /> + Add usbdev feature to Sodaq boards <br /> + boards/pba-d-01-kw2x: add riotboot support <br /> + sensebox: add usbdev feature <br /> + boards/stm32f429i-disc1: add i2c configuration <br /> + boards/nucleo-l476rg: add riotboot <br /> + boards/same54-xpro: add riotboot support <br /> + boards: Add FLASHFILE support <br /> + boards/nucleo-l476rg: Add DMA support <br /> + nrf52: Add suspend/resume detection to usbdev <br /> + nrf5x: Add UART modecfg feature implementation <br /> + boards/stm32f3: add support for riotboot feature <br /> + boards/lobaro-lorabox: add sx1272 radio driver dependency <br /> to netdev_default <br /> + boards/stm32l4: add riotboot support <br /> + boards/microbit: add QEMU emulation <br /> + boards/frdm-kw41z-k64f: add riotboot <br /> * boards/sltb001a: reset before flashing</p> <p>CPU <br />--- <br /> * cpu/esp8266: added/changed helper functions <br /> + cpu/cc2538: Add periph_uart_mode implementation <br /> * saml1x: enable pm_layered by default <br /> + cpu/cc26x0: implement uart_mode() <br /> + cpu/sam0: add support for SAMD5x/SAME5x <br /> + sam0_common: add uart modecfg support <br /> + cpu/stm32f3: add support for flashpage and flashpage_raw <br /> * cpu/stm32l{1,4}: refactor flashpage numof macros <br /> * cpu/stm32: optimize stop mode for stm32f* <br /> * cpu/nrf5x_common: map hwrng to SoC library if SoftDevice is present</p> <p>Device Drivers <br />-------------- <br /> + devfs: add /dev/urandom and /dev/hwrng <br /> * drivers/mrf24j40 : support of NETOPT_LAST_ED_LEVEL <br /> + drivers/mrf24j40: add external PA/LNA control on MC/MD/ME devices <br /> * drivers/at86rf2xx: enable NETOPT_RX_END_IRQ and fix RSSI values <br /> * drivers/adt7310: Replace binary literal with hex literal <br /> + drivers/ds75lx: add basic driver for temperature sensor <br /> + drivers/include: add header definition for wdt <br /> + drivers/at: Add 'at_recv_bytes_until_string' function <br /> + sx127x: add several NETOPT for GNRC LoRaWAN <br /> * drivers/sx127x: fix device reset <br /> + drivers: stm32 eth peripheral driver <br /> + drivers/periph/gpio_util: add gpio_util_shiftin()</p> <p>Build System / Tooling <br />---------------------- <br /> * makefiles/docker: export BOARDS <br /> + makefiles: add bootloaders to the list of applications <br /> * Makefile.include: allow overwriting flash-recipe <br /> * dist/tools/buildsystem_sanity_check: add an export variable check <br /> * sys/Makefile.include: include riotboot headers when <br /> FEATURES_REQUIRED=riotboot <br /> + make: add print-versions helper target <br /> + make: add LOG_LEVEL to overridable variables <br /> * riotboot/Makefile.include: increase RIOTBOOT_HDR_LEN for ARMv7*-M <br /> * dist/tools/build_system_sanity_check: BUG fix errors being ignored <br /> * boards/common: use Makefile.features <br /> + make: add termdeps target <br /> * periph_common: add as dependency to periph drivers <br /> + nrf52: Add USB peripheral driver <br /> + makefiles/boards.inc.mk: list boards variables <br /> + makefiles/app_dirs.inc.mk: target to list supported applications/boards <br /> + Makefile.features: add a common file for the features parsing <br /> + Makefile.features: add declarative FEATURES_ variables definition <br /> + makefiles/utils/variables: add functions to help managing variables <br /> * Migrate all boards to define FLASHFILE <br /> * tools/openocd.sh: try to probe the board for real flash address</p> <p>Testing <br />------- <br /> * tests/periph_flashpage: add RWWEE automatic test if hw supports it <br /> * tests/pthread_tls: allow negative key values <br /> * tests/gnrc_udp: include `gnrc_pktbuf_cmd` per default <br /> + tests/periph_hwrng: add automated python test <br /> * tests/periph_timer: include kw41z boards in low-power timer boards <br /> * tests/pkg_c25519: increase timeout for arduino-mega2560 <br /> + tests/xtimer_usleep: fail with negative offsets <br /> + unittests: add tsrb tests <br /> + tests/stdin: add non regression test for stdin module <br /> + tests/xtimer_mutex_lock_timeout: add simple case test <br /> + Add NimBLE heart rate sensor example (GATT notifications) <br /> * tests/driver_rn2xx3: fix invalid element index for txmode <br /> * tests/pkg_semtech-loramac: don't init the mac from main <br /> * tests/devfs: move tests-devfs out of unittests <br /> + examples/lorawan: fix semtech_loramac_send TX ret code <br /> * tests/unittests: split remaining packages tests to different test <br /> directory</p> <p>API Changes <br />======================== <br />- uart_stdio RX is now optional <br />- CPU_MODEL declared in boards/Makefile.features</p> <p>```c <br />- void isrpipe_init(isrpipe_t *isrpipe, char *buf, size_t bufsize); <br />+ void isrpipe_init(isrpipe_t *isrpipe, uint8_t *buf, size_t bufsize);</p> <p>- int isrpipe_write_one(isrpipe_t *isrpipe, char c); <br />+ int isrpipe_write_one(isrpipe_t *isrpipe, uint8_t c);</p> <p>- int isrpipe_read(isrpipe_t *isrpipe, char *buf, size_t count); <br />+ int isrpipe_read(isrpipe_t *isrpipe, uint8_t *buf, size_t count);</p> <p>- int isrpipe_read_timeout(isrpipe_t *isrpipe, char *buf, size_t count,\ <br /> int32_t timeout); <br />+ int isrpipe_read_timeout(isrpipe_t *isrpipe, uint8_t *buf, size_t count,\ <br /> uint32_t timeout);</p> <p>- int isrpipe_read_all_timeout(isrpipe_t *isrpipe, char *buf, size_t count,\ <br /> uint32_t timeout); <br />+ int isrpipe_read_all_timeout(isrpipe_t *isrpipe, uint8_t *buf, size_t count,\ <br /> uint32_t timeout);</p> <p>typedef struct tsrb { <br />... <br />- char *buf; /**&lt; Buffer to operate on. */ <br />+ uint8_t *buf; /**&lt; Buffer to operate on. */ <br />... <br />} tsrb_t</p> <p>- int tsrb_get(tsrb_t *rb, char *dst, size_t n); <br />+ int tsrb_get(tsrb_t *rb, uint8_t *dst, size_t n);</p> <p>- int tsrb_add_one(tsrb_t *rb, char c); <br />+ int tsrb_add_one(tsrb_t *rb, uint8_t c);</p> <p>- int tsrb_add(tsrb_t *rb, const char *src, size_t n); <br />+ int tsrb_add(tsrb_t *rb, const uint8_t *src, size_t n);</p> <p>typedef struct { <br />... <br />- uint16_t (*calc_rank)(gnrc_rpl_parent_t *parent, uint16_t base_rank); <br />- gnrc_rpl_parent_t *(*which_parent)(gnrc_rpl_parent_t *, gnrc_rpl_parent_t *); <br />+ uint16_t (*calc_rank)(gnrc_rpl_dodag_t *dodag, uint16_t base_rank);</p> <p>- void (*reset)(gnrc_rpl_dodag_t *); /**&lt; resets the OF */ <br />+ void (*reset)(gnrc_rpl_dodag_t *dodag); <br />... <br />- void (*init)(void); /**&lt; OF specific init function */ <br />+ void (*init)(gnrc_rpl_dodag_t *dodag); <br />} gnrc_rpl_of_t;</p> <p>- thread_state_t <br />+ thread_status_t</p> <p>- void sched_set_status(thread_t *process, thread_state_t status); <br />+ void sched_set_status(thread_t *process, thread_status_t status);</p> <p>struct _thread { <br />... <br />- thread_state_t status; <br />+ thread_status_t status; <br />... <br />}</p> <p>- bool mrf24j40_cca(mrf24j40_t *dev); <br />+ bool mrf24j40_cca(mrf24j40_t *dev, int8_t *rssi); <br />```</p> <p>Deprecations <br />========================</p> <p>Warnings <br />-------- <br />`gnrc_tftp` module <br />`ubjson` module</p> <p>Removals <br />-------- <br />`gcoap_req_send()` replaced with `gcoap_req_send2()-&gt;gcoap_req_send2()`</p> <p>Known issues <br />============</p> <p>Networking related issues <br />------------------------- <br /> address <br /> assertion or completely without error <br /> configured prefix <br /> chars <br /> address</p> <p>Timer related issues <br />-------------------- <br /> time. <br /> _xtimer_now() and irq_disable()</p> <p>Drivers related issues <br />---------------------- <br /> clock cycles <br /> R21 <br /> supported</p> <p>Native related issues <br />--------------------- <br /> log_printfnoformat</p> <p>Other platforms related issues <br />------------------------------ <br /> (not previous) <br /> boards <br /> CS <br /> LTO <br /> types</p> <p>Build system related issues <br />--------------------------- <br /> bionic`. <br /> evaluation <br /> image <br /> Makefile.include <br /> value <br />* buildtest with BUILD_IN_DOCKER hides host toolchain errors</p> <p>Other issues <br />------------ <br /> optimization <br /> in udp.c <br /> 10 <br /> static_asserts in the same scope <br /> everywhere</p> <p>Fixed Issues from the last release (2019.04) <br />============================================</p> <p> and no error</p> <p>Acknowledgements <br />================ <br />We would like to thank all companies that provided us with hardware for porting <br />and testing RIOT-OS. Further thanks go to companies and institutions that <br />directly sponsored development time. And finally, big thanks to all of you <br />contributing in so many different ways to make RIOT worthwhile! <br />A special thanks to <a class="user-mention notranslate" href="https://github.com/fjmolinas">@fjmolinas</a>, <a class="user-mention notranslate" href="https://github.com/leandrolanzieri">@leandrolanzieri</a>, <a class="user-mention notranslate" href="https://github.com/cladmi">@cladmi</a>, <a class="user-mention notranslate" href="https://github.com/jia200x">@jia200x</a>, <a class="user-mention notranslate" href="https://github.com/miri64">@miri64</a> <br />for helping run the release tests</p> <p>More information <br />================ <br /><a href="http://www.riot-os.org">http://www.riot-os.org</a></p> <p>Mailing lists <br />------------- <br />* RIOT OS kernel developers list <br /> devel@riot-os.org (<a href="http://lists.riot-os.org/mailman/listinfo/devel">http://lists.riot-os.org/mailman/listinfo/devel</a>) <br />* RIOT OS users list <br /> users@riot-os.org (<a href="http://lists.riot-os.org/mailman/listinfo/users">http://lists.riot-os.org/mailman/listinfo/users</a>) <br />* RIOT commits <br /> commits@riot-os.org (<a href="http://lists.riot-os.org/mailman/listinfo/commits">http://lists.riot-os.org/mailman/listinfo/commits</a>) <br />* Github notifications <br /> notifications@riot-os.org (<a href="http://lists.riot-os.org/mailman/listinfo/notifications">http://lists.riot-os.org/mailman/listinfo/notifications</a>)</p> <p>IRC <br />--- <br />* Join the RIOT IRC channel at: irc.freenode.net, #riot-os</p> <p>License <br />======= <br />* The code developed by the RIOT community is licensed under the GNU Lesser <br /> General Public License (LGPL) version 2.1 as published by the Free Software <br /> Foundation. <br />* Some external sources and packages are published under a separate license.</p> <p>All code files contain licensing information.</p> MrKevinWeiss tag:github.com,2008:Repository/235600603/2019.07-RC3 2019-07-19T13:06:00Z 2019.07-RC3 <p>Merge pull request <a class="issue-link js-issue-link" href="https://github.com/RIOT-OS/RIOT/pull/11873">RIOT-OS#11873</a> from fjmolinas/backport/2019.07/pr_l…</p> <p>…orawan_retcode</p> <p> examples/lorawan: fix semtech_loramac_send TX ret code [backport 2019.07]</p> leandrolanzieri tag:github.com,2008:Repository/235600603/2019.07-RC2 2019-07-17T17:51:30Z 2019.07-RC2 <p>Merge pull request <a class="issue-link js-issue-link" href="https://github.com/RIOT-OS/RIOT/pull/11858">RIOT-OS#11858</a> from cladmi/backport/2019.07/pr/test…</p> <p>…s/unittest/split/devfs</p> <p>tests/devfs: move tests-devfs out of unittests [backport 2019.07]</p> miri64