QMagnetometerReading

The QMagnetometerReading class represents one reading from the magnetometer. More

Inheritance diagram of PySide6.QtSensors.QMagnetometerReading

Synopsis

Functions

Detailed Description

QMagnetometerReading Units

The magnetometer returns magnetic flux density values along 3 axes. The scale of the values is teslas. The axes are arranged as follows.

../../_images/sensors-coordinates2.jpg

The magnetometer can report on either raw magnetic flux values or geomagnetic flux values. By default it returns raw magnetic flux values. The returnGeoValues property must be set to return geomagnetic flux values.

The primary difference between raw and geomagnetic values is that extra processing is done to eliminate local magnetic interference from the geomagnetic values so they represent only the effect of the Earth’s magnetic field. This process is not perfect and the accuracy of each reading may change.

The image below shows the difference between geomagnetic (on the left) and raw (on the right) readings for a phone that is being subjected to magnetic interference.

../../_images/sensors-geo-vs-raw-magnetism.jpg

The accuracy of each reading is measured as a number from 0 to 1. A value of 1 is the highest level that the device can support and 0 is the worst.

Calibration

If the device is reporting low accuracy, then calibration might be needed before acceptable measurements can be provided. Basic calibration can usually be done by either rotating your device in a figure of eight, or by rotating the device along each of its three axes. For more information, check your device’s documentation on how to calibrate the magnetic sensor.

class PySide6.QtSensors.QMagnetometerReading(parent)
Parameters

parentPySide6.QtCore.QObject

PySide6.QtSensors.QMagnetometerReading.calibrationLevel()
Return type

float

PySide6.QtSensors.QMagnetometerReading.setCalibrationLevel(calibrationLevel)
Parameters

calibrationLevel – float

Sets the accuracy of the reading to calibrationLevel.

PySide6.QtSensors.QMagnetometerReading.setX(x)
Parameters

x – float

Sets the raw magnetic flux density on the X axis to x.

See also

x()

PySide6.QtSensors.QMagnetometerReading.setY(y)
Parameters

y – float

Sets the raw magnetic flux density on the Y axis to y.

See also

y()

PySide6.QtSensors.QMagnetometerReading.setZ(z)
Parameters

z – float

Sets the raw magnetic flux density on the Z axis to z.

See also

z()

PySide6.QtSensors.QMagnetometerReading.x()
Return type

float

See also

setX()

PySide6.QtSensors.QMagnetometerReading.y()
Return type

float

See also

setY()

PySide6.QtSensors.QMagnetometerReading.z()
Return type

float

See also

setZ()