HACKER Q&A
📣 feefifoflux

How to gain a solid understanding of IMUs?


My background is primarily software (Python, AI/ML, large-scale data). This is my first serious hardware-heavy product.

I’m working on a company concept that depends on embedded IMUs, and I’m trying to front-load learning so I don’t lock myself into poor architectural, software or component decisions early on, especially those pitfalls that someone with more knowledge/expertise would know how to avoid.

I understand “learning by doing” is essential, but I suspect there are canonical pitfalls and resources I should study before committing deeply to hardware.

Here are the parameters of the project:

* The IMU environment will be abusive, with vibrations and impacts. The vibrations and impacts are not the object of analysis (i.e. noise), but I do want to account for them so they do not pollute the data and design the platform so the platform survives.

* I will need low-power/sleep/wake-on-accel in order to achieve the desired battery life.

* The IMUs will transmit to a gateway via bluetooth in short bursts of less than 60 seconds, 10-20 times per day, and sleep the rest of the time.

* There could be 20-40 IMUs transmitting simultaneously.

* The production IMU platform needs to be very short, i.e. height = 3-6mm.

* The implementation requires that the batteries on board are not rechargeable, but last the life of the IMU unit, i.e. 2+ years.

* The way the IMU units are implemented, there should be an opportunity to sample the unit at rest for calibration purposes, e.g. biases, etc.

Here are some subject areas I have marked for further study/inquiry:

* Handling biases

* Kalman filtering

* Error propagation in single/double integration, i.e. velocity and position

* Low-power configuration

* Bluetooth communications

* Battery/power options that meet the 2+ year goal

I am seeking guidance/wisdom to better prepare myself for the core challenges I will face on the IMU/hardware portion of this project.

Specifically, I am seeking cherished, esteemed, favorite resources on the following subjects areas as well as the addition of any resources/subjects you deem important:

* Underlying IMU physics, i.e. first principles

* Handling bias/calibration

* Error propagation, single/double integration

* Kalman filtering for IMU data

* Bluetooth comms for IMUs

* Low-power/sleep configurations

* Battery/power options, i.e. under 5mm, 2+ years

* IATF-16949 compliant manufacturers and how it will benefit the project? Perspectives/opinions?

I have made the standard appeals to Google search and GPT, but I am not convinced I have found all the preliminary materials required for this project to succeed.

Here is an example of a resource that I think is informative, but again, I don't have the expertise to make that judgement definitively: An Introduction to Inertial Navigation by Oliver J. Woodman

FWIW, I am using the Seeed Studio XIAO nRF52840 Sense for prototyping. The inquiry above is for both prototyping and production.


  👤 jeffreygoesto Accepted Answer ✓
The iPhone uses Bosch sensors, you might want to check https://www.bosch-sensortec.com/products/motion-sensors/imus...