Commit Graph

29 Commits

Author SHA1 Message Date
Peter Barker 3a347d32ca AP_RangeFinder: allow rangefinder backends to be individually compiled in 2022-06-21 09:15:20 +10:00
murata 5728d2fd7c AP_RangeFinder: Console output can be disabled 2022-05-17 09:53:06 +10:00
Sebastian Quilter 0f7c3e3964 AP_RangeFinder: make rangefinder ranges m rather than cm 2021-10-21 21:28:53 +11:00
Randy Mackay 5912052a39 AP_RangeFinder: lightware legacy I2C retry count to 20
This is consistent with the non-legacy I2C protocol
2021-03-17 21:23:14 +09:00
Brent McLaughlin e241433c89 AP_Rangefinder: change lightware lost signal timer to 20
The LightWare lost signal timer is set to 20 by the manufacturer.
2020-12-01 10:34:54 +11:00
Andrew Tridgell 8d5c51748f AP_RangeFinder: fixed legacy parsing of 65436 for lightware i2c
some lidars will probe as legacy protocol and return 65436 as range
2020-07-30 11:25:05 +10:00
Andrew Tridgell 2dcf8a3b08 AP_RangeFinder: cope with beyond max range with LightwareI2C 2020-06-02 08:49:38 +09:00
Peter Barker 6febbcdc13 AP_RangeFinder: remove incorrect and misleading comment
Wrong on several counts.  detect calls this method.  The constructor
doesn't initialise the rangefinder.  detect doesn't return boolean.
2020-02-12 21:18:47 +11:00
Peter Barker 82db4383d4 AP_RangeFinder: use enum-class for Status 2019-11-09 08:01:53 +11:00
Andrew Tridgell 54b9524c0b AP_RangeFinder: make LightWare I2C native work with more hw versions
this allows the native i2c lightware driver to work with a wide range
of lidars from LightWare, removing the specific version check, and the
version specific config commands
2019-09-12 07:40:32 +10:00
Andrew Tridgell 172c802ffa AP_RangeFinder: support native I2C protocol on LightWare Lidars
this supports both the native and the legacy I2C protocol for
LightWare Lidars. The native protocol is a string based protocol that
is enabled by default on new Lidars. By supporting both protocols we
avoid the need for users to re-configure their new lidar using a
serial cable before using it on I2C.

This driver was originally written by Mitch Koch and Jonathan
Challinger, and ported to master by me (it required only minor
changes)
2019-09-02 07:20:22 +10:00
Dmitri Ranfft 5eff01a86f RangeFinder: allow up to 10 range finders to be used at once 2019-02-04 11:08:47 +09:00
Randy Mackay 82a28dc0fc AP_RangeFinder: check I2C dev during detect 2018-10-26 13:33:27 +09:00
Randy Mackay 1b0f0a7559 AP_RangeFinder: support last_reading_ms
Benewake, LeddarOne, LightWareSerial, MAVLink, MaxsonarI2CXL, MaxsonarSerialLV, NMEA, PX4_PWM, uLanding and Wasp already stored the last read time so for these drivers, this change just moves that storage to the state structure
analog, BBB_PRU, Bebop, LightWareI2C, PulsedLightLRF, TeraRangerI2C, VL53L0X did not store the last read time so this was added
2018-08-28 09:23:38 +09:00
Peter Barker 30c4ea8123 AP_RangeFinder: stop storing sensor type as a variable
And change method name
2017-08-15 18:58:16 +01:00
Peter Barker 0b1c67d170 AP_RangeFinder: remove unused parameters from detect and constructors 2017-08-09 13:58:53 +01:00
Peter Barker 08cd3f4a77 AP_RangeFinder: move instance parameters into instance state 2017-08-09 13:58:53 +01:00
Pierre Kancir 8b38bd2e33 AP_RangeFinder: add sensor type to backend 2017-06-08 01:22:07 +01:00
murata d9dbf6e1eb AP_OpticalFlow: Change from magic number 0 to definition name. 2017-02-18 14:12:36 +00:00
Lucas De Marchi 5472bc4de1 Global: change Device::PeriodicCb signature
Remove bool return as it's never being used and not supported on PX4.
2017-01-14 10:03:54 +11:00
Jonathan Challinger 6e47bed97d AP_RangeFinder: fix hard fault with LightWareI2C 2016-12-07 07:52:38 +11:00
Andrew Tridgell 0b27478d7b AP_RangeFinder: use thread per bus for LightWareI2C driver 2016-11-09 17:07:55 +11:00
Mathieu OTHACEHE 152edf7189 Global: remove mode line from headers
Using a global .dir-locals.el file is a better alternative than
reincluding the same emacs header in every file of the project.
2016-10-24 09:42:01 -02:00
Jonathan Challinger 4dfb277683 AP_RangeFinder: fix LightwareI2C conversion to I2CDevice 2016-07-26 00:52:54 -03:00
Lucas De Marchi ae259bc563 AP_RangeFinder: LightWareI2C: allow detect method to fail
If bus isn't found, allow the detect() method to fail.
2016-07-22 13:18:37 -03:00
Lucas De Marchi 0193517f30 AP_RangeFinder: LightWareI2C: use be16toh
While at it remove some trailing whitespaces and little reformats.
2016-07-22 13:18:36 -03:00
Murilo Belluzzo 66fdfbb850 AP_RangeFinder_LightWareI2C: Fix driver after I2CDevice conversion
* Fix semaphore not being released in ::get_reading
* Simplify semaphore releasing logic
* Fix typo
2016-07-22 13:18:36 -03:00
Luiz Ywata 49d1520850 AP_RangeFinder: LightWareI2C: use I2CDevice interface 2016-07-22 13:18:36 -03:00
Andrew Tridgell dff235dc36 AP_RangeFinder: support LightWare I2C laser rangefinders
this has been tested with the SF10/C
2015-09-01 21:09:12 +10:00