no1wudi opened a new pull request, #17572:
URL: https://github.com/apache/nuttx/pull/17572

   ## Summary
   This pull request adds support for the **QMI8658 6-axis IMU sensor** (3-axis 
accelerometer + 3-axis gyroscope) to the `lckfb-szpi-esp32s3` board.
   **Why change is necessary:**
   - The QMI8658 is a commonly used IMU sensor on ESP32-S3 based boards for 
motion sensing applications
   - Adding support enables motion-based features like gesture recognition, 
tilt sensing, and motion tracking
   **What functional part of the code is being changed:**
   - Board-specific sensor driver for the `lckfb-szpi-esp32s3` board
   - Location: `boards/xtensa/esp32s3/lckfb-szpi-esp32s3/src/`
   **How does the change exactly work:**
   1. **New driver file (`esp32s3_qmi8658.c`)**: Implements 
`esp32s3_qmi8658_initialize()` which:
      - Initializes I2C0 bus
      - Registers the QMI8658 sensor with the uORB framework
      - Creates device nodes: `/dev/uorb/sensor_accel0` and 
`/dev/uorb/sensor_gyro0`
   2. **Header file (`esp32s3-szpi.h`)**: 
      - Added I2C configuration constants: `QMI8658_I2C_PORT` (0) and 
`QMI8658_I2C_ADDR` (0x6A)
      - Added function declaration for `esp32s3_qmi8658_initialize()`
   3. **Board bringup (`esp32s3_bringup.c`)**:
      - Includes QMI8658 header when `CONFIG_SENSORS_QMI8658=y`
      - Calls initialization function during board bringup
   4. **Build system (`Make.defs`)**:
      - Conditional compilation of `esp32s3_qmi8658.c` when 
`CONFIG_SENSORS_QMI8658=y`
   **Related Issues:** None
   ## Impact
   - **Is new feature added?** YES - New QMI8658 IMU sensor support
   - **Impact on user?** YES - Users can now enable the QMI8658 sensor via 
`CONFIG_SENSORS_QMI8658=y` in defconfig
   - **Impact on build?** YES - New source file added, conditional on Kconfig 
option
   - **Impact on hardware?** YES - Supports the QMI8658 sensor on 
`lckfb-szpi-esp32s3` board only
   - **Impact on documentation?** NO - No documentation changes required
   - **Impact on security?** NO - No security implications
   - **Impact on compatibility?** NO - Purely additive feature, no breaking 
changes
   ## Testing
   I confirm that changes are verified on local setup and works as intended:
   **Build Host(s):**
   - OS: Linux
   - CPU: x86_64
   - Compiler: GCC (ESP-IDF toolchain)
   **Target(s):**
   - Arch: ESP32-S3 (xtensa)
   - Board: `lckfb-szpi-esp32s3`
   - Configuration: `esp32s3/lckfb-szpi-esp32s3/defconfig` with 
`CONFIG_SENSORS_QMI8658=y`
   
   ···
   nsh> uname -a
   NuttX 12.11.0 cb7fb72fae-dirty Dec 20 2025 08:57:55 xtensa lckfb-szpi-esp32s3
   nsh> uorb_listener
   
   Monitor objects num:3
   object_name:sensor_temp, object_instance:0
   object_name:sensor_gyro, object_instance:0
   object_name:sensor_accel, object_instance:0
   sensor_temp(now:1323340000):timestamp:1323340000,temperature:21.000000
   sensor_temp(now:1324350000):timestamp:1324350000,temperature:21.000000
   
sensor_gyro(now:1324350000):timestamp:1324350000,x:1.125000,y:1.656250,z:-0.218750,temperature:21.417969
   
sensor_accel(now:1324350000):timestamp:1324350000,x:-0.797485,y:0.075317,z:0.585693,temperature:21.417969
   sensor_temp(now:1325360000):timestamp:1325360000,temperature:21.000000
   
sensor_gyro(now:1325360000):timestamp:1325360000,x:1.125000,y:1.906250,z:-0.406250,temperature:21.445313
   
sensor_accel(now:1325360000):timestamp:1325360000,x:-0.796387,y:0.073974,z:0.586548,temperature:21.445313
   sensor_temp(now:1326370000):timestamp:1326370000,temperature:21.000000
   
sensor_gyro(now:1326370000):timestamp:1326370000,x:1.187500,y:1.656250,z:-0.125000,temperature:21.421875
   
sensor_accel(now:1326370000):timestamp:1326370000,x:-0.793823,y:0.075073,z:0.587524,temperature:21.421875
   sensor_temp(now:1327380000):timestamp:1327380000,temperature:21.000000
   
sensor_gyro(now:1327380000):timestamp:1327380000,x:1.437500,y:2.062500,z:-0.156250,temperature:21.429688
   
sensor_accel(now:1327380000):timestamp:1327380000,x:-0.796997,y:0.075195,z:0.590942,temperature:21.429688
   sensor_temp(now:1328390000):timestamp:1328390000,temperature:21.000000
   
sensor_gyro(now:1328390000):timestamp:1328390000,x:1.281250,y:2.062500,z:-0.125000,temperature:21.480469
   
sensor_accel(now:1328390000):timestamp:1328390000,x:-0.793335,y:0.073974,z:0.590576,temperature:21.480469
   Object name:sensor_temp0, recieved:6
   Object name:sensor_gyro0, recieved:5
   Object name:sensor_accel0, recieved:5
   Total number of received Message:16/16
   nsh> 
   ···


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to