MCPcopy Index your code
hub / github.com/apache/nuttx

github.com/apache/nuttx @nuttx-12.13.0

Chat with this repo
repository ↗ · DeepWiki ↗ · release nuttx-12.13.0 ↗ · + Follow
95,591 symbols 275,330 edges 17,084 files 396 documented · 0%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

POSIX Badge License Issues Tracking Badge Contributors GitHub Build Badge Documentation Badge

Apache NuttX is a real-time operating system (RTOS) with an emphasis on standards compliance and small footprint. Scalable from 8-bit to 64-bit microcontroller environments, the primary governing standards in NuttX are POSIX and ANSI standards. Additional standard APIs from Unix and other common RTOSs (such as VxWorks) are adopted for functionality not available under these standards, or for functionality that is not appropriate for deeply-embedded environments (such as fork()).

For brevity, many parts of the documentation will refer to Apache NuttX as simply NuttX.

Getting Started

First time on NuttX? Read the Getting Started guide! If you don't have a board available, NuttX has its own simulator that you can run on terminal.

Documentation

You can find the current NuttX documentation on the Documentation Page.

Alternatively, you can build the documentation yourself by following the Documentation Build Instructions.

The old NuttX documentation is still available in the Apache wiki.

Supported Boards

NuttX supports a wide variety of platforms. See the full list on the Supported Platforms page.

Contributing

If you wish to contribute to the NuttX project, read the Contributing guidelines for information on Git usage, coding standard, workflow and the NuttX principles.

License

The code in this repository is under either the Apache 2 license, or a license compatible with the Apache 2 license. See the License Page for more information.

Core symbols most depended-on inside this repo

putreg32
called by 11521
arch/arm64/src/common/arm64_arch.h
getreg32
called by 10880
arch/arm64/src/common/arm64_arch.h
syslog
called by 4177
libs/libc/syslog/lib_syslog.c
usbtrace
called by 3886
drivers/usbdev/usbdev_trace.c
leave_critical_section
called by 3168
sched/irq/irq_csection.c
nxmutex_unlock
called by 3070
include/nuttx/mutex.h
enter_critical_section
called by 2790
sched/irq/irq_csection.c
nxmutex_lock
called by 2382
include/nuttx/mutex.h

Shape

Function 65,100
Class 27,113
Enum 2,723
Method 655

Languages

C86%
C++12%
Python2%

Modules by API surface

arch/renesas/include/rx65n/iodefine.h1,568 symbols
tools/ci/testrun/script/test_open_posix/test_openposix_.py987 symbols
arch/risc-v/src/esp32c3-legacy/esp32c3_wifi_adapter.c222 symbols
arch/renesas/src/rx65n/rx65n_usbhost.c212 symbols
arch/arm/src/samd5e5/sam_usb.c178 symbols
arch/renesas/src/rx65n/rx65n_usbdev.c169 symbols
include/nuttx/wireless/ieee80211/ieee80211.h161 symbols
arch/arm/src/rtl8720c/amebaz_depend.c134 symbols
arch/xtensa/src/esp32s3/esp32s3_wifi_adapter.c131 symbols
arch/xtensa/src/esp32/esp32_wifi_adapter.c130 symbols
arch/xtensa/src/esp32s2/esp32s2_wifi_adapter.c125 symbols
drivers/video/v4l2_cap.c120 symbols

For agents

$ claude mcp add nuttx \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact