Access to factory calibration

On the website, it's stated that "all of the sensors on MetaWear devices should be factory calibrated to produce an accurate reading out of the box".

Can you please elaborate on this?

  1. Is this something like a built-in default calibration value that isn't wiped by anything that the programmer can do with the SDK?
  2. Let's say that I set a different calibration with mbl_mw_sensor_fusion_write_calibration_data. How can I clear it and return to the factory calibration?
  3. Is it possible to read the factory calibration's MblMwCalibrationData from the sensor?
  4. Do you store the factory calibration data on Mbient servers? Can I get access to it for sensors ordered by me?

Comments

  • Is this something like a built-in default calibration value that isn't wiped by anything that the programmer can do with the SDK?

    Yes, it is done by our manufacturers/suppliers.

    Let's say that I set a different calibration with mbl_mw_sensor_fusion_write_calibration_data. How can I clear it and return to the factory calibration?

    You would need to update the firmware.

    Is it possible to read the factory calibration's MblMwCalibrationData from the sensor?

    No.

    Do you store the factory calibration data on Mbient servers? Can I get access to it for sensors ordered by me?

    No we do not store this information.

  • A brief elaboration on these answers:

    Accelerometer, Gyroscope and Magnetometer are calibrated by the sensor supplier and internally compensated (in the raw data).

    Pressure and humidity sensors contain supplier provided compensation coefficients. These are applied in firmware and integrated in the raw readout of pressure, altitude and relative humidity.

    The sensor fusion system can further self-calibrate to improve zero offset of accelerometer and gyroscope data, and hard iron distortion of magnetometer. The linked video calibration covers this self-calibration specifically. This is not done at the factory, as it is environment (temp, magnetic field, etc) dependent and continuously on-going in operation.

    For mbl_mw_sensor_fusion_write_calibration_data, a soft reset is sufficient to reset the calibration to "factory default" state. With the exception that if the macro (nvm storage) system is used to store and reload this data, a firmware update or macro erase would be required to reset it.

    The sensor fusion calibration data can be read out of a device, but not the "raw" sensor calibration data. There is nothing that can be updated or changed with respect to the "raw" sensor calibration data. Sensor fusion is not pre-calibrated as noted above, and no calibration data is stored on MbientLab servers.

  • Thanks Matt for the clarification.
    I still have some questions regarding the calibration:

    • Do you need to calibrate the sensors before usage? I experienced varying results with different sensors.
    • Do you need to calibrate the sensor with the software used in the linked video?
    • Or can you calibrate the sensor with the given API? If yes: how do you start the calibration process?

    Thanks for your time!

  • Hi Knokker,

    Do you need to calibrate the sensors before usage? In our sensitive applications, we calibrate before each usage (typically once a day)

    Do you need to calibrate the sensor with the software used in the linked video? Or can you calibrate the sensor with the given API? If yes: how do you start the calibration process? Please see our tutorials and APIs regarding calibrating sensor fusion.
    Outside of sensor fusion (for raw acc data for example), you will need to filter the data yourself and post process. You can tare in software as a calibration process.

  • Hi Laura,

    thanks for your response.
    It would be great for our users if the could calibrate the device with our software.
    Would you point me to a tutorial? What I read in the documentation is how to read the calibration accuracy and how to read / write the configuration. What I could not find is a way to actually start the calibration.

  • Hi Laura,

    Though I am using Swift, I found the parts I missed for the calibration in
    https://github.com/mbientlab/MetaWear-SDK-Python/blob/master/examples/calibrate.py

    Thanks

Sign In or Register to comment.