NuttX

From Wikipedia, the free encyclopedia

NuttX
NuttX logo
DeveloperApache Software Foundation
Written inC, C++, assembly
OS familyPOSIX
Working stateCurrent
Source modelOpen source
Initial release2007; 17 years ago (2007)
Latest release12.4.0 / February 15, 2024; 29 days ago (2024-02-15) [1]
Repository
Marketing targetEmbedded systems
PlatformsARM, AVR, AVR32, HCS12, LM32, MIPS, RISC-V, OpenRISC, SuperH, Xtensa, x86, x86-64, Z80
Kernel typeReal-time microkernel
LicenseApache License 2.0
Official websitenuttx.apache.org

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,[2] 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 initially released in 2007 under the permissive BSD license.[3] In December 2019, it began incubation at the Apache Software Foundation.[4] changing its license from BSD to Apache License and graduated to a top-level project in November 2022.[5]

Usage[edit]

NuttX RTOS is used in a variety of applications, including the Sony CXD5602/Spresense microcontroller[6] as well as an audio recorder from Sony.[7]

The firmware for some of Motorola's MotoMod accessories for the Moto Z used NuttX RTOS,[8][9] and NuttX is also used in the PX4 autopilot drones, which use NuttX to control a variety of autonomous platforms.[10]

In October 2023, Xiaomi announced they were open-sourcing Xiaomi Vela, an IoT software platform based on NuttX that is part of the Xiaomi HyperOS ecosystem (Xiaomi's HyperOS devices include devices based on NuttX, Linux, and Android). Xiaomi Vela is used to power many Xiaomi IoT devices (specifically devices with embedded systems and low computational power, but not more advanced devices like smartphones).[11][12]

Forks[edit]

In December 2016, Samsung created TizenRT,[13] a fork for smart home appliances and IoT devices.

References[edit]

  1. ^ "Apache NuttX-12.4.0". Retrieved March 9, 2024.
  2. ^ "About Apache NuttX". nuttx.apache.org. Retrieved June 23, 2023.
  3. ^ "NuttX Project at SourceForge". Retrieved October 18, 2023.
  4. ^ "Apache NuttX (Incubating)". incubator.apache.org. Retrieved April 29, 2021.
  5. ^ "The Apache Software Foundation Announces Apache® NuttX™ as a Top-Level Project". news.apache.org. Retrieved June 23, 2023.
  6. ^ "Spresense combines multi-core and power efficiency". Retrieved September 5, 2019.
  7. ^ "Developing Audio Products with Cortex-M3/NuttX/C++11" (PDF). Archived from the original (PDF) on January 20, 2017. Retrieved January 20, 2017.
  8. ^ "Moto Mods Firmware: Overview". Retrieved December 28, 2016.
  9. ^ "Modular Moto Z Android phone supports DIY and RPi HAT add-ons". Retrieved August 22, 2016.
  10. ^ "Autopilot PX4". Retrieved May 3, 2013.
  11. ^ "Xiaomi Unveils Xiaomi HyperOS, a Human-centric Operating System Designed and Tailored to Connect Personal Devices, Cars, and Smart Home Products in a Smart Ecosystem". Retrieved December 12, 2023.
  12. ^ "Xiaomi Vela IoT Platform is Being Open-Sourced Based on NuttX Real-time OS". Retrieved December 12, 2023.
  13. ^ TizenRT repo

External links[edit]