What's New In This Release

Major Changes to Core OS

Sched

* [#16148](https://github.com/apache/nuttx/pull/16148) Sched small sem cleanups
* [#16394](https://github.com/apache/nuttx/pull/16394) sched: Add max delay tick limitation for wdog/wqueue.
* [#16389](https://github.com/apache/nuttx/pull/16389) sched: Remove checking of WDOG_ISACTIVE when cancelling wdog
* [#15998](https://github.com/apache/nuttx/pull/15998) sched: simplify call of get current tcb
* [#16262](https://github.com/apache/nuttx/pull/16262) sched/affinity: Fix CPU_LOCKED functionality for some SMP calls
* [#16134](https://github.com/apache/nuttx/pull/16134) sched/gettid: Move thread ID to TLS
* [#15951](https://github.com/apache/nuttx/pull/15951) sched/init: Fix build error with CONFIG_BOARD_CRASHDUMP_CUSTOM
* [#16113](https://github.com/apache/nuttx/pull/16113) sched/mutex: add ticked lock version for mutex/rmutex
* [#16329](https://github.com/apache/nuttx/pull/16329) sched/queue: fix typo in dq_insert_mid macro
* [#15982](https://github.com/apache/nuttx/pull/15982) sched/sem_waitirq: Move kmm_map() call to sem_wait()
* [#16334](https://github.com/apache/nuttx/pull/16334) sched/signal: Fix signal delivered to a wrong thread
* [#16333](https://github.com/apache/nuttx/pull/16333) sched/signal: signal dispatch cleanups
* [#16301](https://github.com/apache/nuttx/pull/16301) sched/signal/sig_dispatch: Fix a race condition between nxsig_tcbdispatch and nxsig_deliver
* [#16383](https://github.com/apache/nuttx/pull/16383) sched/timedwait: Ensure critical section for nxsig_timeout
* [#15937](https://github.com/apache/nuttx/pull/15937) sched/wdog: Support for periodic wdog.
* [#16343](https://github.com/apache/nuttx/pull/16343) sched/wdog: watchdog timer improvements.
* [#16342](https://github.com/apache/nuttx/pull/16342) sched/wqueue: Fix wd_cancel_sync and improve work_queue performance.
* [#16231](https://github.com/apache/nuttx/pull/16231) sched/wqueue: Refactor delayed and periodic workqueue.

libs

* [#16130](https://github.com/apache/nuttx/pull/16130) libc/arm: optimize crc32/crc32c for arm
* [#16311](https://github.com/apache/nuttx/pull/16311) libc/backtrace: Fix compilation error when set LIBC_BACKTRACE_BUFFSIZE
* [#16374](https://github.com/apache/nuttx/pull/16374) libc/fdcheck: fix issue about  a double close check
* [#16149](https://github.com/apache/nuttx/pull/16149) libc/semaphore: Read semaphore value by using NXSEM_COUNT macro
* [#15944](https://github.com/apache/nuttx/pull/15944) libc/strings: fix compile warning if enable -Wshadow
* [#16142](https://github.com/apache/nuttx/pull/16142) libs/libc/crc16: add some comments for crc16ccitt
* [#16143](https://github.com/apache/nuttx/pull/16143) libs/libc/crc16: add support of CRC-16/ANSI(aka CRC-16/IBM)
* [#16360](https://github.com/apache/nuttx/pull/16360) libs/libc/semaphore: Enable semaphore fast wait/post paths for counting semaphores
* [#16147](https://github.com/apache/nuttx/pull/16147) libs/libc/crc16: Separate implementation of crc16xmodem from crc16

tools

* [#16241](https://github.com/apache/nuttx/pull/16241) tools: Update Unix.mk for CONFIG_ARCH_BOARD_COMMON
* [#16000](https://github.com/apache/nuttx/pull/16000) tools/bdf-converter: Fix loop termination condition.
* [#16015](https://github.com/apache/nuttx/pull/16015) tools/checkpatch: Use gmake on BSD, make otherwise.
* [#16402](https://github.com/apache/nuttx/pull/16402) tools/CMakeLists.txt: Improvements to CMakeLists.txt file
* [#16413](https://github.com/apache/nuttx/pull/16413) tools/Config.mk: add -DHAVE_STRNDUP=1
* [#16452](https://github.com/apache/nuttx/pull/16452) tools/doreleasenotes.py: remove deprecater API
* [#15854](https://github.com/apache/nuttx/pull/15854) tools/espressif: Improve version checking by subprocess
* [#16169](https://github.com/apache/nuttx/pull/16169) tools/host_info_dump.py: fix UnboundLocalError: local variable 'vendor_specific_module_path' referenced before assignment
* [#15953](https://github.com/apache/nuttx/pull/15953) tools/mksyscall: fix 106: Unexpected end of line: "FAR char * co"
* [#16396](https://github.com/apache/nuttx/pull/16396) tools/nxstyle.c: fix error Relative file path on Windows Native
* [#16426](https://github.com/apache/nuttx/pull/16426) tools/nxstyle.c: fix defined but not used warning
* [#16313](https://github.com/apache/nuttx/pull/16313) tools/process_config: remove unused unnecessary printing

Architectural Support

New Architecture Support

Improvements

Driver Support

New Driver Support

Drivers With Significant Improvements

Board Support

New Board Support

Boards With Significant Improvements

File System

Bug Fixes

Significant Improvements

Networking

Improvements

Bug Fixes

Security Issues Fixed In This Release

Compatibility Concerns

Changes to Build System

Renamed or Modified Kconfig Options

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:

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.