aboutsummaryrefslogtreecommitdiff
path: root/apps/uORB
diff options
context:
space:
mode:
authorLorenz Meier <lm@inf.ethz.ch>2012-08-05 22:51:31 +0200
committerLorenz Meier <lm@inf.ethz.ch>2012-08-05 22:51:31 +0200
commit96b348af9f78dc7ead79224c921fb7480aff168e (patch)
treea5ff26f84812a2b121dd3f1dd624e82872f527aa /apps/uORB
parent139cd091768c57272fe1f80d725d4a3a24d2e3d0 (diff)
downloadpx4-firmware-96b348af9f78dc7ead79224c921fb7480aff168e.tar.gz
px4-firmware-96b348af9f78dc7ead79224c921fb7480aff168e.tar.bz2
px4-firmware-96b348af9f78dc7ead79224c921fb7480aff168e.zip
Minor fixes to HMC driver, mag calibration done
Diffstat (limited to 'apps/uORB')
-rw-r--r--apps/uORB/topics/sensor_combined.h50
1 files changed, 32 insertions, 18 deletions
diff --git a/apps/uORB/topics/sensor_combined.h b/apps/uORB/topics/sensor_combined.h
index ecf5ea81d..8fae78858 100644
--- a/apps/uORB/topics/sensor_combined.h
+++ b/apps/uORB/topics/sensor_combined.h
@@ -51,6 +51,12 @@
* @{
*/
+enum MAGNETOMETER_MODE {
+ MAGNETOMETER_MODE_NORMAL = 0,
+ MAGNETOMETER_MODE_POSITIVE_BIAS,
+ MAGNETOMETER_MODE_NEGATIVE_BIAS
+};
+
/**
* Sensor readings in raw and SI-unit form.
*
@@ -71,25 +77,33 @@ struct sensor_combined_s {
/* NOTE: Ordering of fields optimized to align to 32 bit / 4 bytes Change with consideration only */
- uint64_t timestamp; /**< Timestamp in microseconds since boot LOGME */
+ uint64_t timestamp; /**< Timestamp in microseconds since boot LOGME */
+
+ int16_t gyro_raw[3]; /**< Raw sensor values of angular velocity LOGME */
+ uint16_t gyro_raw_counter; /**< Number of raw measurments taken LOGME */
+ float gyro_rad_s[3]; /**< Angular velocity in radian per seconds LOGME */
+
+ int16_t accelerometer_raw[3]; /**< Raw acceleration in NED body frame LOGME */
+ uint16_t accelerometer_raw_counter; /**< Number of raw acc measurements taken LOGME */
+ float accelerometer_m_s2[3]; /**< Acceleration in NED body frame, in m/s^2 LOGME */
+ int accelerometer_mode; /**< Accelerometer measurement mode */
+ float accelerometer_range_m_s2; /**< Accelerometer measurement range in m/s^2 */
- int16_t gyro_raw[3]; /**< Raw sensor values of angular velocity LOGME */
- uint16_t gyro_raw_counter; /**< Number of raw measurments taken LOGME */
- float gyro_rad_s[3]; /**< Angular velocity in radian per seconds LOGME */
- int16_t accelerometer_raw[3]; /**< Raw acceleration in NED body frame LOGME */
- uint16_t accelerometer_raw_counter; /**< Number of raw acc measurements taken LOGME */
- float accelerometer_m_s2[3]; /**< Acceleration in NED body frame, in m/s^2 LOGME */
- int16_t magnetometer_raw[3]; /**< Raw magnetic field in NED body frame LOGME */
- float magnetometer_ga[3]; /**< Magnetic field in NED body frame, in Gauss LOGME */
- uint16_t magnetometer_raw_counter; /**< Number of raw mag measurements taken LOGME */
- float baro_pres_mbar; /**< Barometric pressure, already temp. comp. LOGME */
- float baro_alt_meter; /**< Altitude, already temp. comp. LOGME */
- float baro_temp_celcius; /**< Temperature in degrees celsius LOGME */
- float battery_voltage_v; /**< Battery voltage in volts, filtered LOGME */
- float adc_voltage_v[3]; /**< ADC voltages of ADC Chan 11/12/13 or -1 LOGME */
- uint16_t baro_raw_counter; /**< Number of raw baro measurements taken LOGME */
- uint16_t battery_voltage_counter; /**< Number of voltage measurements taken LOGME */
- bool battery_voltage_valid; /**< True if battery voltage can be measured LOGME */
+ int16_t magnetometer_raw[3]; /**< Raw magnetic field in NED body frame LOGME */
+ float magnetometer_ga[3]; /**< Magnetic field in NED body frame, in Gauss LOGME */
+ int magnetometer_mode; /**< Magnetometer measurement mode */
+ float magnetometer_range_ga; /**< ± measurement range in Gauss */
+ float magnetometer_cuttoff_freq_hz; /**< Internal analog low pass frequency of sensor */
+ uint16_t magnetometer_raw_counter; /**< Number of raw mag measurements taken LOGME */
+
+ float baro_pres_mbar; /**< Barometric pressure, already temp. comp. LOGME */
+ float baro_alt_meter; /**< Altitude, already temp. comp. LOGME */
+ float baro_temp_celcius; /**< Temperature in degrees celsius LOGME */
+ float battery_voltage_v; /**< Battery voltage in volts, filtered LOGME */
+ float adc_voltage_v[3]; /**< ADC voltages of ADC Chan 11/12/13 or -1 LOGME */
+ uint16_t baro_raw_counter; /**< Number of raw baro measurements taken LOGME */
+ uint16_t battery_voltage_counter; /**< Number of voltage measurements taken LOGME */
+ bool battery_voltage_valid; /**< True if battery voltage can be measured LOGME */
};