NuttX logo | |
Developer | Gregory Nutt |
---|---|
Written in | C, C++, assembly |
OS family | POSIX |
Working state | Current |
Source model | Open source |
Initial release | 2007 |
Latest release | 10.3.0 / June 3, 2022[1] |
Repository | |
Marketing target | Embedded systems |
Platforms | ARM, AVR, AVR32, HCS12, LM32, MIPS, RISC-V, OpenRISC, SuperH, Xtensa, x86, x86-64, Z80 |
Kernel type | Real-time microkernel |
License | Apache License 2.0 |
Official website | nuttx |
NuttX is a free and open-source Real-Time Operating System (RTOS) with an emphasis on technical standards compliance and on having a small footprint. Scalable from 8-bit to 64-bit microcontroller environments,[citation needed] the main governing standards in NuttX are from the Portable Operating System Interface (POSIX) and the American National Standards Institute (ANSI). Further standard application programming interfaces (APIs) from Unix and other common RTOSes (such as VxWorks) are adopted for functions unavailable under these standards,[citation needed] or inappropriate for deeply embedded environments, such as the fork() system call.[citation needed]
NuttX was first released in 2007 under the permissive BSD license.[citation needed][clarification needed] Since December 2019, it has been undergoing incubation at the Apache Software Foundation.[2]
NuttX RTOS is used in a variety of applications, including the Sony CXD5602/Spresense microcontroller[3] as well as an audio recorder from Sony.[4]
The firmware for some of Motorola's MotoMod accessories for the Moto Z used NuttX RTOS,[5][6] and NuttX is also used in the PX4 autopilot drones, which use NuttX to control a variety of autonomous platforms.[7]