Skip to content

Conversation

@asiemsen
Copy link
Collaborator

Move lsm6dso device interations from imu component into its own driver component for better component organization/responsibilities. Imu now communicates to driver component through output port to the driver where sensor data is returned.

Telemetry from gds:
Screenshot 2025-09-17 at 6 02 57 PM

@nateinaction nateinaction marked this pull request as ready for review September 18, 2025 22:03
@nateinaction nateinaction merged commit 8478ca1 into imu2 Sep 18, 2025
1 of 2 checks passed
hrfarmer added a commit that referenced this pull request Oct 1, 2025
* Use custom board definition

* Initial IMU component generation

lastFile:FprimeZephyrReference/Components/Imu/Imu.fpp

* Initial imu data pull

* Reading magnetic field data

* Add new telemetry for accel and angvel

* Acceleration and AngularVelocity telemetry working

* Add temp

* Improve documentation

* Update FprimeZephyrReference/Components/Imu/docs/sdd.md

Co-authored-by: Copilot <[email protected]>

* Add LIS2MDL driver & implement in Imu component (#16)

* add lis2mdl driver and implement in imu component

* fix formatting

* Create lsm6dso driver component & implementation (#17)

* Update README.md

* Create lmsd6dsoDriver component

* create ports for sensor reading output

* fix port naming issue

* Use custom board definition

* Remove commented config

* Moving prj.conf sensors to board definition

* Add d board

* Try referencing c definitions in d board

* Making a common v5 board definition

* Fix readme

* Minor Makefile, Readme and cmake presets fixes

* change lsm6dso internal structs to carry F64 and added output ports to imu

* removed lmsdso init from imu constructor

* remove old sensor reading from imu

* add lms6dso driver to topology

* change base id to allow for lis2mdl driver

* remove line endings

* add channel retrieval during sensor data

* Ensure submodules are downloaded before venv is created

* Fix infinit submodule make target recursion...

---------

Co-authored-by: ineskhou <[email protected]>
Co-authored-by: Nate Gay <[email protected]>
Co-authored-by: Nate Gay <[email protected]>
Co-authored-by: Saidi Adams <[email protected]>
Co-authored-by: Michael Pham <[email protected]>

* Spit out common helpers and types from drivers, standardize port name schema, update SDDs

* Remove unnecessary board files

* remove fpp helper file

* finished renaming to build

* add parentheses for clearer intentions

* remove FW_ASSERTs

* clear throttle after successful device ready check

* adding telemetry to lis2mdlManager

* fix fprime files to match new names & telemetry structure

* edit cpp implementation files to output telemetry

* formatting

* clear throttle, configure lsm6 sensor, read->get

* Add IMU tests

* Add type hinting

* Comment fix

---------

Co-authored-by: aychar <[email protected]>
Co-authored-by: Copilot <[email protected]>
Co-authored-by: Aaron Siemsen <[email protected]>
Co-authored-by: ineskhou <[email protected]>
Co-authored-by: Saidi Adams <[email protected]>
Co-authored-by: Michael Pham <[email protected]>
Co-authored-by: asiemsen <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants