1 #ifndef WITMOTION_WT901
2 #define WITMOTION_WT901
5 #include <QSerialPortInfo>
14 #include "witmotion/types.h"
15 #include "witmotion/util.h"
16 #include "witmotion/serial.h"
31 virtual const std::set<witmotion_packet_id>* RegisteredPacketTypes();
33 virtual void UnlockConfiguration();
34 virtual void Calibrate();
35 virtual void CalibrateMagnetometer();
36 virtual void SetBaudRate(
const QSerialPort::BaudRate& rate);
37 virtual void SetPollingRate(
const int32_t hz);
38 virtual void SetOrientation(
const bool vertical =
false);
39 virtual void ToggleDormant();
40 virtual void SetGyroscopeAutoRecalibration(
const bool recalibrate =
true);
41 virtual void SetAxisTransition(
const bool axis9 =
true);
42 virtual void SetLED(
const bool on =
true);
43 virtual void SetMeasurements(
const bool realtime_clock =
false,
44 const bool acceleration =
true,
45 const bool angular_velocity =
true,
46 const bool euler_angles =
true,
47 const bool magnetometer =
true,
48 const bool orientation =
false,
49 const bool port_status =
false);
50 virtual void SetAccelerationBias(
float x,
53 virtual void SetI2CAddress(
const uint8_t address);
54 virtual void SetRTC(
const QDateTime datetime);
55 virtual void ConfirmConfiguration();
56 QWitmotionWT901Sensor(
const QString device,
57 const QSerialPort::BaudRate rate,
58 const uint32_t polling_period = 50);