You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 9 Next »

Work In Progress

Work In Progress

NuttX 10.3 has not been released yet. These Release Notes are a work-in-progress in preparation for the next release of NuttX.  There is a board tracking the PRs that need to be looked at to add to this doc for the OS TODO ADD LINK and for the Apps TODO ADD LINK

What's New In This Release

Major Changes to Core OS

New Features

Bug Fixes

Major Changes to the Build System

New Features

Bug Fixes

Architectural Support

New Architecture Support

Driver Support

Bug Fixes

New Driver Support

Drivers With Significant Improvements

Board Support

Boards With Significant Improvements

  * [#5553](https://github.com/apache/incubator-nuttx/pull/5553) boards: Add -fno-common to ARCHCFLAGS and ARCHCXXFLAGS 
  * [#5330](https://github.com/apache/incubator-nuttx/pull/5330) boards: Board.mk: Make romfs_img 4 byte aligned 
  * [#5712](https://github.com/apache/incubator-nuttx/pull/5712) boards: Kconfig: introduce ARCH_BOARD_COMMON option 
  * [#4744](https://github.com/apache/incubator-nuttx/pull/4744) boards: Rename FOC_VEL_ADC to FOC_SETPOINT_ADC
  * [#5557](https://github.com/apache/incubator-nuttx/pull/5557) boards: Replace CONFIG_CYGWIN_WINTOOL with CONVERT_PATH 
  * [#5555](https://github.com/apache/incubator-nuttx/pull/5555) boards: Remove the unnecessary customize Make.defs 
  * [#5476](https://github.com/apache/incubator-nuttx/pull/5476) boards: Remove -fno-builtin 
  * [#5244](https://github.com/apache/incubator-nuttx/pull/5244) boards: Remove -fno-strength-reduce 
  * [#5349](https://github.com/apache/incubator-nuttx/pull/5349) boards: Remove unused NXFLAT flags from Make.defs 

  * [#5440](https://github.com/apache/incubator-nuttx/pull/5440) boards: arm: cxd56xx: audio: Support I2S input 
  * [#4996](https://github.com/apache/incubator-nuttx/pull/4996) boards: arm: cxd56xx: spresense: Adjust CONFIG_FAT_MAXFNAME and CONFIG_NAME_MAX 
  * [#4969](https://github.com/apache/incubator-nuttx/pull/4969) boards: arm: cxd56xx: spresense: Update smp/defconfig 

  * [#5652](https://github.com/apache/incubator-nuttx/pull/5652) boards: arm: imx6: sabre-6quad: Add knsh 
  * [#5485](https://github.com/apache/incubator-nuttx/pull/5485) boards: arm: imx6: sabre-6quad: Add -fno-common to Make.defs
  * [#5724](https://github.com/apache/incubator-nuttx/pull/5724) boards: arm: imx6: sabre-6quad: Add CONFIG_DEBUG_FULLOPT=y to knsh/defconfig 

  * [#5670](https://github.com/apache/incubator-nuttx/pull/5670) boards: arm: imxrt: fix userled config in appinit 
  * [#5682](https://github.com/apache/incubator-nuttx/pull/5682) boards: arm: imxrt: userleds: Teensy 4.x board LED is active high 

  * [#4947](https://github.com/apache/incubator-nuttx/pull/4947) boards: arm: lc823450: lc823450-xgevk: Update bt/defconfig for SMP 
 
  * [#5023](https://github.com/apache/incubator-nuttx/pull/5023) boards: arm: nrf52: nrf52832-dk/nrf52840-dk: add procfs and sdc support 

  * [#5669](https://github.com/apache/incubator-nuttx/pull/5669) boards: arm: phy62xx: phy6222: remove -nostartfiles -nodefaultlibs 

  * [#5406](https://github.com/apache/incubator-nuttx/pull/5406) boards: arm: samv7: disable systick no matter if ARMV7M_SYSTICK is enabled or not
  * [#5710](https://github.com/apache/incubator-nuttx/pull/5710) boards: arm: samv7: rework linker script usage logic to allow custom linker scripts 
  * [#5281](https://github.com/apache/incubator-nuttx/pull/5281) boards: arm: samv7: move HSMCI interface to common 
  * [#4981](https://github.com/apache/incubator-nuttx/pull/4981) boards: arm: samv7: Introduce common folder and refactor MCUboot 
  * [#5320](https://github.com/apache/incubator-nuttx/pull/5320) boards: arm: samv7: common: add HSMCI0 boot mount configuration option 
  * [#5127](https://github.com/apache/incubator-nuttx/pull/5127) boards: arm: samv7: common: Improve SAMv7 common folder approach
  * [#5318](https://github.com/apache/incubator-nuttx/pull/5318) boards: arm: samv7: same70-qmtech: enable slow crystal 
  * [#5410](https://github.com/apache/incubator-nuttx/pull/5410) boards: arm: samv7: same70-qmtech: add buttons interface 
  * [#4911](https://github.com/apache/incubator-nuttx/pull/4911) boards: arm: samv7: samv71-xult: Set console at usart1 
  * [#5676](https://github.com/apache/incubator-nuttx/pull/5676) boards: arm: samv7: default BOARD_SAMV7_COMMON to n 
  * [#5119](https://github.com/apache/incubator-nuttx/pull/5119) boards: arm: samv7: improve progmem common interface 
  * [#5276](https://github.com/apache/incubator-nuttx/pull/5276) boards: arm: samv7: fix build error when automount is enabled 
  * [#5277](https://github.com/apache/incubator-nuttx/pull/5277) boards: arm: same70-qmtech: switch console to UART0 
  * [#5312](https://github.com/apache/incubator-nuttx/pull/5312) boards: arm: same70-qmtech: clarify usage of CD signal on SD card connector 
  * [#4912](https://github.com/apache/incubator-nuttx/pull/4912) boards: arm: same70-xplained: disable systick before loading MCUboot application 
  * [#4907](https://github.com/apache/incubator-nuttx/pull/4907) boards: arm: same70-xplained: scripts: fix memory region size for MCUboot app 
  * [#4906](https://github.com/apache/incubator-nuttx/pull/4906) boards: arm: same70-xplained: fix usage of SAMV71XULT instead of SAME70XPLAINED 
  * [#4915](https://github.com/apache/incubator-nuttx/pull/4915) boards: arm: same70-xplained: MCUboot related improvements 

  * [#5011](https://github.com/apache/incubator-nuttx/pull/5011) boards: arm: stm32: emw3162: enabled internal pull-up resistors on SDIO bus 
  * [#4750](https://github.com/apache/incubator-nuttx/pull/4750) boards: arm: stm32: Normalize FOC related project 
  * [#5612](https://github.com/apache/incubator-nuttx/pull/5612) boards: arm: stm32: Update adb configs 
  * [#5675](https://github.com/apache/incubator-nuttx/pull/5675) boards: arm: stm32: stm32f4discovery: Remove CONFIG_LIBC_EXECFUNCS from adb defconfig 
  * [#4775](https://github.com/apache/incubator-nuttx/pull/4775) boards: arm: stm32: b-g431b-esc1: add Hall and Qenco support 
  * [#5420](https://github.com/apache/incubator-nuttx/pull/5420) boards: arm: stm32: b-g431b-esc1/nucleo-g431rb: add SocketCAN examples 
  * [#5237](https://github.com/apache/incubator-nuttx/pull/5237) boards: arm: stm32: b-g431b-esc1/nucleo-g431rb: add CAN example for 
  * [#5238](https://github.com/apache/incubator-nuttx/pull/5238) boards: arm: stm32: nucleo-f302r8: nucleo-f446re: add SocketCAN example 
  * [#4785](https://github.com/apache/incubator-nuttx/pull/4785) boards: arm: stm32: nucleo-f302r8: disable NSH commands for FOC configs to save FLASH 
  * [#4938](https://github.com/apache/incubator-nuttx/pull/4938) boards: arm: stm32: nucleo-f302r8: add 3ph Hall sensor support 
  * [#5166](https://github.com/apache/incubator-nuttx/pull/5166) boards: arm: stm32: nucleo-f446re: add procfs support 
  * [#5614](https://github.com/apache/incubator-nuttx/pull/5614) boards: arm: stm32: nucleo-l152re: Added registering logic SPI on /dev.
  * [#5130](https://github.com/apache/incubator-nuttx/pull/5130) boards: arm: stm32: photon: added configuration to measure wlan performance 

  * [#5697](https://github.com/apache/incubator-nuttx/pull/5697) boards: arm: stm32[f7|l4]: fix SPI chip select GPIO access 
  * [#4827](https://github.com/apache/incubator-nuttx/pull/4827) boards: arm: stm32h7: nucleo-h743zi: add board_reset function 

  * [#5664](https://github.com/apache/incubator-nuttx/pull/5664) boards: arm: tiva: ekk-lm3s9b96: Remove unused mmcsd option 
  * [#5597](https://github.com/apache/incubator-nuttx/pull/5597) boards: arm: tiva: lm3s6965-ek: Fix qemu-kostest 

  * [#5134](https://github.com/apache/incubator-nuttx/pull/5134) boards: risc-v: hifive1-revb: Enable some nsh commands in nsh/defconfig 
  * [#4675](https://github.com/apache/incubator-nuttx/pull/4675) boards: risc-v: k210: Add initial gpio user space support 
  * [#4665](https://github.com/apache/incubator-nuttx/pull/4665) boards: risc-v: k210: Fix -march and -mabi 
  * [#5067](https://github.com/apache/incubator-nuttx/pull/5067) boards: risc-v: mpfs: update m100pfsevp board info 
  * [#5111](https://github.com/apache/incubator-nuttx/pull/5111) boards: risc-v: m100pfsevp: Decrease DDR lane temination values to 40 ohm and … 
  * [#5515](https://github.com/apache/incubator-nuttx/pull/5515) boards: risc-v: rv-virt: Supports FPU test and ostest in both rv32/rv64 

  * [#5544](https://github.com/apache/incubator-nuttx/pull/5544) boards: sim: Add missing options to sim:vncserver 
  * [#5559](https://github.com/apache/incubator-nuttx/pull/5559) boards: sim: Rename ARCHCPUFLAGS[XX] to ARCHC[XX]FLAGS 
  * [#5739](https://github.com/apache/incubator-nuttx/pull/5739) boards: sim: add support of custom optimization level 
  * [#5186](https://github.com/apache/incubator-nuttx/pull/5186) boards: sim: Turn on more rpmsg drivers in rpserver config 
  * [#5101](https://github.com/apache/incubator-nuttx/pull/5101) boards: sim: Remove sim_tsc_setup 
  * [#5561](https://github.com/apache/incubator-nuttx/pull/5561) boards: sim: defconfig for hello_rust 
  * [#5535](https://github.com/apache/incubator-nuttx/pull/5535) boards: sim: Enable Rust suppport for hello_rust application. 
  * [#5640](https://github.com/apache/incubator-nuttx/pull/5640) boards: sim: Remove CCLINKFLAGS, use CFLAGS/CXXFLAGS instead 
  * [#5501](https://github.com/apache/incubator-nuttx/pull/5501) boards: sim: Add adb config for test 
  * [#5121](https://github.com/apache/incubator-nuttx/pull/5121) boards: sim: recovered eth0 interface in sim:tcpblaster configuration 
  * [#5383](https://github.com/apache/incubator-nuttx/pull/5383) boards: sim: Make.defs: CELFFLAGS += -mcmodel=large 

  * [#5644](https://github.com/apache/incubator-nuttx/pull/5644) boards: sparc: Remove HOSTCC related flags from Make.defs 

  * [#5074](https://github.com/apache/incubator-nuttx/pull/5074) boards: xtensa: esp32: Add board support to SHT3X sensor 
  * [#5051](https://github.com/apache/incubator-nuttx/pull/5051) boards: xtensa: esp32: Enable canaries stack protection to ESP32 chips 
  * [#5617](https://github.com/apache/incubator-nuttx/pull/5617) boards: xtensa: esp32-devkitc: Fix boot failure on tickless defconfig 
  * [#5654](https://github.com/apache/incubator-nuttx/pull/5654) boards: xtensa: esp32-devkitc: Increase INIT_STACKSIZE to 3072 in smp/defconfig 
  * [#5075](https://github.com/apache/incubator-nuttx/pull/5075) boards: xtensa: esp32-devkitc: Change CONFIG_USER_ENTRYPOINT to CONFIG_INIT_ENTRYPOINT 

New Board Support

  * [#4916](https://github.com/apache/incubator-nuttx/pull/4916) boards: arm: samv7: add support for SAME70 QMTECH board 
  * [#5195](https://github.com/apache/incubator-nuttx/pull/5195) boards: arm: rp2040: add support for Pimoroni Tiny 2040 board



File System

Bug Fixes

Significant Improvements

Networking

Applications

Improvements

Bug Fixes

Security Issues Fixed In This Release

Compatibility Concerns

Renamed Kconfigs

PR-5065 has renamed the following Kconfigs:

CONFIG_USER_ENTRYPOINT -> CONFIG_INIT_ENTRYPOINT
CONFIG_USERMAIN_STACKSIZE -> CONFIG_INIT_STACKSIZE

These are the non-"CONFIG_"-prefixed names:

USER_ENTRYPOINT -> INIT_ENTRYPOINT
USERMAIN_STACKSIZE -> INIT_STACKSIZE

All in-tree boards have been updated.

NuttX users developing their own out-of-tree boards need to update all references to the above names as well.

See PR-5065, git commits 4bc7b8c802cd42bd2c3d98f4fd11207d2dd50de4, 632716dc7ad04f7cad48c5787f5c0b500cbee296, and 036d98a06ba873318061380b876b838f7ffa64fb.

Changes to Build System

PR-5496 has refactored the separate Unix and Windows handling of the build variable ARCHSCRIPT so that each board's Make.defs will not need logic like this:

ifeq ($(CONFIG_CYGWIN_WINTOOL),y)
  ARCHSCRIPT = -T "${shell cygpath -w $(BOARD_DIR)$(DELIM)scripts$(DELIM)tfm-ns.ld}"
else
  ARCHSCRIPT = -T$(BOARD_DIR)$(DELIM)scripts$(DELIM)tfm-ns.ld
endif

And can instead append the variable just one, like this:

ARCHSCRIPT += $(BOARD_DIR)$(DELIM)scripts$(DELIM)tfm-ns.ld

Note the assignment is changed to append (from "=" to "+=") and removal of "-T".

All boards in the NuttX tree have been updated.

NuttX users developing their own custom boards will need to update their board's scripts/Make.defs file as shown above.

See PR-5496, git commit 855534deef50e1e9c957eb32a7b15497d1bfd34a.


PR-5712 has refactored board common logic. BOARD_SAMV7_COMMON and BOARD_STM32_COMMON options are removed and a new ARCH_BOARD_COMMON is introduced.

All in-tree boards have been updated.

NuttX users developing their own out-of-tree boards need to replace "CONFIG_BOARD_SAMV7_COMMON=y" and "CONFIG_BOARD_STM32_COMMON=y" to "CONFIG_ARCH_BOARD_COMMON=y" in defconfig files. Also for some out-of-tree boards the compilation may fail with next error messages:

make[2]: *** No rule to make target 'libboard.a'.  Stop.
Makefile:139: recipe for target 'board/libboard.a' failed
make[1]: *** [board/libboard.a] Error 2
tools/Unix.mk:509: recipe for target 'nuttx' failed

In this case the out-of-tree board actually relies on in-tree boards common folder structure. To overcome the build error there are two possible options:

  1. Add "CONFIG_ARCH_BOARD_COMMON=y" to defconfig file (this will restore parity with previous NuttX release)
  2. Rename "src/Make.defs" → "src/Makefile" in out-of-tree board directory and append "include $(TOPDIR)/boards/Board.mk" to "src/Makefile".

Refactored Arch Headers

PR-5720 has refactored architectural headers affecting all ARM platforms: arm_arch.h has been removed and its contents merged into arm_internal.h. Previously, most low-level modules in arch/arm/* and boards/arm/* needed to include both headers. Following the refactor, only arm_internal.h is needed.

All boards in the NuttX tree have been updated.

NuttX users developing their own custom boards will need to remove any #include "arm_arch.h" and (if necessary), #include "arm_internal.h" instead.

See PR-5720, git commit 54e630e14d7e32d6f81ae79d4e5df3d2fa787ef0.

Known Problems In This Release

More Information

How to Download

Release artifacts for all current and past NuttX releases can be downloaded at:

How to Clone the Git Repository

The Apache NuttX project uses Git SCM as its version control system.

There are two primary repositories:

  • nuttx - The real time operating system itself.
  • apps - Optional applications and example programs for the operating system. You can use this repository or make your own custom one.

The main "Single Source of Truth" repositories are hosted by the ASF:

These are synchronized with repositories hosted at GitHub:

How to Contact the Community

The main forum for project communication, to ask a question, get involved, or contribute to NuttX, is our mailing list, dev@nuttx.apache.org. The list is publicly archived and searchable at https://lists.apache.org/list.html?dev@nuttx.apache.orgFor more information, see NuttX Community.

Enthusiastic Contributors Welcome!

NuttX is a free open-source project. If you'd like to participate, whether it's to enhance documentation (even these release notes) or dive into the nitty gritty of some low-level drivers, please join us! You can join the conversation at our dev mailing list by emailing dev-subscribe@nuttx.apache.org. The mailing list is open to the public and archived. You can browse older messages at https://lists.apache.org/list.html?dev@nuttx.apache.org.

  • No labels