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:
Step 2 — Open in Keil uVision¶
- Launch Keil uVision (v5 or newer).
- Navigate to the project's IDE workspace directory: IMUBaisc\Keil_5\
- Open the Keil project file: poc_imu_basic.uvprojx
Step 3 — Build & Flash¶
- 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
- Connect the DA14531 Pro Development Kit to your computer.
- Download/Flash the compiled binary to the development board.
Step 4 — Debug & Run¶
- Start the Keil debugger by clicking the Start/Stop Debug Session button (or press Ctrl + F5).
- Set break points in the main.c peripheral initialization routines if you want to verify SPI handshakes step-by-step.
- 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)