Skip to content

Add support for the QMC5883p, and general cleanup in drivers - #132

Open
Vali0004 wants to merge 1 commit into
SlimeVR:mainfrom
Vali0004:main
Open

Vali0004 wants to merge 1 commit into
SlimeVR:mainfrom
Vali0004:main

Conversation

@Vali0004

@Vali0004 Vali0004 commented Nov 4, 2025 •

Copy link
Copy Markdown

This adds support for the QMC5883P, as well as the WHOAMI, as per my own research and the datasheet.
Sadly, I needed to modify the scan code to special case it, as it wasn't always detected when using it over the secondary I2C data lines of a IMU. It will sometimes work without it, but it isn't 100% reliable, so I feel it's better to have done so.

See the datasheet: https://www.qstcorp.com/upload/pdf/202202/%EF%BC%88%E5%B7%B2%E4%BC%A0%EF%BC%8913-52-19%20QMC5883P%20Datasheet%20Rev.C(1).pdf

I ended up modifying the BMI270 to clearly have the name, for clarity. I know this project does not support other BMI chips, but my personal fork may end up doing so. (even though a PR will never be made, so no one has to maintain it). If needed, I can revert it, but I see no harm.

The other thing I did was remove some miscellaneous whitespaces in some of the calibration and scan code.

From my previous PR, with more comments for clarity on why certain things were done.

@sctanf

sctanf commented Dec 15, 2025

Copy link
Copy Markdown
Member

branch updated

@Vali0004

Copy link
Copy Markdown
Author

I kinda lost interest, after my 3d printer took a shit. however, I have gotten it working.

@sctanf

sctanf commented Jun 18, 2026

Copy link
Copy Markdown
Member

How does the wakeup sequence work? It appears to write to read-only register 09H, and only under regular scan, not scan_ext

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.

2 participants