Commit graph

3230 commits

Author SHA1 Message Date
Filipe Cavalcanti
2b39147fe2 documentation: update ESP32-C3 board names for legacy and new devkit
Updates the docs to the new esp32c3-devkit naming, after deprecating support
for now esp32c3-legacy.

Signed-off-by: Filipe Cavalcanti <filipe.cavalcanti@espressif.com>
2025-12-03 13:45:13 +08:00
Eren Terzioglu
f90dcde45e Documentation/xtensa/esp32[-s2]: Add PM docs
Add PM docs for esp32s2

Signed-off-by: Eren Terzioglu <eren.terzioglu@espressif.com>
2025-12-02 02:37:06 +08:00
Kerogit
5318c1aa78 arch/avr/src/avrdx: add support for TWI (I2C and SMBus) peripheral
This patch adds support for Two-Wire interface in AVR Dx chips.
Only master mode is supported in this version.

The driver was tested using TC74Ax thermal sensor and simple application
that read the temperature from it. (Driver for the sensor is not in-tree.)

Signed-off-by: Kerogit <kr.git@kerogit.eu>
2025-12-01 19:12:26 +08:00
Huang Qi
3a6865aef5 drivers/sensors: Add QST QMI8658 6-axis IMU sensor support
Add complete driver support for the QST QMI8658 6-axis IMU sensor featuring
3-axis accelerometer and 3-axis gyroscope with I2C interface and uORB
integration.

Key features implemented:
* Full I2C communication with configurable frequency (default 400kHz)
* Multiple accelerometer ranges (±2g, ±4g, ±8g, ±16g) and ODR settings
* Multiple gyroscope ranges (±16 to ±1024 dps) with high ODR support
* Low-pass filter configuration for both sensors
* Temperature sensing with 16-bit resolution
* Self-test capability for both accelerometer and gyroscope
* Calibration-on-demand support with offset registers
* FIFO buffer management (framework ready)
* Interrupt-driven and polling mode support
* Complete uORB integration with sensor_accel and sensor_gyro topics

Driver components added:
* Core driver implementation (qmi8658_uorb.c) with register operations
* Header file with register definitions and scale factors (qmi8658.h)
* Kconfig options for driver configuration and polling mode
* Build system integration (CMakeLists.txt, Make.defs)
* Comprehensive documentation with API reference and usage examples

The driver follows NuttX sensor framework conventions and provides
robust error handling, mutex protection, and comprehensive debugging
support through CONFIG_DEBUG_SENSORS.

Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
2025-11-30 09:44:43 -03:00
Eren Terzioglu
499187e057 Documentation/risc-v/esp32[-c3|-c6|-h2]: Add PM deep sleep docs
Add PM deep sleep doc support for esp32[-c3|-c6|-h2]

Signed-off-by: Eren Terzioglu <eren.terzioglu@espressif.com>
2025-11-29 14:35:34 +08:00
Eren Terzioglu
d2c6eced38 Documentation/risc-v/esp32[-c3|-c6|-h2]: Add PM docs
Add PM doc support for esp32[-c3|-c6|-h2]

Signed-off-by: Eren Terzioglu <eren.terzioglu@espressif.com>
2025-11-29 14:35:34 +08:00
Vlad Pruteanu
6e7cfed8a1 documentation: Add HMAC-SHA support for esp32
Support for hardware accelerated HMAC-SHA(1/256) for ESP32
was added, this commit updates the documentation to reflect
this as well.

Signed-off-by: Vlad Pruteanu <pruteanuvlad1611@yahoo.com>
2025-11-28 08:24:59 +01:00
Alan Carvalho de Assis
13a361ab30 docs/stm32f429i-disco: Add the stm32f429i-disco picture
Signed-off-by: Alan C. Assis <acassis@gmail.com>
2025-11-27 18:27:46 -03:00
Alan Carvalho de Assis
658c5a938e boards/stm32f429i-disco: Add NX boot logo splash screen
This commit add a framebuffer example and initializes the board with
NuttX boot logo splash screen.

Signed-off-by: Alan C. Assis <acassis@gmail.com>
2025-11-27 15:17:30 -03:00
Antoine Juckler
02db473e97 drivers/eeprom: Set the bus frequency
Add EEPIOC_SETSPEED ioctl acting like the MTDIOC_SETSPEED ioctl. The
default frequency is settable in the Kconfig.

Add xx25xx SPI delay control configurations.

Signed-off-by: Antoine Juckler <6445757+ajuckler@users.noreply.github.com>
2025-11-25 09:49:26 +08:00
ouyangxiangzhen
6689a408f3 Documentation/drivers/timers: Add information about timers.
This commit added additional informantion about the timer driver
abstraction.

Signed-off-by: ouyangxiangzhen <ouyangxiangzhen@xiaomi.com>
2025-11-24 19:43:07 +08:00
Karel Kočí
c61d7c7e8d nuttx/can: add message alignment
This adds ability for read and write operations to work with messages
aligned to configured number of bytes. This has few different use
cases.

The alignment is specified as unsigned integer and can be changed with
ioctl command CANIOC_SET_MSGALIGN. The current value can be queried by
CANIOC_GET_MSGALIGN command.

The default value for the message alignment is 1. This will provide
behavior consistent with current one. Thus messages are placed to the
buffer right after data of the previous one. The same applies for
writes.

The special alignment value 0 disables read and write of multiple frames. Thus
read will always return at most one message and write will always write
only one message even if larger buffer size is provided.

Another use case is if message alignment is set to exactly message
representation size (`sizeof(struct can_msg_s)`). This allows writing
and reading arrays of messages.

Other values provide even more advanced and specialized use cases, such
as optimizations if architecture has to emulate some non-aligned
accesses, there alignment of for example 4 bytes could provide
performance boost.

The original motivation behind this is was compatibility with socket
CAN. It is easier to port applications to NuttX's CAN driver if only one
frame is provided at the time. This solution was suggested by Pavel Pisa
<pisa@fel.cvut.cz> as a more versatile variant of plain boolean
disabling the multiple frame retrieval.

Signed-off-by: Karel Kočí <kkoci@elektroline.cz>
2025-11-24 14:11:41 +08:00
Michal Lenc
cb5f47e56e documentation: add GPIO character device driver entry
This page describes GPIO character device driver and its API.

Signed-off-by: Michal Lenc <michallenc@seznam.cz>
2025-11-22 14:12:19 -05:00
LuchianMihai
e09c8e510e Documentation/Make: add implementation/make_build_system.rst
This commit adds initial high level overview of the NuttX
make-based build system.  It documents:
* Tools used during the build process
* Mechanisms set in place during the build process

Signed-off-by: Luchian Mihai <luchiann.mihai@gmail.com>
2025-11-20 09:39:16 -05:00
ouyangxiangzhen
3b52763385 Documentation/componensts: Add doc for timers/oneshot.
This commit added doc for timers/oneshot.

Signed-off-by: ouyangxiangzhen <ouyangxiangzhen@xiaomi.com>
2025-11-19 12:24:56 +08:00
leocafonso
9e573371bb Documentation: Add GPT information to RA4M1 documentation
- Updated information about the RA4M1 microcontroller capabilities, including the General Purpose Timer (GPT).
- Added information about the PWM driver support for the Arduino R4 Minima board using the GPT timer.

Signed-off-by: leocafonso <leocafonso@gmail.com>
2025-11-17 09:01:31 -03:00
donghaokun
f2d0d5b45f Documentation: Add documentation for NSH_BUILTIN_AS_COMMAND
This patch adds the description for NSH_BUILTIN_AS_COMMAND including its advantage and disadvantage.
NSH_BUILTIN_AS_COMMAND is an optional configuration in nsh. It allows nsh builtin apps to run directly like nsh command without creating a thread. This is done in pull request https://github.com/apache/nuttx-apps/pull/3168

Signed-off-by: Haokun Dong <donghaokun@lixiang.com>
2025-11-15 10:49:58 -05:00
Matteo Golin
858619ec29 docs/platforms/raspberrypi-4b: Document cgol configuration
Documents the newly added `cgol` configuration for playing with Conway's
Game of Life.

Signed-off-by: Matteo Golin <matteo.golin@gmail.com>
2025-11-14 16:57:10 +01:00
Matteo Golin
058c7a8353 docs/applications/games/cgol: Documentation for CGOL game
Added documentation for the new Conway's Game of Life application.

Signed-off-by: Matteo Golin <matteo.golin@gmail.com>
2025-11-14 16:57:10 +01:00
nuttxs
691cca4153 11_network.rst: Add a "Network Interfaces Overview" section and
reorganize the content structure:

- Add the new "Network Interfaces Overview" section
- Reorganize the document structure and optimize formatting

Signed-off-by: nuttxs <zhaoqing.zhang@sony.com>
2025-11-13 11:29:38 -03:00
Antoine Juckler
934dfdf645 drivers/eeprom: Retrieve the geometry
Add EEPIOC_GEOMETRY IOCTL command to retrieve the
EEPROM geometry.

Signed-off-by: Antoine Juckler <6445757+ajuckler@users.noreply.github.com>
2025-11-13 08:57:52 -03:00
hujun5
857fdad220 boards/arm/qemu/qemu-armv7a: add demo for gdbstub
Gdbstub support
===========
  The Qemu version must be above 9.2 to support two serial ports.

  One window:
  ./tools/configure.sh qemu-armv7a:gdbstub; make -j25
  qemu-system-arm -cpu cortex-a7 -nographic -machine virt,virtualization=off,gic-version=2 -net none -kernel ./nuttx  -serial mon:stdio -serial pty
  char device redirected to /dev/pts/26 (label serial1)
  nx_start: Entry
  uart_register: Registering /dev/console
  uart_register: Registering /dev/ttyS0

  Another window:
  gdb-multiarch nuttx -ex "target remot /dev/pts/26"
  GNU gdb (Ubuntu 15.0.50.20240403-0ubuntu1) 15.0.50.20240403-git
  Copyright (C) 2024 Free Software Foundation, Inc.
  License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
  This is free software: you are free to change and redistribute it.
  There is NO WARRANTY, to the extent permitted by law.
  Type "show copying" and "show warranty" for details.
  This GDB was configured as "x86_64-linux-gnu".
  Type "show configuration" for configuration details.
  For bug reporting instructions, please see:
  <https://www.gnu.org/software/gdb/bugs/>.
  Find the GDB manual and other documentation resources online at:
  <http://www.gnu.org/software/gdb/documentation/>.

  For help, type "help".
  Type "apropos word" to search for commands related to "word"...
  Reading symbols from nuttx...
  Remote debugging using /dev/pts/26
  gdb_get_registers (state=0x402052f8) at gdbstub/lib_gdbstub.c:1020
  1020              reg = state->running_regs;
  (gdb) c

Signed-off-by: hujun5 <hujun5@xiaomi.com>
2025-11-11 19:53:56 +08:00
wangchengdong
9053b60eb2 Documentation: Add wd_start_next() API description
Add documentation for wd_start_next() API,
    describing its purpose and usage.

Signed-off-by: Chengdong Wang <wangchengdong@lixiang.com>
2025-11-10 23:16:57 +08:00
wangchengdong
61c4c54bd3 Documentation: Add wd_restart_next() API description
Add documentation for the newly introduced wd_restart_next() API,
    describing its purpose and usage.

Signed-off-by: Chengdong Wang <wangchengdong@lixiang.com>
2025-11-10 23:16:57 +08:00
wangchengdong
387803e958 Documentation: Add wd_restart() API description
Add documentation for the newly introduced wd_restart() API,
    describing its purpose and usage.

Signed-off-by: Chengdong Wang <wangchengdong@lixiang.com>
2025-11-10 23:16:57 +08:00
raiden00pl
44a924ab42 boards/stm32h7: add Arduino Portenta H7
Add initial support for Arduino Portenta H7.
For now only CM7 core is supported.

Signed-off-by: raiden00pl <raiden00@railab.me>
2025-11-10 18:13:47 +08:00
Matteo Golin
d4c904d949 docs/applications/examples/fb: Add documentation to fb example
Included documentation for the framebuffer example, fb. This includes a
description of how the program works, what features it supports and
images of what the rendered output should look like if everything is
correct.

Signed-off-by: Matteo Golin <matteo.golin@gmail.com>
2025-11-10 13:48:23 +08:00
Matteo Golin
00e287bb70 docs/raspberrypi-4b: Include information about new graphics support
Add description of new graphics configuration, and indicate HDMI video
output support (with notes) in the supported peripherals table.

Signed-off-by: Matteo Golin <matteo.golin@gmail.com>
2025-11-09 16:48:14 -03:00
hujun5
aff64bb3dc arm64: add demo for gdbstub
Gdbstub demo::
   The Qemu version must be above 9.2 to support two serial ports.

   One window:
   ./tools/configure.sh qemu-armv8a:gdbstub; make -j25
   qemu-system-aarch64 -cpu cortex-a53 -nographic -machine virt,virtualization=on,gic-version=3 -net none -kernel ./nuttx -serial mon:stdio -serial pty
   char device redirected to /dev/pts/27 (label serial1)
   - Ready to Boot Primary CPU
   - Boot from EL2
   - Boot from EL1
   - Boot to C runtime for OS Initialize

   Another window:
   gdb-multiarch nuttx -ex "target remot /dev/pts/27"
   GNU gdb (Ubuntu 15.0.50.20240403-0ubuntu1) 15.0.50.20240403-git
   Copyright (C) 2024 Free Software Foundation, Inc.
   License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
   This is free software: you are free to change and redistribute it.
   There is NO WARRANTY, to the extent permitted by law.
   Type "show copying" and "show warranty" for details.
   This GDB was configured as "x86_64-linux-gnu".
   Type "show configuration" for configuration details.
   For bug reporting instructions, please see:
   <https://www.gnu.org/software/gdb/bugs/>.
   Find the GDB manual and other documentation resources online at:
   <http://www.gnu.org/software/gdb/documentation/>.

   For help, type "help".
   Type "apropos word" to search for commands related to "word"...
   Reading symbols from nuttx...
   Remote debugging using /dev/pts/26
   gdb_get_registers (state=0x403e1590) at gdbstub/lib_gdbstub.c:1020
   1020              reg = state->running_regs;
   (gdb) c

Signed-off-by: hujun5 <hujun5@xiaomi.com>
2025-11-09 22:45:26 +08:00
nuttxs
65e318421d netdb/lib_dnsdelserver.c: support delete the DNS server address
by index or address

 - dns_del_nameserver()
 - dns_del_nameserver_by_index()

Update the "DNS function" section in 11_network.rst, and create
the netlib API documentation in netlib/index.rst

Signed-off-by: nuttxs <zhaoqing.zhang@sony.com>
2025-11-08 16:17:40 -03:00
haitomatic
e7ad870f18 arch/risc-v/mpfs: Add MSS CAN driver.
Refactor to  become lower half driver.

Signed-off-by: Hai To <hai.to@tii.ae>
2025-11-03 17:14:53 -03:00
wangchengdong
5a6242aac8 Documentation: Remove nxevent_tickwait_wait() description
Remove the nxevent_tickwait_wait() description from events.rst,
    since this API was removed during the event module refactoring.

Signed-off-by: Chengdong Wang <wangchengdong@lixiang.com>
2025-10-31 19:56:32 -03:00
wangchengdong
76dcec8f4b Documentation: Add description for early_syslog()
Add documentation describing the purpose and behavior of early_syslog(),
   which provides a minimal logging facility available during early system
   initialization or system down.

Signed-off-by: Chengdong Wang wangchengdong@lixiang.com
2025-10-31 08:29:17 -03:00
Matteo Golin
11e81d1a89 docs/platforms/arm64/bcm2711: microSD documented, improvements
The documentation is now updated to reflect the new EMMC support. I have
also improved the format to match the standard board documentation
template, and included better support descriptions for features that
have varying levels of implementation.

Signed-off-by: Matteo Golin <matteo.golin@gmail.com>
2025-10-28 16:21:53 -03:00
Kevin Witteveen (MartiniMarter)
32a8caf66b documentation: JPEGResizeTool application and libjpeg
Signed-off-by: Kevin Witteveen (MartiniMarter) <kevinwit1999@gmail.com>
2025-10-26 09:44:46 -04:00
kywwilson11
35d1aaafda arch/arm/stm32h5: STM32H5 PWM Driver (STM32H7 port)
Adding the stm32h5 pwm driver. This is almost an exact copy of the stm32h7 pwm driver. I confirmed the timers for the h5 are version v2 and added the preprocessor definition. This commit was tested on a stm32h5 nucleo-h563zi development board. Necessary board files and a pwm config have been added. Added pin mappings for all timer outputs.

Signed-off-by: kywwilson11 <kwilson@2g-eng.com>

Added documentation regarding nucleo-h563zi:pwm config.

Removed CONFIG_STM32H5_PWM guard at the top. Fixed IRQs for tim1 and tim8. Added H5 to list of Timer IP v2 timers.

Conditionally compile stm32_serial.c.

Add stm32_pwm.c to CMakeLists.txt
2025-10-25 12:48:34 +08:00
Matteo Golin
b2e823d0b9 docs/platforms/risc-v/esp32c3-legacy/boards/esp32c3-devkit-rust-1: Migrate README.txt
Migrate README.txt to RST, adhering to the standard board documentation
template.

Signed-off-by: Matteo Golin <matteo.golin@gmail.com>
2025-10-24 10:16:36 +02:00
Matteo Golin
b7de650968 docs/platforms/risc-v/fe310/boards/hifive1-revb: Migrate README.txt
Migrate README.txt to RST format adhering to the standard board
documentation template.

Signed-off-by: Matteo Golin <matteo.golin@gmail.com>
2025-10-24 10:16:36 +02:00
Matteo Golin
cb710a71d1 docs/platforms/risc-v/rv32m1/boards/rv32m1-vega: Migrate README.txt
Migrate README.txt to RST format adhering to the standard board
documentation template.

Signed-off-by: Matteo Golin <matteo.golin@gmail.com>
2025-10-24 10:16:36 +02:00
Matteo Golin
6056fd61f3 docs/platforms/risc-v/c906/boards/smartl-c906: Migrate README.txt
Migrate README.txt to RST documentation format adhering to standard
board documentation template.

Signed-off-by: Matteo Golin <matteo.golin@gmail.com>
2025-10-24 10:16:36 +02:00
Matteo Golin
865753fd80 docs/platforms/risc-v/hpm6750/boards/hpm6750evk2: Migrate README.txt
Migrate README.txt to RST format adhering to standard board
documentation template.

Signed-off-by: Matteo Golin <matteo.golin@gmail.com>
2025-10-24 10:16:36 +02:00
Matteo Golin
525db5309d docs/platforms/risc-v/litex/boards/arty_a7: Migrate README.txt
Migrated legacy README.txt documentation to RST format which aligns with
the standard template for board documentation.

Signed-off-by: Matteo Golin <matteo.golin@gmail.com>
2025-10-24 10:16:36 +02:00
Matteo Golin
a0c878ad96 docs/platforms/risc-v/k210/boards/maix-bit: Migrate README.txt
Migrated legacy README.txt documentation to RST format following the
standard board documentation template.

Signed-off-by: Matteo Golin <matteo.golin@gmail.com>
2025-10-24 10:16:36 +02:00
Matteo Golin
286bec29d9 docs/platforms/sim/sim/boards/sim: Clean up legacy SIM documentation.
Migrate README.txt about ROMFS to SIM documentation in RST format. Also
cleans up the formatting of the board documentation to leverage RST's
features.

Signed-off-by: Matteo Golin <matteo.golin@gmail.com>
2025-10-24 10:15:24 +02:00
Eren Terzioglu
3893350287 Documentation/xtensa/esp32s3: Add ULP RISCV coprocessor wakeup docs
Add ULP RISCV coprocessor wakeup docs for esp32s3

Signed-off-by: Eren Terzioglu <eren.terzioglu@espressif.com>
2025-10-24 11:16:11 +08:00
Alan C. Assis
ff0fa9807a doc: Add semihost syslog guide instructions
Signed-off-by: Alan C. Assis <acassis@gmail.com>
2025-10-24 09:56:24 +08:00
Eren Terzioglu
f564f4fc56 Documentation/risc-v/esp32[c6]: Add multiple ULP bin docs for esp32c6
Add multiple ULP bin docs for esp32c6

Signed-off-by: Eren Terzioglu <eren.terzioglu@espressif.com>
2025-10-21 06:32:32 -03:00
Eren Terzioglu
a3841a1678 Documentation/xtensa/esp32[-s2|-s3]: Add multiple ULP RISC-V bin docs
Add multiple ULP RISC-V bin docs for esp32s2 and esp32s3

Signed-off-by: Eren Terzioglu <eren.terzioglu@espressif.com>
2025-10-21 06:32:32 -03:00
yushuailong1
097c594aba video/fb: add FBIOGET_PANINFOCNT ioctl
Add a new ioctl to get the count of paninfo

The framebuffer is usually in high-speed RAM. Getting the paninfo
count can help us get the idle state of the framebuffer so that we
can temporarily use this memory.

Signed-off-by: yushuailong1 <yushuailong1@xiaomi.com>
2025-10-14 17:50:42 +08:00
Filipe Cavalcanti
632297a3ca documentation: update MCUBoot flash allocation on ESP32|S2|S3
Add description of flash allocation when using MCUBoot.

Signed-off-by: Filipe Cavalcanti <filipe.cavalcanti@espressif.com>
2025-10-14 17:44:15 +08:00