Lorenz Meier
ea0a59f806
HMC5883: Reduce output, add indices to make back-tracking lines easier, remove output completely for an OK-operation (the driver is NOT the right place to talk to the user!)
2014-11-10 09:26:11 +01:00
muharred
690843c53a
Reset excitement mode for hmc5883 sensor before applying a new one to avoid getting reserved 11 bits set in case of a set_excitement(1) call following a set_excitement(-1) call.
2014-08-20 13:06:39 +03:00
Lorenz Meier
c5e4f33bb3
Merge sensor_startup_cleanup
2014-07-16 15:26:22 +02:00
Lorenz Meier
11eeb7466d
Merge branch 'ext_mag_param' into logging
2014-07-16 15:00:58 +02:00
Lorenz Meier
0c5ce3d3a2
Hotfix: Allow the HMC5883 driver to continue to operate in auto mode
2014-07-16 13:42:47 +02:00
Lorenz Meier
e68200b4ba
HMC driver: Full initialization
2014-07-16 08:53:47 +02:00
Lorenz Meier
f89573a6ed
HMC5883 driver: stack size adjustments of start handler and start return review / comments
2014-07-16 07:51:24 +02:00
Lorenz Meier
5ef4e08c58
hmc5883: Support for three sensors
2014-07-15 23:14:30 +02:00
Lorenz Meier
f02ddc3326
Do not initialize variable if value is never read
2014-07-15 22:08:40 +02:00
Lorenz Meier
e696ed5509
Merged master
2014-07-15 22:07:03 +02:00
Andrew Tridgell
005dd206d1
hmc5883: periodically check the config and range registers
...
this copes with I2C comms errors causing the range or config registers
to become corrupted, leading to bad reading. This is easily
reproducible with a 1.3m I2C cable in the same run of cable as a GPS
UART cable. The error happens every half hour or so.
Conflicts:
mavlink/include/mavlink/v1.0
src/drivers/hmc5883/hmc5883.cpp
2014-07-12 19:04:25 +02:00
Andrew Tridgell
30a6a3d0b6
hmc5883: setup device type
2014-07-12 16:25:57 +02:00
Lorenz Meier
a6b52f1c9f
HMC5883 post merge cleanup
2014-07-08 13:49:24 +02:00
Andrew Tridgell
1c6ea06790
hmc5883: fixed build warnings
2014-07-08 12:03:02 +02:00
Andrew Tridgell
dfee93f3b1
hmc5883: fixed driver startup when trying both buses
2014-07-08 12:02:53 +02:00
Andrew Tridgell
5e62ae7a9e
hmc5883: added -C option to calibrate on startup
...
Conflicts:
src/drivers/hmc5883/hmc5883.cpp
2014-07-08 12:01:50 +02:00
Andrew Tridgell
d952e81ab7
added support for two instances of hmc5883 driver
2014-07-08 12:00:20 +02:00
Andrew Tridgell
d2487e7718
hmc5883: added support for -R rotation option
2014-07-08 11:57:02 +02:00
Don Gagne
92adbe9216
Fix compiler warnings
2014-06-29 17:47:24 -07:00
Lorenz Meier
dc2df309cb
Introduce HMC5883 multi-device support
2014-06-10 15:05:50 +02:00
Lorenz Meier
be6b9a1b36
hmc5883: Change static topic publication to the class member it should be, initialize collect phase (linter find)
2014-05-13 08:05:36 +02:00
Lorenz Meier
071f9c648b
HMC5883: Do not spam the console on error and make everything worse.
2014-04-20 21:42:10 +02:00
Andrew Tridgell
30d1ce3a51
hmc5883: properly reset mag to normal state on calibration fail
...
and add current output in "hmc5883 info"
2014-04-05 12:11:52 +02:00
Lorenz Meier
773f70a9df
Merged origin/master into pubsub_cleanup
2014-02-09 16:04:32 +01:00
Andrew Tridgell
dda50c62bf
hmc5883: much faster calibration code with bug fixes
...
this fixes two bugs in "hmc5883 calibrate" and also makes it much
faster, so it can be run on every boot. It now uses the correct 2.5Ga
range when calibrating, and fixes the expected values for X/Y/Z axes
The basic calibration approach is similar to the APM2 driver, waiting
for 10 good samples after discarding some initial samples. That allows
the calibration to run fast enough that it can be done on every boot
without causing too much boot delay.
2014-01-23 21:40:29 +01:00
Lorenz Meier
28a3dc726f
Support for publication blocking: HMC5883
2014-01-12 11:53:56 +01:00
Andrew Tridgell
5ee41bc083
hmc5883: use register_class_devname()
2013-12-10 11:37:59 +01:00
Lorenz Meier
7becbcdbd5
Made all usual suspects default to their custom names and only register the default name if its not already taken by someone else
2013-12-07 10:34:32 +01:00
Lorenz Meier
90c4664dce
Merged status changes
2013-10-06 14:17:37 +02:00
Lorenz Meier
24648b5294
Minor cleanups in the drivers
2013-09-13 10:16:32 +02:00
Andrew Tridgell
4893509344
drivers: report error_count in drivers where possible
2013-09-12 09:26:49 +02:00
px4dev
cefc7ac00e
Rework the ringbuffer class so that it's not templated, and refactor its clients so they aren't dancing around the linker anymore.
2013-09-12 00:53:08 +02:00
Andrew Tridgell
3c45261117
hmc5883: use a RingBuffer to hold report queue
...
this simplifies the queue handling, and avoids the need for a
start()/stop() on queue resize
2013-09-12 00:51:41 +02:00
Andrew Tridgell
04f8e338b6
hmc5883: add perf count, and removed unnecessary checks for -32768
...
we've already checked that the absolute value is <= 2048
2013-09-12 00:51:13 +02:00
Lorenz Meier
98ac914cb0
Add setting queue depth to HMC test
2013-09-08 22:07:33 +02:00
Julian Oes
e8c309fb14
Workaround to prevent crash during mag calibration
2013-09-05 15:57:09 +02:00
Andrew Tridgell
fdbc09e2a5
avoid counters going above limit in INCREMENT()
...
when using INCREMENT() the counter would temporarily read equal to
limit, which could cause an issue if the task is preempted.
(this macro should be in a common header, though which header?)
2013-08-28 11:16:30 +02:00
Andrew Tridgell
ad732ee3a1
free perf counters in driver destructor
...
this prevents drivers that probe on one bus then instantiate on
another from leaving behind stale/duplicate perf counters
2013-08-28 11:15:43 +02:00
Julian Oes
3875df2fe0
Workaround to get the HMC5883 default rate right
2013-08-21 10:44:47 +02:00
Julian Oes
658276e1cc
Add reset and samplerate ioctl to HMC5883 driver
2013-08-21 09:23:21 +02:00
Julian Oes
f5c92314f1
Improved LSM303D driver, plus some fixes to the HMC5883
2013-08-20 20:02:06 +02:00
Julian Oes
307c9e52c7
Sorry, finally got the axes of the external mag right
2013-08-20 20:00:16 +02:00
Julian Oes
12df5dd269
Corrected orientation of external mag
2013-08-19 16:32:56 +02:00
Julian Oes
408eaf0ad1
Add ioctl to find out if mag is external or onboard
2013-08-18 09:24:27 +02:00
px4dev
9d6ec6b365
Restructure things so that the PX4 configs move out of the NuttX tree, and most of the PX4-specific board configuration data moves out of the config and into the board driver.
...
Rename some directories that got left behind in the great board renaming.
2013-08-02 22:34:55 -07:00
Lorenz Meier
8d1abf4aa4
Lunchtime HOTFIX: Bring back USB console to operational, allow single-USB connection operation via QGC
2013-07-18 13:16:34 +02:00
Lorenz Meier
27ee36b204
Hotfix: Completely silencing HMC5883 probing to not confuse users
2013-05-28 07:18:07 +02:00
Lorenz Meier
f1a8f6e75b
Hotfix: Made HMC driver more verbose to prevent false alarm
2013-05-27 16:58:30 +02:00
Andrew Tridgell
d0122dccfc
hmc5883: fixed use of onboard I2C compass
2013-05-04 18:44:37 +10:00
Lorenz Meier
8040b9b96e
Allowed for onboard bus to be not present
2013-04-27 19:51:06 +02:00