首页
开源
资讯
活动
开源许可证
软件工程云服务
软件代码质量检测云服务
持续集成与部署云服务
社区个性化内容推荐服务
贡献审阅人推荐服务
群体化学习服务
重睛鸟代码扫描工具
登录
注册
代码拉取完成,页面将自动刷新
Watch
1
Star
0
Fork
14
咖啡不解困
/
riot-os
forked from
Gitee 极速下载
/
riot-os
Fork 仓库
加载中
取消
确认
确定同步?
同步操作将从
Gitee 极速下载/riot-os
强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
同步 Wiki
(当前仓库的 wiki 将会被覆盖!)
取消
确定
代码
Wiki
208
统计
标签
标签名
描述
提交信息
操作
2019.10
RELEASE 2019.10 RIOT-2019.10 - Release Notes ============================ RIOT is a multi-threading operating system which enables soft real-time capabilities and comes with support for a range of devices that are typically found in the Internet of Things: 8-bit and 16-bit microcontrollers as well as light-weight 32-bit processors. RIOT is based on the following design principles: energy-efficiency, soft real-time capabilities, small memory footprint, modularity, and uniform API access, independent of the underlying hardware (with 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: =================== The 2019.10 release includes: - initial support for SUIT firmware updates - USB CDC-ACM serial communication - complete rewrite of TI CC110x radio driver - initial support for IPv6 fragmentation - DTLS support in the sock networking stack - complete blockwise messaging for gcoap and nanocoap - as always, bug fixes and documentation updates About 460 pull requests, composed of 950 commits, have been merged since the last release, and about 60 issues have been solved. 57 people contributed with code in 105 days. Approximately 2000 files have been touched with 129000 insertions and 25000 deletions. Notations used below: ===================== + means new feature/item * means modified feature/item - means removed feature/item New features and changes ======================== System libraries ---------------- + sys/arduino: Added millis() * sys/arduino: make ADC feature optional + sys/fmt: Added submodule fmt_table for printing tables + sys/log: add module for colorized logging + sys/riotboot: add initial image digest verification * riotboot: define if building the bootloader + sys/shell: add heap command + sys/shell: cancel current line on CTRL-C. * shell/sc_gnrc_ipv6_nib: list and edit authoritative border router (ABR) list + sys/suit: initial support for SUIT firmware updates * sys: add schedstatistics module to remove dependency on xtimer * can: use memarray for pkt and router allocation + sys: single interrupt handler thread for interrupts in modules with blocking functions (but likely to be removed -- see Deprecations section below) Networking ---------- + sys: Add (CoAP) Link Format module + sys: add credman (D)TLS credential management module + sys: new sock submodule for DTLS + gnrc_ipv6_ext_frag: Initial import of IPv6 fragmentation and reassembly + gnrc_netif: allow for wait of minimum time between sends * gnrc_netif: add netif setter (part of refactoring to a pointer-based approach) * gnrc_sixlowpan_frag_vrb: add gnrc_sixlowpan_frag_vrb_from_route() + gnrc_sixlowpan_frag_rb: move reassembly buffer functions to their own module + gcoap: add Blockwise support * nanocoap: complete Blockwise support + nanocoap: add coap_opt_get_next() to iterate over options + nanocoap: add coap_opt_get_opaque() to retrieve option bytes * gnrc_tcp: several small improvements Packages -------- * ccn-lite: version bump * pkg/libcose: bump version and update crypto support * nimble: adapt to nrf51 family + nimble: add IP-over-BLE support via netif/GNRC * nimble: bump version to 1.2.0 * nimble/netif: set max conn explicitly * semtech-loramac: add uplink_counter get/set functions + Cifra: add AES crypto library * cayenne-lpp: bump version to 0.1.1 + wolfSSL pkg addition with examples Boards ------ + board: add support for SAMR34-XPRO + boards/arduino-mkrwan1300: add initial support (without LoRa) * boards: Split off 128KiB version of bl*pill + boards/doc: Add a guide to find physical board pins + boards: Initial support for board HiFive1B - boards/mips-malta: remove board. + boards/nrf52: introduce shared dependencies in common/nrf52 and update boards * boards/nrf52832-mdk: enable I2C and use default configuration * board/nucleo-l031k6: Add i2c to periph_conf * board/nucleo-l432kc: Implementing I2C for board * boards: move CPU/CPU_MODEL definition to Makefile.features + boards/p-l496g-cell02: add support - boards: Remove support for the Jiminy-Mega256RFR2 * boards/sam0: refactor ADC_0 into plain ADC * boards/slwstk6000b-*: split one board for each module * boards/slwstk6000b: move CPU definition to Makefile.features + boards/stm32f723e-disco: add initial support * boards/stm32: introduce common timer configurations and use them where possible + boards/stm32l0538-disco: add initial support * pic32-wifire: add support for flashing with pic32prog CPU --- + cpu/esp32: lwIP netdev * cpu/esp*: various improvements * cpu/kinetis: enable HWRNG for k64f - cpu/mips32r2_generic: remove cpu. * cpu: Moved stdio_init() prior to periph_init() for ARM targets * cpu/nrf5x: declare radio_nrfble feat for all nrfs + cpu/nrf5x: implement wdt peripheral driver + cpu/sam0_common: add hwrng driver * cpu/sam0_common/gpio: don't hard-code number of ports * cpu/sam0: update doc.txt with new MCU families * cpu/saml21: Make Low-Power SRAM available to programs + cpu/stm32_common: add watchdog for stm32 * stm32-common/spi: allow custom pin modes on spi to minimize power consumption * cpu/stm32f(2|4|7): add riotboot requirements * cpu/stm32l1: optimize power consumption * stm32l1/vendor: update vendor files to v2.3.0 * sam0: allow flashing with JLinkExe + sam0: Implement watchdog driver * cpu/samr30: update vendor files using ASF 3.35.1 + cpu/efm32: provide periph_uart_mode Device Drivers -------------- + drivers: add mtd wrapper for periph_flashpage + drivers/cc110x: Complete rewrite from scratch, and detailed documentation * drivers/include/periph/eeprom: Changed uint8_t* to void* in API * drivers/periph/i2c: Updated i2c_release() to return void + drivers/ph_oem: support for Atlas Scientific pH OEM sensor + drivers: support for NXP PCA9685 I2C 16-channel, 12-bit PWM controller + usbus: Add CDC-ACM (Serial console) function * periph/timer: Fix return codes of timer API + can: add ncv7356 SW transceiver driver + drivers/lis2dh12: add I2C mode + drivers/periph: add doc on power management aspects * drivers/mrf24j40: add pseudomodules for MRF24J40MA/B/C/D/E Build System / Tooling ---------------------- * dist/tools/pyterm: drop loglevel from output * make: docker: delegate bind mounts to the containers * Makefile.base: implement relative path linking without 'realpath' * Makefile.base: use thin static archives. * Makefile.include: add flash-only as dependency of term * Makefile.include: do not build HEXFILE by default anymore * Makefile.include: require make version 4. * makefiles: add support for sysfs gpio debug adapter * Makefiles: add support to generate both `.hex` and `.bin` file and add FLASHFILE variable * makefiles/docker.inc.mk: various improvements * makefiles/murdock.inc.mk: change policy to run tests by default * make: introduce $(CLEAN) + murdock: introduce 'TEST_ON_CI_BLACKLIST' * toolchain/cflags: enable dwarf compression (save 50% HDD) * edbg: verify before flash + ci: add codespell check script for tracking typos + Makefile.include: add cleanterm target and use it for tests * arduino/sketches: build sketches as a module + github: use stale-bot to mark and close PRs without activity Testing ------- + tests: add distinct test app for nrfmin driver + tests: add Nordic SoftDevice test app * tests/gnrc_ndp: enhance coverage * tests/lua_loader: run the test in CI * tests/mcuboot: handle building in docker * tests/pkg_u8g2: run the test in CI * tests: provide test case for malformed IEEE 802.15.4 packets * tests/pthread_rwlock: run the test in CI * tests: re-enable utf-8 tests on native + tests/riotboot: add automatic test + tests/sys_crypto: add RFC3610 and NIST SP 800-38C tests * tests/test_tools: add a test for the testing tools environment * tools/compile_and_test_for_board: allow setting the flash targets * tests/gnrc_tcp: provide regression tests for fixed issues API Changes ======================== ``` /* no error handling possible, so no need to return a value */ - int i2c_release(i2c_t dev) + void i2c_release(i2c_t dev) /* return 0 on success, rather than 1; so like timer_init() */ int timer_set(tim_t dev, int channel, unsigned int timeout) int timer_set_absolute(tim_t dev, int channel, unsigned int value) int timer_clear(tim_t dev, int channel) /* implementations already cast the argument to uint8_t* internally, so not a significant semantic change */ - size_t eeprom_read(uint32_t pos, uint8_t *data, size_t len) + size_t eeprom_read(uint32_t pos, void *data, size_t len) - size_t eeprom_write(uint32_t pos, const uint8_t *data, size_t len) + size_t eeprom_write(uint32_t pos, const void *data, size_t len) /* now returns CIPHER_ERR_INVALID_KEY_SIZE on invalid keySize */ int aes_init(cipher_context_t *context, const uint8_t *key, uint8_t keySize) /* add setter for netif of interface header */ + void gnrc_netif_hdr_set_netif(gnrc_netif_hdr_t *hdr, const gnrc_netif_t *netif) ``` Deprecations ======================== Warnings -------- net/emb6 net/nhdp pkg/oonf_api As the release was finalized, rough consensus was reached on a system event thread handler (#12474) that likely will remove the interrupt handler thread (#10555) just introduced with this release. Removals -------- net/coap: remove deprecated COAP_CT_... defines Known issues ============ Networking related issues ------------------------- packet buffer address assertion or completely without error configured prefix chars address Timer related issues -------------------- time. _xtimer_now() and irq_disable() Drivers related issues ---------------------- MHz clock cycles supported Native related issues --------------------- Other platforms related issues ------------------------------ on host (not previous) boards CS LTO Build system related issues --------------------------- flashfile evaluation image value Other issues ------------ -none- tests/pkg_fatfs: vol_idx print overflow on large negative value 10 static_asserts in the same scope everywhere Fixed Issues from the last release (2019.07) ============================================ echo -n causes Segmentation fault optimization in udp.c log_printfnoformat Makefile.include R21 types Acknowledgements ================ We would like to thank all companies that provided us with hardware for porting and testing RIOT-OS. Further thanks go to companies and institutions that directly sponsored development time. And finally, big thanks to all of you contributing in so many different ways to make RIOT worthwhile! 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 ======= * 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 and packages are published under a separate license. All code files contain licensing information.
1b9ec8e
2019-10-31 20:32
下载
2019.10-RC2
cbee3e7
2019-10-21 18:59
下载
2020.01-devel
Development branch towards 2020.01 release
9946e24
2019-10-11 01:57
下载
2019.10-RC1
9946e24
2019-10-11 01:57
下载
2019.07
RELEASE 2019.07 RIOT-2019.07 - Release Notes ============================ RIOT is a multi-threading operating system which enables soft real-time capabilities and comes with support for a range of devices that are typically found in the Internet of Things: 8-bit and 16-bit microcontrollers as well as light-weight 32-bit processors. RIOT is based on the following design principles: energy-efficiency, soft real-time capabilities, small memory footprint, modularity, and uniform API access, independent of the underlying hardware (with 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: =================== The 2019.07 release includes a number of new features including many new boards and cpu, riotboot added to many new and old boards, USB is now available, BLE improvements, Ethernet on stm32 platforms, as well as many bug fixes and documentation updates. Testing has also improved with both On-Target Testing increasing and now Hardware Assisted Automated Tests being run. About 300 pull requests with about 659 commits have been merged since the last release and about 50 issues have been solved. 26 people contributed with code in 106 days. Approximately 1377 files have been touched with 181993 insertions and 19668 deletions. Notations used below: ===================== + means new feature/item * means modified feature/item - means removed feature/item New features and changes ======================== System libraries ---------------- + Add OCB encryption mode + sys/shell: add loramac shell command * Fletcher16: extend with multi-part functions + USBUS: Initial work towards an USB stack + usbus: Initial simple auto init structure * sys: make uart_stdio RX optional + sys/event: add event_wait_until() + sys/bluetil: add bluetil_addr_from_str() + usbus: Add CDC-ECM (Ethernet Control Model) function * usbus: simplify adding entry to list * sys/stdio_ethos: replace USE_ETHOS_FOR_STDIO by stdio_ethos pseudomodule Networking ---------- * gnrc_ipv6_nib: add address from netif to address validation timer + netdev_ieee802154: add txpower and page + net/lorawan/hdr: add lorawan header helpers + ble/nimble: add support for build-in IPSS service * pkg/semtech-loramac: rework interaction with the MAC * pkg/semtech-loramac: provide basic persistence for MAC state * RPL: API update suggestions + ipv6_ext: add fragmentation extension definitions * net/sock_util: Accept NULL pointers in urlsplit + sys/net: add netopt options for lorawan * gnrc_tftp: Fix out-of-bounds memory access when comparing modes - gnrc_pktbuf: remove gnrc_pktbuf_duplicate_upto - gnrc_ipv6: remove obsolete and harmful reception code * gnrc_tftp: set port on server init + ble/softdevice: add ble_nordic_softdevice feature * net/mqttsn: fix client ID length to comply to the standard + gnrc_tftp: Add minimum packet length check Packages -------- * pkg/monocypher: bump version to 2.0.5 * ble/nimble: bump version to 9d4bda2 * openthread: update to release 20180926 * minmea: bump version to current master + nanocbor: Initial support for the nanocbor package * pkg/lua: Make the module searchers conform to the API Boards ------ + boards/stm32l0538-disco: add initial support + boards/nucleo-l4r5zi: initial basic support + boards/particle-{xenon,argon,boron}: add initial support * boards/kw41z: add common configuration and use it with existing kw41z boards + added SPI support for Nucleo-F767ZI + boards: Add support for the Arduino-Leonardo * boards/nucleof7*: SPI and refactoring + boards/stm32: introduce and use new common rtt configuration header + boards/stm32l0/l4: add rtt feature + boards: add support for i-nucleo-lrwan1 (Arduino-like shield) + boards/nrf52840-mdk: added I2C config + boards/lsn50: add support for Dragino LSN50 LoRa Sensor Node * boards/stm32l0: introduce common clock configuration and apply it to related boards * boards/b-l072z-lrwan1: use STM32 common i2C configuration + Add usbdev feature to Sodaq boards + boards/pba-d-01-kw2x: add riotboot support + sensebox: add usbdev feature + boards/stm32f429i-disc1: add i2c configuration + boards/nucleo-l476rg: add riotboot + boards/same54-xpro: add riotboot support + boards: Add FLASHFILE support + boards/nucleo-l476rg: Add DMA support + nrf52: Add suspend/resume detection to usbdev + nrf5x: Add UART modecfg feature implementation + boards/stm32f3: add support for riotboot feature + boards/lobaro-lorabox: add sx1272 radio driver dependency to netdev_default + boards/stm32l4: add riotboot support + boards/microbit: add QEMU emulation + boards/frdm-kw41z-k64f: add riotboot * boards/sltb001a: reset before flashing CPU --- * cpu/esp8266: added/changed helper functions + cpu/cc2538: Add periph_uart_mode implementation * saml1x: enable pm_layered by default + cpu/cc26x0: implement uart_mode() + cpu/sam0: add support for SAMD5x/SAME5x + sam0_common: add uart modecfg support + cpu/stm32f3: add support for flashpage and flashpage_raw * cpu/stm32l{1,4}: refactor flashpage numof macros * cpu/stm32: optimize stop mode for stm32f* * cpu/nrf5x_common: map hwrng to SoC library if SoftDevice is present Device Drivers -------------- + devfs: add /dev/urandom and /dev/hwrng * drivers/mrf24j40 : support of NETOPT_LAST_ED_LEVEL + drivers/mrf24j40: add external PA/LNA control on MC/MD/ME devices * drivers/at86rf2xx: enable NETOPT_RX_END_IRQ and fix RSSI values * drivers/adt7310: Replace binary literal with hex literal + drivers/ds75lx: add basic driver for temperature sensor + drivers/include: add header definition for wdt + drivers/at: Add 'at_recv_bytes_until_string' function + sx127x: add several NETOPT for GNRC LoRaWAN * drivers/sx127x: fix device reset + drivers: stm32 eth peripheral driver + drivers/periph/gpio_util: add gpio_util_shiftin() Build System / Tooling ---------------------- * makefiles/docker: export BOARDS + makefiles: add bootloaders to the list of applications * Makefile.include: allow overwriting flash-recipe * dist/tools/buildsystem_sanity_check: add an export variable check * sys/Makefile.include: include riotboot headers when FEATURES_REQUIRED=riotboot + make: add print-versions helper target + make: add LOG_LEVEL to overridable variables * riotboot/Makefile.include: increase RIOTBOOT_HDR_LEN for ARMv7*-M * dist/tools/build_system_sanity_check: BUG fix errors being ignored * boards/common: use Makefile.features + make: add termdeps target * periph_common: add as dependency to periph drivers + nrf52: Add USB peripheral driver + makefiles/boards.inc.mk: list boards variables + makefiles/app_dirs.inc.mk: target to list supported applications/boards + Makefile.features: add a common file for the features parsing + Makefile.features: add declarative FEATURES_ variables definition + makefiles/utils/variables: add functions to help managing variables * Migrate all boards to define FLASHFILE * tools/openocd.sh: try to probe the board for real flash address Testing ------- * tests/periph_flashpage: add RWWEE automatic test if hw supports it * tests/pthread_tls: allow negative key values * tests/gnrc_udp: include `gnrc_pktbuf_cmd` per default + tests/periph_hwrng: add automated python test * tests/periph_timer: include kw41z boards in low-power timer boards * tests/pkg_c25519: increase timeout for arduino-mega2560 + tests/xtimer_usleep: fail with negative offsets + unittests: add tsrb tests + tests/stdin: add non regression test for stdin module + tests/xtimer_mutex_lock_timeout: add simple case test + Add NimBLE heart rate sensor example (GATT notifications) * tests/driver_rn2xx3: fix invalid element index for txmode * tests/pkg_semtech-loramac: don't init the mac from main * tests/devfs: move tests-devfs out of unittests + examples/lorawan: fix semtech_loramac_send TX ret code * tests/unittests: split remaining packages tests to different test directory API Changes ======================== - uart_stdio RX is now optional - CPU_MODEL declared in boards/Makefile.features ```c - void isrpipe_init(isrpipe_t *isrpipe, char *buf, size_t bufsize); + void isrpipe_init(isrpipe_t *isrpipe, uint8_t *buf, size_t bufsize); - int isrpipe_write_one(isrpipe_t *isrpipe, char c); + int isrpipe_write_one(isrpipe_t *isrpipe, uint8_t c); - int isrpipe_read(isrpipe_t *isrpipe, char *buf, size_t count); + int isrpipe_read(isrpipe_t *isrpipe, uint8_t *buf, size_t count); - int isrpipe_read_timeout(isrpipe_t *isrpipe, char *buf, size_t count,\ int32_t timeout); + int isrpipe_read_timeout(isrpipe_t *isrpipe, uint8_t *buf, size_t count,\ uint32_t timeout); - int isrpipe_read_all_timeout(isrpipe_t *isrpipe, char *buf, size_t count,\ uint32_t timeout); + int isrpipe_read_all_timeout(isrpipe_t *isrpipe, uint8_t *buf, size_t count,\ uint32_t timeout); typedef struct tsrb { ... - char *buf; /**< Buffer to operate on. */ + uint8_t *buf; /**< Buffer to operate on. */ ... } tsrb_t - int tsrb_get(tsrb_t *rb, char *dst, size_t n); + int tsrb_get(tsrb_t *rb, uint8_t *dst, size_t n); - int tsrb_add_one(tsrb_t *rb, char c); + int tsrb_add_one(tsrb_t *rb, uint8_t c); - int tsrb_add(tsrb_t *rb, const char *src, size_t n); + int tsrb_add(tsrb_t *rb, const uint8_t *src, size_t n); typedef struct { ... - uint16_t (*calc_rank)(gnrc_rpl_parent_t *parent, uint16_t base_rank); - gnrc_rpl_parent_t *(*which_parent)(gnrc_rpl_parent_t *, gnrc_rpl_parent_t *); + uint16_t (*calc_rank)(gnrc_rpl_dodag_t *dodag, uint16_t base_rank); - void (*reset)(gnrc_rpl_dodag_t *); /**< resets the OF */ + void (*reset)(gnrc_rpl_dodag_t *dodag); ... - void (*init)(void); /**< OF specific init function */ + void (*init)(gnrc_rpl_dodag_t *dodag); } gnrc_rpl_of_t; - thread_state_t + thread_status_t - void sched_set_status(thread_t *process, thread_state_t status); + void sched_set_status(thread_t *process, thread_status_t status); struct _thread { ... - thread_state_t status; + thread_status_t status; ... } - bool mrf24j40_cca(mrf24j40_t *dev); + bool mrf24j40_cca(mrf24j40_t *dev, int8_t *rssi); ``` Deprecations ======================== Warnings -------- `gnrc_tftp` module `ubjson` module Removals -------- `gcoap_req_send()` replaced with `gcoap_req_send2()->gcoap_req_send2()` Known issues ============ Networking related issues ------------------------- address assertion or completely without error configured prefix chars address Timer related issues -------------------- time. _xtimer_now() and irq_disable() Drivers related issues ---------------------- clock cycles R21 supported Native related issues --------------------- log_printfnoformat Other platforms related issues ------------------------------ (not previous) boards CS LTO types Build system related issues --------------------------- bionic`. evaluation image Makefile.include value * buildtest with BUILD_IN_DOCKER hides host toolchain errors Other issues ------------ optimization in udp.c 10 static_asserts in the same scope everywhere Fixed Issues from the last release (2019.04) ============================================ and no error Acknowledgements ================ We would like to thank all companies that provided us with hardware for porting and testing RIOT-OS. Further thanks go to companies and institutions that directly sponsored development time. And finally, big thanks to all of you contributing in so many different ways to make RIOT worthwhile! A special thanks to @fjmolinas, @leandrolanzieri, @cladmi, @jia200x, @miri64 for helping run the release tests 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 ======= * 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 and packages are published under a separate license. All code files contain licensing information.
d42c032
2019-07-25 17:32
下载
2019.07-RC3
84a3cec
2019-07-19 21:06
下载
2019.07-RC2
9bb8114
2019-07-18 01:51
下载
2019.10-devel
Development branch towards 2019.10 release
14fe8f2
2019-07-08 15:53
下载
2019.07-RC1
14fe8f2
2019-07-08 15:53
下载
2019.04
RELEASE 2019.04 RIOT-2019.04 - Release Notes ============================ RIOT is a multi-threading operating system which enables soft real-time capabilities and comes with support for a range of devices that are typically found in the Internet of Things: 8-bit and 16-bit microcontrollers as well as light-weight 32-bit processors. RIOT is based on the following design principles: energy-efficiency, soft real-time capabilities, small memory footprint, modularity, and uniform API access, independent of the underlying hardware (with 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: =================== The 2019.04 release includes a number of new features including porting of riotboot to a number of new platforms, 802.15.4 support on the nRF52, and the ability for firmware to flash images into a separate boot slot. Support for several new boards and new sensors was added. Additionally, this release contains a number of bug fixes and test improvements. About 320 pull requests with about 569 commits have been merged since the last release and about 40 issues have been solved. 44 people contributed with code in 88 days. Approximately 825 files have been touched with 32716 insertions and 5149 deletions. Notations used below: ===================== + means new feature/item * means modified feature/item - means removed feature/item New features and changes ======================== System libraries ---------------- + riotboot_flashwrite: added module to reliably write a firmware image to flash + crypto: added support for chacha20poly1305 AEAD symmetric key cypher algorithm * threads: added usage of thread_state_t enum to define thread states, instead of an integer * random: added usage of hwrng as seed if available + app_metadata: added module to print application metadata + unaligned.h: added functions to safely read values from potentially unaligned pointers + isrpipe: split isrpipe_read_timeout to isolate xtimer dependency Networking ---------- * gnrc_ipv6: adapted ping6 to original-ping-like implementation * gnrc_ipv6: allowed sending empty IPv6 packets + gnrc_netif_ieee802154: optional support to drop duplicate broadcast packets - gnrc_pktbuf: removed deprecated gnrc_pktbuf_get_iovec() function + l2util: initial import of a general IPv6 over X helper module + NimBLE: added Bluetooth device scanner + NimBLE: added helper functions for address printing * NimBLE: updated package to the latest version Packages -------- + c25519: add support (embedded x25519 crypto library) Boards ------ + Arduino nano: added support + nrf52832-mdk: added support + PhyTec reel board: added support + MicroPython pyboard v1.1: added support + Hamilton: added support + saml10-xpro and saml11-xpro: added riotboot support + nrf52: added riotboot support + ESP32 and stm32: added command to allow runtime configuration of uart mode + ESP32 and ESP8266: add support for ESP-NOW network device driver * ESP8266: freed up RAM by moving most .rodata sections from DRAM to IROM + Arduino: added test to verify pin mappings + b-l072z-lrwan1: enabled RTT feature + STM32l0: added support for dual bank flashing with OpenOCD * Autonomo: changed flasher to BOSSA * stm32: rework common clock configuration for stm32f4 * stm32f3discovery: Fix no external low speed crystal CPU --- + stm32l0: added riotboot support + stm32f0: added support for periph_pm + stm32f3, f7, l1 and l4: added stop and standby low power modes. All STM32 families now provide periph_pm + samd21: enabled idle modes + sam0: added support for RWWEE on-chip memory + Kinetis: added support for EA series and S9KEAZ129 MCU + TI CC2650: added I2C periph implementation Device Drivers -------------- + i2c: added slave scan shell command + USB: added device driver initialization function and API definition + USB: added peripheral driver for sam0_common + nrf5x temperature sensor: added driver + nrf52: added initial 802.15.4 support + add7746 capacitance sensor: added driver + ds323x extremely accurate RTC: added driver + ltc4150 coulomb counter: added driver + sht2x temperature and humidity sensor: added driver + sds011 dust sensor: added driver + added high level driver for H bridge ICs to drive DC motors * lpsxxx pressure and temperature sensor: add support for lps22hb and lps25hb Build System / Tooling ---------------------- + nrf52: added support for openocd * improved avrdude integration + added support for socat as a RIOT terminal + added script for backporting PRs during release testing * pyterm: specified use of python3 by default * flasher: support for flashing images at offset addresses `pyocd`, `jlink` * Texas Instruments UniFlash: put configuration in common * makefiles: introduce FLASHFILE * Use FLASHFILE for `riotboot` and `mcuboot` * Update flashers `avrdude`, `edbg`, `jlink`, lpc2k_pgm`, `openocd` * makefiles/docker.inc.mk: Use directories in RIOT when possible * make: unexport `TERM*` variables * msba2: compile 'lpc2k_pgm' when flashing Testing ------- + documentation: added initial guide to running tests + Makefile.include: add a 'test/available' target * testrunner: Fix bug matching local echo * tests/rng: replace printf_float with fmt/print_float * tests/bloom_bytes: replace %f with fmt/print_float * tests/posix_semaphore: sem_timedwait should not return before abstime Known issues ============ Networking related issues ------------------------- address assertion or completely without error configured prefix address Timer related issues -------------------- _xtimer_now() and irq_disable() Drivers related issues ---------------------- supported Native related issues --------------------- Other platform related issues ----------------------------- clock cycles and no error (not previous) boards types Build system related issues --------------------------- evaluation image Makefile.include value Other issues ------------ static_asserts in the same scope everywhere Fixed Issues from the last release (2019.01) ============================================ You can get the complete detail in the git history and in the release milestone [Release 2019.04](https://github.com/RIOT-OS/RIOT/milestone/26?closed=1). Acknowledgements ================ We would like to thank all companies (vendors) that provided us with (their) hardware for porting and testing RIOT-OS. Further thanks go to companies and institutions that directly sponsored development time. And finally, big thanks to all of you contributing in so many different ways to make RIOT worthwhile! 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 ======= * 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 and packages are published under a separate license. All code files contain licensing information.
7a28e1c
2019-04-29 19:28
下载
2019.04-RC2
b09af97
2019-04-24 18:55
下载
2019.07-devel
Development branch towards 2019.07 release
14148c5
2019-04-05 14:40
下载
2019.04-RC1
14148c5
2019-04-05 14:40
下载
2019.01
RELEASE 2019.01 RIOT-2019.01 - Release Notes ============================ RIOT is a multi-threading operating system which enables soft real-time capabilities and comes with support for a range of devices that are typically found in the Internet of Things: 8-bit and 16-bit microcontrollers as well as light-weight 32-bit processors. RIOT is based on the following design principles: energy-efficiency, soft real-time capabilities, small memory footprint, modularity, and uniform API access, independent of the underlying hardware (with 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: =================== The 2019.01 release includes a number of new features including DMA support on all STM32 boards, WiFi with IP connectivity on ESP32 and ESP8266, and riotboot, a simple bootloader supporting multiple firmware slots, compatible with most Arm Cortex-M boards supported by RIOT. Support for several new boards and new sensors was added, as well as for the new CPU architecture Armv8-M (Cortex-M23). Last but not least, this release contains a number of bug fixes and enhances test automation. About 387 pull requests with about 912 commits have been merged since the last release and about 36 issues have been solved. 54 people contributed with code in 110 days. Approximately 1554 files have been touched with 176241 insertions and 50593 deletions. Notations used below: ===================== + means new feature/item * means modified feature/item - means removed feature/item New features and changes ======================== System libraries ---------------- + riotboot: initial implementation of a bootloader with multi-slots and firmware header management + base64: add size estimation functions Networking ---------- * gnrc_ipv6: send IPv6 error messages on error * gnrc_ipv6: refactor and improve IPv6 message reception * gnrc_netif: refactor for easier device type integration + pkg_semtech-loramac: added timer calibation * nanocoap: fix confirmable retry countdown Packages -------- * gecko_sdk: bumped to version 2.5 Boards ------ + added support for Kinetic USB-KW41Z + added support for Makerdiary nrf52840-mdk + added support for Microchip saml10-xpro and saml11-xpro + added support for Nordic nrf51-dk + added support for Phytec phynode-kw41z + added support for SODAQ SARA AFF * b-l475e-iot01a: provide RTC and RTT features * stm32: factorize common I2C configurations * nucleo-l433rc/nucleo-f072rb/nucleo-f767zi: provide I2C configuration * nucleo-l433rc: use LPUART (USB port) as stdio * nucleo-l496zg: use LPUART (USB port) as stdio * frdm-k64f: updated LPTMR configuration * sensebox_samd21: add MTD configuration * nrf51: factorize files and configurations of nrf51 based boards * nrf52: better factorize files and configurations of nrf52 based boards CPU --- + cortexm-common: add FPU support for cortex-m4f and cortex-m7 + cortexm-common: added support for cortex-m23 + added support for saml10 and saml11 + efm32: added support for 32-bit timers + esp32: added esp_wifi netdev driver + esp8266: added esp_wifi netdev driver + stm32-common: add DMA support for all STM32 + stm32-common: add LPUART driver + atmega-common: Add PUF SRAM feature * nrf5x: added management of multiple exti pins in gpio driver * nrf5x: rework UART driver to allow using multiple UARTs on nrf52840 Device Drivers -------------- + added support for CCS811 gas sensor + added support for SHT3x temperature and humidity sensor + added support for TPS6274x step-down dcdc converter * periph_eeprom: added clear and erase functions Build System / Tooling ---------------------- + added support for PyOCD programmer + added compile_and_test_for_board script + checks * updated EDBG version * testbed-support: added frdm-kw41z, pba-d-01-kw2x, samr30-xpro to supported archis * pyterm: correctly catch exception when serial port is busy * print_toolchain_version: added 'make' version Testing ------- + periph_dma: added automatic test script + periph_rtc: added automatic test script Known issues ============ Networking related issues ------------------------- address assertion or completely without error configured prefix address Timer related issues -------------------- _xtimer_now() and irq_disable() Drivers related issues ---------------------- supported Native related issues --------------------- Other platforms related issues ------------------------------ (not previous) boards types Build system related issues --------------------------- evaluation image Makefile.include value Other issues ------------ static_asserts in the same scope everywhere Fixed Issues from the last release (2018.10) ============================================ re-set fragmentation? load 2 instances You can get the complete detail in the git history and in the release milestone [Release 2019.01](https://github.com/RIOT-OS/RIOT/milestone/25?closed=1). Acknowledgements ================ We would like to thank all companies (vendors) that provided us with (their) hardware for porting and testing RIOT-OS. Further thanks go to companies and institutions that directly sponsored development time. And finally, big thanks to all of you contributing in so many different ways to make RIOT worthwhile! 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 ======= * 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 and packages are published under a separate license. All code files contain licensing information. RIOT-2018.10.1 - Release Notes ============================== This is a bug fixing release for the RIOT 2018.10 release. The following bugs were fixed: - sock_dns: remove out-of-place puts() call - sock_dns: remove some magic numbers - sock_dns: fix out-of-bound errors - pkg/jerryscript: disable -Wconversion for llvm - pkg/nimble: disable -Waddress-of-packed-member for llvm - pkg/tinycrypt: update commit hash after upstream rewrote history - at86rf2xx: correct framebuffer release
9876e93
2019-02-15 18:54
下载
2019.01-RC3
79fa800
2019-02-13 17:22
下载
2018.10.1
Release-2018.10
914b5a2
2019-02-04 21:42
下载
2019.01-RC2
1a4d083
2019-02-02 00:07
下载
2019.04-devel
Development branch towards 2019.04 release
b8565e4
2019-01-26 00:55
下载
2019.01-RC1
b8565e4
2019-01-26 00:55
下载
2018.10
RIOT-2018.10 - Release Notes ============================ RIOT is a multi-threading operating system which enables soft real-time capabilities and comes with support for a range of devices that are typically found in the Internet of Things: 8-bit and 16-bit microcontrollers as well as light-weight 32-bit processors. RIOT is based on the following design principles: energy-efficiency, soft real-time capabilities, small memory footprint, modularity, and uniform API access, independent of the underlying hardware (with 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: =================== The 2018.10 release includes new features, like CoAP Resource Directory and Block2, ESP32 support, rework of I2C interface, EEPROM registry, Full and Minimal Thread Devices support in OpenThread and compliance of LoRaWAN 1.0.2 (ABP counters stored in EEPROM). Several boards were introduced. During the last release the board documentation was migrated from the wiki to the [RIOT API documentation](https://doc.riot-os.org) to improve the maintenance of these entries and provide a better user experience when browsing the documentation. There were also some efforts in grouping some modules to make them easier to access in the documentation. There were also some efforts on refactoring, test improvements and bug fixes. About 392 pull requests with about 914 commits have been merged since the last release and about 20 issues have been solved. 57 people contributed with code in 100 days. Approximately 2184 files have been touched with 211964 insertions and 34806 deletions. Notations used below: ===================== + means new feature/item * means modified feature/item - means removed feature/item New features and changes ======================== Community --------- + Initial RIOT developer memo + directory structure + GitHub feature request template + 'testing' in Github PR template * Rework and documented labeling system * Rework MAINTAINING.md document * Rework CONTRIBUTING.md document Documentation ------------- + Add boards `slstk3401a`, `slstk3402a` and `sltb001a` + Migrate boards documentation to Doxygen + New groups under `sys` (serialization, math, memory management, hashes) + `arduino` docs for analog map + nanocoap + tinycbor pkg * Drivers with `saul` support are now also part of the `drivers_saul` group Core ---- + Architecture dependent thread information * Fix `byteorder` bebuftohs() / htobebufs() on big endian * Make `pthread` compilable with g++ System libraries ---------------- + Add EEPROM registration support + Add `arduino` time functions micros() and delayMicroseconds() + Add `fmt` hex byte + ecc: add golay(24,12) half rate and repetition code + tsrb: add drop function * Change `base64` api (const + void*) * Configure Arduino serial port at compile time * Move `hamming256` module to generic `ecc` * sys/auto_init: Fixed initialization of `sht1x` * crypto/ccm: fix auth_data_len check - Remove `cbor` module Networking ---------- + cord_ep: Full CoRE Resource Directory endpoint support + nanocoap: add server-side Block2 support * emb6_sock_udp: copy receive remote correctly * ethos: Add drop frame case to recv function * examples/gcoap: fix post/put without port number * gnrc/6lo: set more data flag on all but last fragment * gnrc_ipv6_nib: always configure 802.15.4 long address with IPv6 included * gnrc_ipv6_nib: fallback to SLAAC if ARO is ignored by upstream * gnrc_ipv6_nib: make automatic NDP packet emission (NS/RS) configurable * gnrc_netif: fix l2addr_len > 0, but no l2addr edge-case * gnrc_netif: reapply event flags on device reset * gnrc_netif_ieee802154: set FCF Frame Pending when more data is expected * gnrc_sixlowpan_frag: add page context to reassembly buffer * gnrc_sixlowpan: refactored for better interchangability of sub-components * gnrc_sock_[udp|ip]: read return value for _recv after release * nanocoap: allow empty uri/location path option Packages -------- + libb2: add support (BLAKE2) + libhydrogen: add support + lora_serialization: LoRa Serialization format support + openthread: FTD and MTD support + semtech-loramac: add support for RU864 ISM band * ccn-lite: update and adapt shell commands * jerryscript: bump version * littlefs: bump version to v1.6.20 * lwip: bump to version 2.1.0 * semtech-loramac: bump to version 4.4.1 * semtech-loramac: fix uninitialized datarate * semtech-loramac: lorawan support is not considered experimental anymore * semtech-loramac: use periph_eeprom to store lorawan configuration * tiny-asn1: bump version * tinycbor: Version bump to 0.5.2 Boards ------ + i2c configuration for `nucleo-f070`, `nucleo-f091rc`, `nucleo-f722ze`, `nucleo-l476rg`, `slstk3402a`. + second i2c configuration for `b-l475e-iot01a` + esp32-mh-et-live-minikit: add support + esp32-olimex-evb: add support + esp32-wemos-lolin-d32-pro: add support + esp32-wroom-32: add support + esp32-wrover-kit: add support + esp8266-esp-12x: add support + esp8266-olimex-mod: add support + esp8266-sparkfun-mod: add support + firefly: add support for Zolertia FireFly + lobaro_lorabox: add support + openmoteb-cc2538: add support + samr30-xpro: add support + sensebox: add support for `sensebox` and `sensebox_samd21` + sodaq_one: add support + ublox-c030-u201: add support * frdm-k64f: update ADC and `saul` configuration * nrf52xxxdk: make reset pin work * stm32mindev: rename to `blackpill` CPU --- + efm32: add support for enabling/disabling DC-DC converter + esp32: add initial support + esp8266: add initial support + i2c: introduce and adapt new I2C interface + kinetis: add ADC hardware averaging configuration + nrf52: add PWM support + samr30: add initial support + stm32l4: add support for periph_flashpage * Add PUF SRAM feature in `nrf5x` and `stm32` families * atmega_common: allow defining ROM and RAM length for link * cortexm_common/ldscript: simplify generation of firmwares in section of the ROM * nrf5x_common: fix `gpio` port 1 functionality * stm32-common: unified support for periph_i2c. I2C is now supported by all stm32 families (F0/1/2/3/4/7, L0/1/4) * stm32_common: fix source selection declared as module dependencies Device Drivers -------------- + drivers/ds18: add limited support for Maxim Integrated 1-Wire temperature sensor + drivers/mma7660: initial support + drivers/srf04: add range finder sensor + drivers/sx127x: add initial support for multi interrupt pins + drivers/tsl4531x: add support for visible light intensity sensor + drivers/vcnl40x10: add initial support * drivers/*: unify driver initialization parameters scheme * drivers/adxl345: fix driver * drivers/at86rf2xx: add smart idle listening feature * drivers/kw2xrf: Fix ack flag handling * drivers/mtd_spi_nor: add 4-byte address flash support * drivers/periph_i2c: rework API * drivers/sx127x: return correct state when device is receiving Build System / Tooling ---------------------- + Makefile.include: Include VERSION file for release + dist/tools: add lazysponge tool + docker: Use system GIT_CACHE_DIR if available + docker: allow using sudo for docker + make: introduce periph_gpio_irq + make: process include and dep for external modules + makefile.iotlab.single.inc.mk: add new supported nodes * cflags: use gnu99 only if nothing else is specified (mips, msp430, native) * docker/Makefile.include: Fix BUILDRELPATH when RIOTPROJECT is CURDIR * docker: export RIOT_CI_BUILD_to docker * docker: handle building in git worktree * edbg.inc.mk: allow flashing with an offset in rom without erasing all ROM * make: add APPDIR to info-build target * make: provide support for listing supported and blacklisting toolchains * make: unify app folder search (examples/*, tests/*, ...) * makefiles/buildtests.inc.mk: fix 'clean-intermediates' not cleaning * makefiles/docker.inc.mk: handle building in git worktree * openocd.sh: allow flashing binary files without configuration * pkg.mk: do not use user identity when applying patches * pyterm: handle ctrl+d shortcut nicely Testing ------- + automatic compile tests for LLVM for selected boards + shellcheck: add CI check script + tests/bench_runtime_coreapis: add benchmark for selected core functions + tests/bench_sizeof_coretypes: initial include + tests/periph_uart: add automated testing script + tests/periph_eeprom: add automated testing script + tests/periph_flashpage: add automated testing script * murdock: also compile with LLVM/clang * murdock: add hook support + tests/arduino: add automatic test for arduino module + tests/libc_newlib: add test for newlib-nano inclusion + tests/periph_uart: add automated testing script + tests/gnrc_netif: add test for ULA source selection + tests/periph_gpio: add interrupt enable disable command + sock_util: Add unittest and fix detected issues Known Issues ============ Networking related issues ------------------------- address configured prefix assertion or completely without error Timer related issues -------------------- _xtimer_now() and irq_disable() Native related issues --------------------- Other platforms related issues ------------------------------ supported LTO CS Other issues ------------ Fixed Issues from the last release (2018.07) ============================================ You can get the complete detail in the git history and in the release milestone [Release 2018.10](https://github.com/RIOT-OS/RIOT/milestone/24?closed=1). Acknowledgements ================ We would like to thank all companies (vendors) that provided us with (their) hardware for porting and testing RIOT-OS. Further thanks go to companies and institutions that directly sponsored development time. And finally, big thanks to all of you contributing in so many different ways to make RIOT worthwhile! 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 ======= * 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 and packages are published under a separate license. All code files contain licensing information.
6ab5f15
2018-11-13 21:07
下载
下载
请输入验证码,防止盗链导致资源被占用
取消
下载