DEKI/ENGINE docs
deki-imu 0.19.0
Deki package reference
deki-imu

Accelerometer + gyroscope peripheral interface with LSM6DS3 backend (hardware pedometer)

Repository: github.com/dekiengine/deki-imu · Latest release: 0.19.0 · Needs engine 0.19.0+ · Requires: deki-i2c

Install with DekiEditor --packages-add deki-imu <project>, or from the Package Manager. The engine's own components and C++ API are in the Deki docs.

Shown in the editor as IMU (Accelerometer + Gyroscope).

Components

Component Category Description
LSM6DS3IMUComponent Sensors Reads the LSM6DS3 motion sensor over I2C, step counter included.

Feature flags

Parts you can leave out of a build. A feature with a define is switched there; the rest are stripped with their components.

Feature Define Default
LSM6DS3 (I²C, 6-axis + hardware pedometer) DEKI_FEATURE_IMU_LSM6DS3 on

Component reference

LSM6DS3IMUComponent

Reads the LSM6DS3 motion sensor over I2C, step counter included.

Inspector name: LSM6DS3 IMU · Category: Sensors · Type: DekiImu::LSM6DS3IMUComponent

Property Type Default Constraints Description
i2cPort int32 0 0 to 3 Which I2C bus the sensor is on. Must match the I2C Bus component that set that port up.
i2cAddress int32 106 0 to 127 The sensor's address on the bus, set by its SDO/SA0 pin: 0x6A when that pin is low, 0x6B when high. Two of these chips can share a bus by wiring that pin differently.
enablePedometer bool true Run the chip's built-in step counter. It counts in hardware, so steps keep accumulating without the CPU waking, at a small extra current draw.

Changelog

0.19.0

Changed

  • minEngine 0.19.0: built against engine 0.19.0, whose component metadata records the package each class is in. A build of this package from before does not load and is rebuilt.

Added

  • Japanese, Simplified Chinese and Korean: editor/lang/ja.json, zh.json and ko.json translate the names, tooltips and enum values this package's components show in the Inspector.

0.18.0

Changed

  • minEngine 0.18.0. Reflection ABI 21: the package must be rebuilt.
  • Names follow the code style (deki-engine/docs/codestyle): types, functions and enum values are PascalCase, constants kPascalCase, members m_PascalCase, locals and parameters camelCase. The code is formatted with clang-format 22.
  • The functions the editor finds by name are PascalCase: DekiIMURegisterComponents, DekiIMUGetAutoComponentCount, DekiIMUEnsureRegistered and the rest. Built against engine ABI 21; a build of this package from before does not load and is rebuilt.

Fixed

  • LSM6DS3: resetting the step count works. It set a bit in the wrong register, so the count never cleared.
  • LSM6DS3: with the pedometer on, the gyroscope's X and Z axes stay on. Turning the pedometer on switched them off on the original LSM6DS3. The pedometer bits now follow the chip: the LSM6DS3 and the LSM6DS3TR-C keep them in different places.

Removed

  • The former names from before 0.16.0 (bare class names, and deki-gpio's DekiEsp32::ESP32PinSetup). A scene that old is upgraded with 0.17 first.

Earlier releases: CHANGELOG.md.


Generated from the package's reflection data (engine 0.19.0). Property names are the keys used in scene files. Renames keep an alias (compatibility).