Run a very simple program which uses QCompass:
#include <QtCore> #include <QCompass> QTM_USE_NAMESPACE class Filter : public QCompassFilter { public: bool filter(QCompassReading *pReading) { qDebug() << "Compass Calibration Level:" << pReading->calibrationLevel() << "Azimuth:" << pReading->azimuth(); return false; // don't store the reading in the sensor } }; int main(int argc, char **argv) { QCoreApplication app(argc, argv); QCompass compass; Filter filter; compass.addFilter(&filter); compass.start(); if (!compass.isActive()) { qWarning("Compass did not start!"); return 1; } return app.exec(); }
Expected result: Azimuth info should be printed to the console when rotating the device.
Actual result: The following is printed in the console:
Setting up compass (0.0.1) ... loaded the Generic plugin loaded the Maemo 6 plugin New control sensor "compasssensor" interface created with session id 8 ... Object::connect: No such signal CompassSensorChannelInterface::levelChanged(const int&) in maemo6compass.cpp:56 Object::connect: No such signal CompassSensorChannelInterface::degreesChanged(const int&) in maemo6compass.cpp:57 Setting data rate 43 Hz (interval 23 ms) for "compasssensor"
and no azimuth info is reported.