Skip to content

IMU Basic

The IMU Basic Firmware is a lightweight reference implementation for validating the connection and communication between the DA14531 Pro Development Kit and the LSM6DSOX 6-axis IMU sensor.

This firmware is part of the KuoQuo Pivot Smart Ring PoC, designed for early-stage hardware bring-up and sensor validation before BLE integration.

Project Location

This project is located in the KuoQuo Pivot GitHub repository:
- URL: KuoQuo-Pivot/PoC/Firmware/IMUBasic

How to Add This Project to the Renesas SDK

Follow these steps to integrate, compile, and run the project within your local development environment.

Step 1 — Place the Project

Clone or copy the repository into your Renesas SDK directory under the projects folder at the following path:

.../DA145xx_SDK/6.0.24.1464/projects/KuoQuo-Pivot/PoC/Firmware/IMUBasic/**

Step 2 — Open in Keil uVision

  1. Launch Keil uVision (v5 or newer).
  2. Navigate to the project's IDE workspace directory: IMUBaisc\Keil_5\
  3. Open the Keil project file: poc_imu_basic.uvprojx

Step 3 — Build & Flash

  1. Compile and build the target exactly like any standard example project from the Renesas SDK
    Example build log:
Build started: Project: poc_imu_basic
*** Using Compiler 'V6.24', folder: 'A:\Keil\Keil_v5\ARM\ARMCLANG\Bin'
Build target 'DA14531'
compiling exceptions.c...
compiling syscntl.c...
compiling fpga.c...
compiling arch_system.c...
compiling otp_cs.c...
compiling startup_DA14531.c...
compiling uart.c...
compiling system_DA14531.c...
compiling dma.c...
compiling hw_otpc_531.c...
compiling user_periph_setup.c...
compiling uart_utils.c...
compiling gpio.c...
compiling main.c...
compiling spi_531.c...
compiling user_LSM6DSOXTR.c...
compiling spi_flash.c...
compiling lsm6dsox_reg.c...
linking...
Program Size: Code=7204 RO-data=456 RW-data=8 ZI-data=2020  
FromELF: creating hex file...
After Build - User command #1: fromelf --bincombined --output=".\out_DA14531\Objects\poc_imu_basic.bin"  ".\out_DA14531\Objects\poc_imu_basic.axf"
".\out_DA14531\Objects\poc_imu_basic.axf" - 0 Error(s), 0 Warning(s).
Build Time Elapsed:  00:00:01
  1. Connect the DA14531 Pro Development Kit to your computer.
  2. Download/Flash the compiled binary to the development board.

Step 4 — Debug & Run

  1. Start the Keil debugger by clicking the Start/Stop Debug Session button (or press Ctrl + F5).
  2. Set break points in the main.c peripheral initialization routines if you want to verify SPI handshakes step-by-step.
  3. Click the Run button (or press F5) to execute the code. The system will now read live telemetry from the LSM6DSOX sensor.

Example Output

Terminal Configuration: Connect to the development kit's virtual COM port using a serial terminal client (e.g., Tera Term, PuTTY, or Serial Studio) configured to 115200 baud, 8N1.

***********************************

* KuoQuo Pivot PoC IMU Basic DEMO *

***********************************

*****lsm6dsox_init*****
*****Device initialize successfully*****
*****lsm6dsox_fifo*****
Gyro [mdps]:   -26530       -5320       25480
Accel  [mg]:  -207.27       76.31      923.17
Gyro [mdps]:    -4200       -1050        4270
Accel  [mg]:  -220.94       81.31      985.15
Gyro [mdps]:      560        -140        -700
Accel  [mg]:  -221.24       81.55      983.32
Gyro [mdps]:      490        -280        -840
Accel  [mg]:  -220.57       80.76      983.74
Gyro [mdps]:      490        -210        -770
Accel  [mg]:  -221.30       81.55      984.60
Gyro [mdps]:      490        -210        -770
Accel  [mg]:  -220.94       81.49      983.38
Gyro [mdps]:      490        -280        -840
Accel  [mg]:  -220.88       80.88      983.92
Gyro [mdps]:      560        -140        -770
Accel  [mg]:  -221.55       81.86      983.01
...
(continuous logging)