Re: [PATCH 0/3] iio: magnetometer: add MEMSIC MMC5983MA driver
From: Andy Shevchenko
Date: Fri May 08 2026 - 05:23:47 EST
On Thu, May 07, 2026 at 12:47:21PM +0000, Vladislav Kulikov wrote:
> Add an IIO driver for the MEMSIC MMC5983MA 3-axis magnetometer over
> I2C. The driver provides raw magnetic field readings with per-measurement
> SET/RESET offset cancellation, giving 18-bit output with a full-scale
> range of +/-8 Gauss.
>
> Tested on a Raspberry Pi 2B with the sensor on I2C-1 at 0x30.
>
> The following chip features are intentionally left out of the initial
> driver because the public datasheet does not provide enough detail to
> expose them confidently through stable IIO ABI, or because they still
> need more validation:
>
> - SPI transport: deferred because SET/RESET polarity behavior has been
> reported to differ between I2C and SPI, especially around SET/RESET
> timing and/or SPI mode.
> - Temperature channel: deferred until the temperature output behavior is
> better validated.
> - Continuous measurement mode and Auto SET/RESET: deferred because the
> datasheet does not clearly define the interaction between CMM, TM_M,
> Meas_M_Done, and SET/RESET sequencing.
> - Saturation/self-test bits: deferred because the applied test field
> strength and bit lifetime are not specified.
> - BW/decimation filter tuning: only the documented measurement timing is
> used; no filter response is exposed because the filter topology and
> coefficients are not documented.
>
> The driver uses a conservative 500 us post-SET/RESET delay before
> starting the following measurement. The datasheet describes a 500 ns
> SET/RESET coil pulse, but existing sample code and practical testing
> indicate that a longer software delay is needed before taking the next
> measurement.
Missed section for a new driver. Id est answer the question "Why a new brand
driver? Do we have something similar in IIO already to be expanded to cover
this HW part?"
--
With Best Regards,
Andy Shevchenko