Commit Graph
57 Commits
Author SHA1 Message Date
Lorenz Meier f4ac204f46 Cranking up bus speeds for all sensors to achievable 10.4 MHz, will cut the bus lock time to half 2013-12-15 18:32:46 +01:00
Andrew Tridgell acd0a70dca lsm303d: close fds before exit 2013-12-10 12:06:25 +01:00
Andrew Tridgell 02e7f7fa85 lsm303d: use register_class_devname() 2013-12-10 12:06:02 +01:00
Andrew Tridgell f24479c27a lsm303d: dump I2C control registers in regdump 2013-12-10 12:05:29 +01:00
Lorenz Meier 1fb406ba09 Add also default descriptor for alternate sensors 2013-12-10 12:05:21 +01:00
Lorenz Meier 3d27dd7246 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-10 12:05:14 +01:00
Andrew Tridgell 30ff61fa90 lsm303d: use DRDY pins to automatically reschedule measurements
this prevents double reads of sensor data, and missing samples from
the accel
2013-12-10 12:04:46 +01:00
Andrew Tridgell 24a243843e lsm303d/l3gd20: change filters to 50Hz analog on-chip filters
after discussion with Leonard these analog on-chip filters should be
at 50Hz
2013-12-10 12:04:13 +01:00
Andrew Tridgell f0e50fc87a lsm303d: init filter to 773 Hz 2013-12-10 12:03:58 +01:00
Andrew Tridgell 2de588e861 lsm303d: changed tones for accel fail to 3 tones
distinct tones for init fail, post-boot fail and recovery
2013-12-10 12:00:55 +01:00
Andrew Tridgell c46ab017e1 lsm303d: make log distinctive with i2c disable included 2013-12-10 12:00:46 +01:00
Andrew Tridgell 032c450d15 lsm303d: cleanup logic traces by pre-zeroing all transfers 2013-12-10 12:00:17 +01:00
Andrew Tridgell a2b31118cb lsm303d: get cleaner logic traces by gathering all regs more regularly 2013-12-10 12:00:08 +01:00
Andrew Tridgell 7c9d92a5d6 lsm303d: added I2C disable based on method from ST engineering support 2013-12-10 12:00:02 +01:00
Andrew Tridgell fe4b95f9d5 lsm303d: zero-fill register reads 2013-12-10 11:59:13 +01:00
Andrew Tridgell ea33a19c8f lsm303d: show regs at both high and low bus speed on error 2013-12-10 11:59:06 +01:00
Andrew Tridgell 4ce4b8a174 lsm303d: always log first ARB and REG values 2013-12-10 11:59:00 +01:00
Andrew Tridgell 5ef91d694b lsm303d: log mag regs too 2013-12-10 11:58:53 +01:00
Andrew Tridgell 671447ce2c lsm303d: fixed TEMP_H register define 2013-12-10 11:58:45 +01:00
Andrew Tridgell cdaafff6e4 lsm303d: added detailed logging of accels on extremes
this will log accel values and registers to /fs/microsd/lsm303d.log if
any extreme values are seen
2013-12-10 11:58:39 +01:00
Andrew Tridgell 415417196b lsm303d: print more registers in "lsm303d regdump" 2013-12-10 11:58:08 +01:00
Andrew Tridgell af049f7cf8 lsm303d: define some more register addresses 2013-12-10 11:58:01 +01:00
Andrew Tridgell 93f3398dfe lsm303d: added 'lsm303d regdump' command
useful for diagnosing issues
2013-12-10 11:57:54 +01:00
Andrew Tridgell 52ee477137 lsm303d: try to reset the lsm303d if it goes bad in flight
this is based on earlier work by Julian Oes
2013-10-28 13:10:52 +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
Lorenz Meier 11530ac021 Merge remote-tracking branch 'origin/spi-device-locking' into fat-dma-spi 2013-09-13 09:56:01 +02:00
px4dev 19fdaf2009 Use the generic device::SPI locking strategy. 2013-09-12 23:56:53 -07:00
Lorenz Meier d84fe2913e Move IRQ restore to right position 2013-09-13 01:34:49 +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 4b4f4fee5b lsm303d: convert to using RingBuffer 2013-09-12 00:52:53 +02:00
Lorenz Meier 3a326cb467 Guard probe / reset against other SPI drivers 2013-09-11 22:16:29 +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
Lorenz Meier fab110d21f Moved math library to library dir, improved sensor-level HIL, cleaned up geo / conversion libs 2013-08-21 18:13:01 +02:00
Julian Oes 1ede95d252 L3GD20 and LSM303D reset and range config working properly now 2013-08-21 14:21:54 +02:00
Julian Oes fc24037b03 Changed range handling of LSM303D once again, added defines for default values 2013-08-21 12:37:06 +02:00
Julian Oes 408b29ba61 Don't store m/s^2 and G at the same time 2013-08-21 08:40:51 +02:00
Julian Oes f5c92314f1 Improved LSM303D driver, plus some fixes to the HMC5883 2013-08-20 20:02:06 +02:00
Julian Oes 408eaf0ad1 Add ioctl to find out if mag is external or onboard 2013-08-18 09:24:27 +02:00
Lorenz Meier cbb5ce8f59 Fixed startup behavior for PX4 autostart 2013-08-11 16:54:00 +02:00
Lorenz Meier ca9a11a586 Indendation fixes 2013-08-05 23:09:02 +02:00
Andrew Tridgell 26204496b6 Merged LSM303D lowpass 2013-08-04 15:49:34 +02:00
Andrew Tridgell 686edfefb8 Removed LSM303D filter 2013-08-04 15:47:35 +02:00
Lorenz Meier 9499e48a52 Fixed setting mag queue depth 2013-08-04 01:52:22 +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
Julian Oes 374d204b92 Enable BDU instead of CONT mode 2013-07-18 19:48:15 +02:00
Julian Oes e309b9ab4a Disable IIR filter for now 2013-07-18 19:45:44 +02:00
Julian Oes da152e148d Added iirFilter to LSM303D 2013-07-18 16:15:43 +02:00
Julian Oes f4df4a4e08 Forgot to add current samplerate to constructor 2013-07-18 15:30:39 +02:00