Software:NuttX

From HandWiki
Short description: Real-time operating system
NuttX
NuttX logo.png
NuttX logo
DeveloperApache Software Foundation
Written inC, C++, assembly
OS familyPOSIX
Working stateCurrent
Source modelOpen source
Initial release2007; 17 years ago (2007)
|Final release|Latest release}}12.2.1 / July 10, 2023; 12 months ago (2023-07-10) [1]
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

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

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

References

  1. "Apache NuttX-12.2.1". https://nuttx.apache.org/releases/12.2.1/. 
  2. "About Apache NuttX". https://nuttx.apache.org/docs/latest/introduction/about.html. 
  3. "NuttX Project at SourceForge". https://sourceforge.net/projects/nuttx/. 
  4. "Apache NuttX (Incubating)". https://incubator.apache.org/clutch/nuttx.html. 
  5. "The Apache Software Foundation Announces Apache® NuttX™ as a Top-Level Project". https://news.apache.org/foundation/entry/the-apache-software-foundation-announces-apache-nuttx-as-a-top-level-project. 
  6. "Spresense combines multi-core and power efficiency". https://developer.sony.com/develop/spresense/. 
  7. "Developing Audio Products with Cortex-M3/NuttX/C++11". http://events.linuxfoundation.org/sites/events/files/slides/DevelopingAudioProductsWithCortexM3NuttXC%2B%2B11_LFELC_OpenIoT_ishikawa_20161209_0.pdf. 
  8. "Moto Mods Firmware: Overview". https://developer.motorola.com/explore/firmware. 
  9. "Modular Moto Z Android phone supports DIY and RPi HAT add-ons". http://hackerboards.com/modular-moto-z-android-phone-supports-diy-and-rpi-hat-add-ons/. 
  10. "Autopilot PX4". https://dev.px4.io/en/concept/architecture.html. 
  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". https://www.mi.com/global/discover/article?id=3047. 
  12. "Xiaomi Vela IoT Platform is Being Open-Sourced Based on NuttX Real-time OS". https://news.itsfoss.com/xiaomi-vela-open-source/. 
  13. TizenRT repo

External links