Lucas De Marchi
4be9b4171b
AP_RangeFinder: TFMiniPlus: respect max configured via param
...
Do like other drivers do and cap the maximum reported value with what is
configured in the parameter.
2020-11-11 19:23:41 +11:00
Lucas De Marchi
0e63a833e9
AP_RangeFinder: TFMiniPlus: fix out-of-range returned a no-data
...
Other drivers consider that they received data even if the value is
reported as "out of range" by sensor. On the I2C driver for TFMiniPlus
we considered this case, too. However when the signal strength is very
low (and thus the distance would likely be out of range), we would end up
ignoring the new sample. With enough samples without any value this
would lead the status to turn to "NoData".
2020-11-11 19:23:41 +11:00
Peter Barker
914316a529
AP_RangeFinder: remove unused variables
2020-10-01 21:13:20 +10:00
Peter Barker
dd8361ba33
AP_RangeFinder: remove default case from Rangefinder init switch
...
Allows the compiler to help the programmer fill in required code
2020-09-10 20:52:06 +10:00
yaapu
bc21e505e3
AP_RangeFinder: aligned msp message data struct name to gps,baro and mag
2020-09-09 06:35:50 +10:00
Peter Barker
72b49efc78
AP_RangeFinder: create and use new AP_HAL::PWMSource object
2020-09-08 16:10:50 +10:00
Rajat Singhal
e9b3c54e6d
AP_Rangefinder: Add SITL option in param description
2020-09-02 17:25:43 +10:00
Andrew Tridgell
34430e9d6c
AP_RangeFinder: allow separate enable of MSP rangefinder
2020-09-02 05:56:46 +10:00
Andrew Tridgell
84f7589f2d
AP_RangeFinder: allow separate enable of MSP rangefinder
2020-09-02 05:56:46 +10:00
Andrew Tridgell
17173871a4
AP_RangeFinder: fixed non-MSP build
2020-09-02 05:56:46 +10:00
yaapu
699ffcbcd2
AP_RangeFinder: added support for MSP based range finders
2020-09-02 05:56:46 +10:00
Siddharth Purohit
6ef85dd7eb
AP_RangeFinder: use AP_CANManager library
2020-08-19 17:31:09 +10:00
Iampete1
e18c195df4
AP_RangeFinder: add SITL backend
2020-08-05 18:24:36 +10: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
Iampete1
2adbaf1a1d
AP_RangeFinder_NMEA: decode each sentence once
2020-07-29 17:40:03 +10:00
Randy Mackay
9c7f382392
AP_RangeFinder: remove unused set_rfnd_bit
2020-07-08 11:42:10 +09:00
Randy Mackay
613d2c2e0a
AP_RangeFinder: LightWareSerial gets small comment
2020-07-06 13:57:43 +09:00
murata
98feb06183
AP_RangeFinder: Add GYUS42v2 to the TYPE item
2020-07-05 08:52:03 +10:00
Peter Barker
6ec497229b
AP_RangeFinder: add serial support for GY-US42v2 rangefinder
2020-07-04 13:40:10 +10:00
Randy Mackay
429e70fb94
AP_RangeFinder: LightwareSerial uses nullptr for strtof
2020-07-01 13:00:48 +09:00
Randy Mackay
85c4db6896
AP_RangeFinder: LightwareSerial driver loses unnecessary initialisation
2020-07-01 13:00:48 +09:00
Randy Mackay
cdbc0c782b
AP_RangeFinder: add sf30d binary protocol support
...
Co-authored-by: Tatsuya Yamaguchi <susumu-336@hotmail.co.jp>
2020-07-01 13:00:48 +09:00
Tatsuya Yamaguchi
ed14518634
AP_RangeFinder: TYPE param becomes enable flag
2020-06-18 12:30:00 +10:00
Henry Wurzburg
f9b02a6814
AP_RangeFinder: HC-SR04: Add glitch filter
2020-06-02 09:58:53 +10:00
Peter Barker
fc1ea612b1
AP_RangeFinder: add support for HC-SR04 rangefinder
2020-06-02 09:58:53 +10:00
Andrew Tridgell
2dcf8a3b08
AP_RangeFinder: cope with beyond max range with LightwareI2C
2020-06-02 08:49:38 +09:00
Peter Barker
af80c4a29f
AP_RangeFinder: remove move-to-error-state for LeddarOne driver
...
Just because there's a lot in your input buffer doesn't necessarily mean
the rangefinder is faulty.
2020-05-26 09:20:32 +10:00
Peter Barker
95f9769041
AP_RangeFinder: use new UARTDriver discard_input method
2020-05-26 09:20:32 +10:00
Henry Wurzburg
23e7e2d193
AP_RangeFinder: rename Benewake types for easier identification
2020-05-21 08:45:30 +09:00
Andrew Tridgell
d16f31711e
AP_RangeFinder: fixed mixing UAVCAN and non-UAVCAN rangefinders
...
UAVCAN rangefinders add themselves to the frontend drivers as the
devices appear. If they turn up before RangeFinder::init() is run then
this prevented init() from scanning for the other rangefinders as
num_instances is non-zero
This also fixes a race condition in updating num_instances in the
UAVCAN backend
2020-05-12 09:45:15 +10:00
Andrew Tridgell
603e5c4b55
AP_RangeFinder: added get_address()
...
allows AP_Periph to supply sensor_id for multiple CAN rangefinders
2020-05-11 18:36:46 +10:00
Andrew Tridgell
ffe9fa22a1
AP_RangeFinder: invalidate param count when changing param tree structure
2020-04-29 07:36:55 +10:00
Andrew Tridgell
b102fd6b59
AP_RangeFinder: use GCS_SEND_TEXT()
2020-04-29 07:36:55 +10:00
Peter Barker
b7a03ae5ad
AP_RangeFinder: rename APMrover2 to Rover
2020-04-14 09:50:34 +09:00
Peter Barker
adcfb60850
AP_RangeFinder: comment out no-loner-used PX4 enum entry
2020-02-12 21:18:47 +11: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
Patrick José Pereira
a183d00b7e
AP_RangeFinder: BLPing: Rework class to work with new firmware version 3.28
...
- Uses the continuous message request
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2020-02-11 11:49:11 -05:00
Randy Mackay
7d8952a48a
AP_RangeFinder: fix offset param for PWM driver
2020-02-03 19:32:34 +09:00
Randy Mackay
52ca1e016e
AP_RangeFinder: minor fix in POS param description
2020-02-01 08:46:03 +09:00
Randy Mackay
9f3154372d
AP_RangeFinder: POS param range of 5m and 1cm increment
2020-02-01 08:46:03 +09:00
Michael du Breuil
7bc1f4ff9b
AP_RangeFinder: a to close reading is not the minimum distance
2020-01-28 11:32:19 +11:00
Andrew Tridgell
2fa6f534ab
AP_RangeFinder: added get_type() API
2020-01-26 09:12:55 +11:00
murata
b0af48745e
AP_RangeFinder: VL53L1X LONG can be specified
...
AP_RangeFinder: VL53L1X LONG can be specified
AP_RangeFinder: Add VL53L1X to device number 16
AP_RangeFinder: Add VL53L1X to device number 16
2020-01-24 13:46:35 -07:00
Randy Mackay
141099078c
AP_RangeFinder: increase leddarvu8 timeout to 0.5sec
2020-01-23 16:24:33 +11:00
Randy Mackay
f269004610
AP_RangeFinder: fix detect for LeddarVu8
...
Co-Authored-By: Peter Barker <pb-gh@barker.dropbear.id.au>
2020-01-23 16:24:33 +11:00
Randy Mackay
b068f15932
AP_RangeFinder: LeddarVu8 driver
2020-01-23 16:24:33 +11:00
Randy Mackay
e5c3a7f7b5
AP_RangeFinder: typo fix for LeddarOne
2020-01-23 16:24:33 +11:00
Randy Mackay
266a908b83
AP_RangeFinder: serial backend get_reading returns false
2020-01-23 16:24:33 +11:00
Randy Mackay
9ac10c3af9
AP_RangeFinder: remove virtual from _get_mav_distance_sensor_type
2020-01-23 16:24:33 +11:00
Andrew Tridgell
7dcb5c60b0
AP_RangeFinder: use take_blocking instead of HAL_SEMAPHORE_BLOCK_FOREVER
...
this makes for cleaner and smaller code as the failure case is not
needed
2020-01-19 20:19:30 +11:00
Randy Mackay
bcef478eab
AP_RangeFinder: update OFFSET param description to clarify only for analog and pwm
2020-01-18 14:15:20 +09:00
Randy Mackay
2bdb2f67ab
AP_RangeFinder: PWM driver adds offset param value
2020-01-18 14:15:20 +09:00
Michael du Breuil
d92c4dc892
AP_Rangefinder: Fix bad subgroup pointer for drivers
2020-01-15 12:13:44 +11:00
Rishabh
fd2c6baf5d
AP_RangeFinder: added RNGFNDx_TYPE parameter description for the Lanbao lidar
2020-01-13 20:34:48 +11:00
Michael du Breuil
8bd4f2b097
AP_RangeFinder: Allow the VL53L1X to be put into short range mode
2019-12-24 11:40:47 +11:00
Michael du Breuil
224ea744e3
AP_Rangefinder: Reset the VL53L1X before setup
...
A number of the config steps make the assumption they are running from
the sensors default power on state. If you do a soft reset of the
vehicle without killing power to the sensor this means the second time
you configure the sensor you will start from a state which didn't match
the base assumptions and can lead to the sensor preforming signficantly
differently then it was intended to. This issues a soft reset, and waits
for it to reboot before proceeding with configuration. If it's a
watchdog reset we don't want to spend long enough to have ensured the
sensor reset, so we say the sensor setup completely failed and don't use
it, as not using it will be less erroneous then using a misconfigured
sensor.
2019-12-24 11:40:47 +11:00
Randy Mackay
e12e0d95ae
AP_RangeFinder: remove param conversion for 3rd and 4th
...
3rd and 4th instances were not available to users unless they used their own builds which is rare
this reduces the firmware's flash size a small amount
2019-12-03 13:06:10 +08:00
Randy Mackay
1b84c8132e
AP_RangeFinder: param conversion fix
...
This resolves an issue with the parameter conversion when moving from Copter-3.6.x to 4.0 (and similar moves for other vehicle types)
2019-12-03 13:06:10 +08:00
Randy Mackay
0844077df8
AP_RangeFinder: TYPE param desc clarification for Benewake lidar
...
This renames some of the TYPE parameter's driver options:
19 :BenewakeTF02 is unchanged
20: BenewakeTFMini becomes BenewakeTFMini/Plus-Serial
25: BenewakeTFMiniPlus becomes BenewakeTFMini/Plus-I2C
27: BenewakeTF03 is unchanged
2019-11-13 10:28:17 +08:00
Randy Mackay
ae8f9a70d0
AP_RangeFinder: update Type and Pin parameter values
...
The _TYPE change is to remove the "v2" from the LidarLite description because both v2 and v3 are supported
The _PIN change is to make it more clear that any of the auxiliary pwm pins can be used for PWM input
2019-11-12 07:30:55 +08:00
Peter Barker
35e987c663
AP_RangeFinder: adjust for renaming of RangeFinder files
2019-11-12 07:14:37 +08:00
Peter Barker
7c9ab0203d
AP_RangeFinder: rename source files to include AP_ prefix
...
This makes them look like most of our libraries
2019-11-12 07:14:37 +08:00
Peter Barker
b1f8982292
AP_RangeFinder: remove old AP_RangeFinder.h
...
Making way to move the actual header into place
2019-11-12 07:14:37 +08:00
Peter Barker
d0e62b0e0b
AP_RangeFinder: serial subclasses rely on base class for update()
2019-11-09 08:01:53 +11:00
Peter Barker
60cbefc1ae
AP_RangeFinder: move update function to serial base class
2019-11-09 08:01:53 +11:00
Peter Barker
b18f1a8e22
AP_RangeFinder: move uLanding to using common serial backend
2019-11-09 08:01:53 +11:00
Peter Barker
9829a1d08b
AP_RangeFinder: move wasp to using common serial backend
2019-11-09 08:01:53 +11:00
Peter Barker
62f2f3e19e
AP_RangeFinder: factor constructor, use to move Lanbao to serial baseclass
2019-11-09 08:01:53 +11:00
Peter Barker
acc1f955ef
AP_RangeFinder: make Benewake backend use new intermediate class
2019-11-09 08:01:53 +11:00
Peter Barker
0246dd990e
AP_RangeFinder: make MaxsonarSerialLV backend use new intermediate class
2019-11-09 08:01:53 +11:00
Peter Barker
ff7c5af437
AP_RangeFinder: make LeddarOne backend use new intermediate class
2019-11-09 08:01:53 +11:00
Peter Barker
15d3a59d67
AP_RangeFinder: make NMEA backend use new intermediate class
2019-11-09 08:01:53 +11:00
Peter Barker
82268ab12c
AP_RangeFinder: make BLPing backend use new intermediate class
2019-11-09 08:01:53 +11:00
Peter Barker
692c89a972
AP_RangeFinder: make LightWareSerial backend use new intermediate class
2019-11-09 08:01:53 +11:00
Peter Barker
3538fe360b
AP_RangeFinder: add intermediate serial backend class to share common code
2019-11-09 08:01:53 +11:00
Peter Barker
82db4383d4
AP_RangeFinder: use enum-class for Status
2019-11-09 08:01:53 +11:00
Peter Barker
1989decbc1
AP_RangeFinder: use enum-class for RangeFinder function
2019-11-09 08:01:53 +11:00
Peter Barker
db36ef3433
Sub: use enum-class for RangeFinder type
2019-11-09 08:01:53 +11:00
Peter Barker
ea26e94f66
AP_RangeFinder: use enum-class for RangeFinder type
2019-11-09 08:01:53 +11:00
Andrew Tridgell
76dd2f0838
AP_RangeFinder: fixed failover between rangefinders
...
this fixes the case where we have one rangefinder that can handle
short range and another that is good for long range but no good for
short range (quite common, eg radar and lidar)
If possible we want to use the first rangefinder that is in range for
the right orientation. If none are in range then use the first for the
orientation
2019-10-28 21:13:18 +11:00
Andrew Tridgell
5898dc757c
AP_RangeFinder: use single precision string to float
2019-10-28 15:53:16 +11:00
Andrew Tridgell
2818151a39
AP_RangeFinder: disable some incompatible drivers for AP_Periph
2019-10-25 09:35:27 +11:00
Andrew Tridgell
ca1bd8be3c
AP_RangeFinder: disable logging for AP_Periph
2019-10-21 19:12:01 +11:00
Andrew Tridgell
282936eab2
AP_RangeFinder: allow for less rangefinder instances
...
for AP_Periph
2019-10-21 19:12:01 +11:00
murata
000aa4f515
AP_RangeFinder: Add TF03-180
2019-10-15 10:07:53 +09:00
Lucas De Marchi
7520cdef2f
AP_RangeFinder: update minimum fw version of TFMiniPlus
...
Version 2.0.3 has important fixes to avoid having the sensor to lock up.
Let's make sure we check for it and warn on console.
2019-09-23 12:56:13 +09:00
Lucas De Marchi
5f65033511
AP_RangeFinder: add missing overrides
2019-09-21 08:01:08 +10:00
Lucas De Marchi
ce877ba40a
AP_RangeFinder: fix build
2019-09-21 08:01:08 +10: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
Michael du Breuil
c12652b325
AP_Rangefinder: Remove stop pin usage
2019-09-04 09:54:50 +10:00
Andrew Tridgell
9c900c7176
AP_RangeFinder: added driver for Lanbao CM8JL65
2019-09-03 09:10:48 +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
murata
4754710e60
RangeFinder: Change to coding style (NFC)
...
RangeFinder: RangeFinder: Change to coding style (NFC)
2019-08-23 10:11:30 +09:00
murata
851ee24c99
AP_RangeFinder: Clarify the purpose of input registers
2019-08-20 14:36:29 +01:00
murata
0b1987ae36
AP_RangeFinder: Use common hexadecimal to character number conversion method
2019-08-06 10:14:12 +10:00
Randy Mackay
01a713a812
AP_RangeFinder: param desc rename from PX4-PWM to just PWM
...
the PWM driver is available for many boards
2019-08-04 21:15:49 +10:00
Andrew Tridgell
0f6b8375bb
AP_RangeFinder: added a 1.5 delay to probe of LW20 I2C
...
the LW20 takes a long time to boot and be ready to probe
2019-07-30 13:32:36 +10:00
Michael du Breuil
3202a2e0a6
AP_Rangefinder: Add arming checks
2019-07-30 10:42:16 +10:00
Randy Mackay
84b502b0c4
AP_RangeFinder: resolve gcs::send_text compiler warning
2019-07-30 09:02:39 +09:00
Randy Mackay
480a3ebb03
AP_RangeFinder: LightwareSerial driver handles invalid distances
...
reports the longer of 100m or RNGFNDx_MAX_CM+1m
2019-07-30 08:05:35 +09:00
Pierre Kancir
c4ec373b20
AP_RangeFinder: pass mavlink_message_t by const reference
2019-07-16 20:51:42 +10:00
Peter Barker
ac96461c6c
AP_RangeFinder: use AP_SerialManager singleton
2019-07-16 09:29:48 +10:00
murata
d7b2271197
AP_RangeFinder: Common modbus crc method
2019-07-12 15:33:21 +10:00
Pierre Kancir
209b0300a5
AP_Rangefinder: fix compilation for Bebop
2019-06-14 18:56:05 -07:00
Peter Barker
68d7e0c22f
AP_RangeFinder: correct macro being used for parameter definition
2019-06-11 12:47:56 +10:00
Peter Barker
8cd5e3103f
AP_RangeFinder: remove use of removed AP_PARAM_FLAG_IGNORE_ENABLE
2019-06-11 11:38:10 +09:00
Peter Barker
4c88a1e9de
AP_RangeFinder: remove dangling update_instance declaration
2019-06-04 19:36:57 +09:00
Tatsuya Yamaguchi
18a43601cd
RangeFinder: Add up to 10 RangeFinder logs
2019-06-04 19:11:11 +10:00
Lucas De Marchi
4f73881c4b
AP_RangeFinder: TFMiniPlus: enforce minimum version 1.7.6
...
On this version of the firmware the command changed - support the new
command and only that one: it's not expected to have devices with the
older versions.
2019-05-24 01:47:04 -07:00
Lucas De Marchi
b3a8496613
AP_RangeFinder: add support for Benewake TFMini Plus on I2C
...
This was tested with firmware 1.7.0 on the sensor.
2019-05-24 01:47:04 -07:00
alancaro2013
a1557184d5
AP_RangeFinder: Modified uLanding parse to check device version.
...
US-D1 version ID was changed to 2 from 0. This alteration will prevent
past US-D1s, with version ID 0, from being 3-byte parsed.
2019-05-22 08:20:42 +10:00
Peter Barker
93c33fda1d
RangeFinder: correct bad include of old semaphore library
2019-05-15 19:34:31 +09:00
Siddharth Purohit
479c238177
RangeFinder: add support for rangefinder sensor over can
2019-05-15 16:01:53 +09:00
Andrew Tridgell
09792d3056
AP_RangeFinder: removed unusued AP_Common/Semaphore.h
2019-05-15 15:33:48 +10:00
Michael du Breuil
85da4955b6
AP_Rangefinder: Enforce checking I2C status on VL53L1X
2019-05-05 12:12:05 -07:00
Michael du Breuil
b31cd1adb5
AP_RangeFinder: Remove pre arm distance check
2019-04-16 11:00:32 +09:00
Michael du Breuil
6dd05db3b7
AP_Rangefinder: Fix VL53L1X ignoring return status
2019-04-12 17:23:19 +10:00
murata
49b0a00182
AP_RangeFinder: Delete unnecessary judgment
2019-04-11 06:11:47 -07:00
Peter Barker
dd567ad18a
AP_RangeFinder: handle RFND logging
2019-04-09 22:17:58 +10:00
Adolfo
428d4d4574
AP_RangeFinder: fixed TeraRangerI2C refresh rate and status
2019-04-09 12:22:19 +10:00
Randy Mackay
5e9aebd678
AP_RangeFinder: BlueRobotics Ping driver
2019-04-08 09:43:41 +09:00
Randy Mackay
65966ac957
AP_RangeFinder: add LidarLitev3HP and PWM to TYPE param desc
2019-04-08 09:43:41 +09:00
Michael du Breuil
21b64ad19b
AP_Rangefinder: Remove parameter manipulation from initializer
2019-04-06 09:15:22 +11:00
Michael du Breuil
49d20d4b4f
AP_Rangefinder: Remove unused AP_Math header
2019-04-05 20:12:53 +11:00
Pierre Kancir
37d121ae02
AP_RangeFinder: remove useless includes
2019-03-26 10:27:54 +11:00
Andrew Tridgell
ccfaaca82b
AP_RangeFinder: fixed lightware serial with LW20 lidar
...
it needs a longer serial write to force it to serial mode from i2c
2019-02-23 11:01:07 +11:00
Peter Barker
b0c65b9014
AP_RangeFinder_PWM: correct integer division issue
2019-02-20 17:50:46 +11:00
Andrew Tridgell
bf4dc2d3b7
AP_RangeFinder: probe all I2C buses for rangefinders
...
we now have flight boards with up to 4 I2C buses, and probing only 2
of them causes user confusion
2019-02-12 13:07:24 +11:00
Randy Mackay
a72477590f
AP_RangeFinder: format fixes
2019-02-04 11:32:13 +09:00
Dmitri Ranfft
f8af5afc53
RangeFinder: Removed the 3 bit limitation for the enumeration
2019-02-04 11:08:50 +09:00
Dmitri Ranfft
5eff01a86f
RangeFinder: allow up to 10 range finders to be used at once
2019-02-04 11:08:47 +09:00
Peter Barker
d71244dd23
APM_RangeFinder: remove PX4 backend type
2019-01-17 12:30:56 +11:00
Peter Barker
f037629fc3
RangeFinder: understand stop pin for AP_RangeFinder_PWM backend
2019-01-10 16:28:14 +11:00
Julien Beraud
e165e9c323
AP_RangeFinder: fix bebop rangefinder
...
Fix Backend constructor call
2018-12-22 08:44:50 +09:00
Nghia Nguyen
60250e4c49
AP_Rangefinder: Add support for ST VL53L1X
2018-12-17 14:00:31 +09:00
Randy Mackay
fbf072d84b
AP_RangeFinder: add range to POS param description
2018-12-13 20:14:05 +09:00
Michael du Breuil
52d6353e33
AP_Rangefinder: Remove unused members
2018-11-27 07:36:17 +11:00
Randy Mackay
6816262e3d
AP_RangeFinder: benewake tfmini always provide cm distances
...
a misunderstanding of the datasheet led to the mistaken idea that while in short-range-mode the distances were returned in millimeters
2018-11-21 08:38:31 +09:00
Randy Mackay
f5a9fdaf42
RangeFinder: benewake buffer uses uint8_t
2018-11-19 11:33:48 +09:00
Randy Mackay
e9c1abfc3c
AP_RangeFinder: fix benewake checksum check
2018-11-15 09:18:45 +09:00
Randy Mackay
123e10c058
AP_RangeFinder: benewake returns at least 12m or 22m when out-of-range
...
value logged and shown to the user will be at least 12m for TFmini or 22m for TF02 which ensure the user won't see the range drop even if they have configured a very short useable distance
2018-11-15 09:18:45 +09:00
Randy Mackay
35be68348d
AP_RangeFinder: benewake logic reordering
...
this should be a non-functional change
2018-11-10 12:20:27 +09:00
Randy Mackay
a09cd8411d
AP_RangeFinder: benewake lidar returns max range + 1m when out-of-range
...
also returns out-of-range when signal is weak
2018-11-10 12:20:27 +09:00
Peter Barker
c2b334eaad
AP_RangeFinder: PWM: take an average of any readings accumulated in irq
2018-11-08 21:03:35 +11:00
Andrew Tridgell
76a2cd1540
AP_RangeFinder: set pin to input before attaching interrupt
...
this fixes input on AUX6 on CubeBlack
2018-11-08 18:25:14 +11:00
Peter Barker
94e0485bdf
AP_RangeFinder: add override keyword where required
2018-11-08 11:30:12 +11:00
Peter Barker
6e84a31613
AP_RangeFinder: use new ChibiOS driver if user attempts to use PX4 PWM driver
2018-11-07 08:59:19 +11:00
Peter Barker
186ce80827
AP_RangeFinder: add pwm backend
2018-11-07 08:59:19 +11:00
Randy Mackay
7fdd0bd996
AP_RangeFinder: Benewake driver discards distances over 327m
2018-11-06 11:58:32 +11:00
murata
c8f93a3ddc
RangeFinder: Added statement FALLTHROUGH
2018-10-30 09:13:29 +09:00
Nghia Nguyen
513eb1f5db
AP_Rangefinder: Add support for Garmin LidarLite-V3HP
2018-10-27 11:22:57 +01:00
Randy Mackay
82a28dc0fc
AP_RangeFinder: check I2C dev during detect
2018-10-26 13:33:27 +09:00
Andrew Tridgell
b1e4434332
AP_RangeFinder: use WITH_SEMAPHORE()
...
and removed usage of hal.util->new_semaphore()
2018-10-17 12:54:22 +11:00
Peter Barker
3be9f35264
AP_RangeFinder: remove rangefinder prearm requirements for SITL
...
Getting the virtual rangefinder to move in prearm would be better, much
much more involved.
2018-10-09 10:47:38 +11:00
Randy Mackay
3e8d9f4131
RangeFinder: shorten comment
2018-08-28 09:23:38 +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
Randy Mackay
9e27b93538
AP_RangeFinder: move some backend implementations to cpp file
2018-08-28 09:23:38 +09:00
Randy Mackay
9a7b378ddd
AP_RangeFinder: minor format change
...
lines up with parameter variables below
2018-08-28 09:23:38 +09:00
pierre-louis.k
e62ed19759
AP_RangeFinder: Remove range enforcement on out of range
2018-08-27 10:25:51 +09:00
pierre-louis.k
5577b8b33c
AP_RangeFinder: Rework function structure in TeraRanger driver
2018-08-27 10:25:49 +09:00
pierre-louis.k
b6f1647c31
AP_RangeFinder: Rename function in TeraRanger driver
2018-08-27 10:25:47 +09:00
pierre-louis.k
1b990c116d
AP_RangeFinder: Give back semaphore on whoami error
2018-08-27 10:25:45 +09:00
pierre-louis.k
4d45b68fa3
AP_RangeFinder: Clean TeraRanger driver
2018-08-27 10:25:43 +09:00
pierre-louis.k
d162afb790
AP_RangeFinder: Add error codes rejection for TeraRanger sensors
2018-08-27 10:25:41 +09:00
Michael du Breuil
f0a4059d73
AP_Rangefinder: Remove APM doc references
2018-08-01 09:24:26 +10:00
Andrew Tridgell
a8647f834e
AP_RangeFinder: fixed VL53L0X semaphore usage
2018-07-27 09:15:32 +10:00
Patrick José Pereira
32fa7e2c2a
AP_RangeFilter: Fix equality comparison with extraneous parentheses
...
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2018-06-27 14:59:33 -07:00
Michael du Breuil
fb99ea0446
AP_Rangefinder: Update WASP defaults
2018-06-01 15:08:35 +09:00
Randy Mackay
99cf279dff
AP_RangeFinder: remove unused definitions from MaxSonarI2C
2018-06-01 15:06:13 +09:00
Randy Mackay
98e87db274
AP_RangeFinder: MaxsonarI2C reports no data after 300ms
2018-06-01 15:04:40 +09:00
Randy Mackay
e520d4fe42
AP_RangeFinder: Benewake TF02 and TFmini lidar driver
2018-05-30 11:16:35 +09:00
Michael du Breuil
b2d8f6e788
AP_Rangefinder: Fix bad fallthrough from NMEA driver
2018-05-29 00:10:40 +01:00
Andrew Tridgell
08228efc72
AP_Rangefinder: fixed param docs for Wasp backend
2018-05-28 11:44:29 +01:00
Andrew Tridgell
3b8d5ea4cf
AP_Rangefinder: fixed param handling for Wasp backends
2018-05-28 11:44:29 +01:00
Michael du Breuil
b678302aed
AP_Rangefinder: Add WASP 200 LRF backend
2018-05-28 11:44:29 +01:00
Randy Mackay
85efab1ec8
AP_RangeFinder: reduce MaxsonarI2C update to 10hz
2018-05-24 13:37:03 +09:00
Randy Mackay
fd2e5741ce
AP_RangeFinder: MaxsonarI2C formatting fixes
2018-05-24 13:37:00 +09:00
Randy Mackay
3f749051d3
AP_RangeFinder: NMEA sonar driver
2018-05-24 12:46:38 +09:00
Michael du Breuil
7d6c3ec683
AP_RangeFinder: Make singleton
2018-05-16 23:21:41 +01:00
Michael du Breuil
9e551350a4
AP_RangeFinder: Remove unneeded state member
2018-05-16 23:21:41 +01:00
Dmitri Ranfft
8fa281fa5b
RangeFinder: fixed a crash when VL53L0X was enabled in the software but not connected.
2018-05-07 11:47:39 +10:00
Peter Barker
c627ed6ae3
RangeFinder: remove divide-by-zero possibility
2018-03-31 16:14:09 +09:00
Francisco Ferreira
146143ff2e
AP_Rangefinder: adapt to new serial manager enum name
...
Lidar is now called Rangefinder
2018-02-28 08:04:16 +09:00
Francisco Ferreira
45531775cd
AP_Rangefinder: support multiple serial rangefinders
2018-02-28 08:04:16 +09:00
Francisco Ferreira
5999421c72
AP_RangeFinder: uLanding now uses the Lidar protocol
...
uLanding was using a specific protocol in serial manager, but that's not needed and would break following work
As previously, baudrate is hardcoded
2018-02-28 08:04:16 +09:00
LukeMike
721f55e93c
VRBRAIN / AP_RangeFinder: removed AP_RangeFinder_PX4_PWM for VR Brain boards
2018-02-05 08:26:49 +11:00
Pierre Kancir
6728598099
AP_Rangefinder: don't include Bebop rangefinder by default
2017-12-21 04:13:09 +00:00
Andrew Tridgell
ffced7d591
AP_RangeFinder: removed create() method for objects
...
See discussion here:
https://github.com/ArduPilot/ardupilot/issues/7331
we were getting some uninitialised variables. While it only showed up in
AP_SbusOut, it means we can't be sure it won't happen on other objects,
so safest to remove the approach
Thanks to assistance from Lucas, Peter and Francisco
2017-12-14 08:12:28 +11:00
Francisco Ferreira
02586b0a2e
AP_Rangefinder: search buses 0 and 1 for Maxbotix I2C driver
2017-10-09 11:57:02 +01:00
Francisco Ferreira
bb46eaedaa
AP_Rangefinder: look in buses 0/1 when Lightware I2C bus isn't defined
2017-10-09 11:57:02 +01:00
Lucas De Marchi
72fd2d6f05
global: use static method to construct AP_SerialManager
2017-09-26 03:01:21 +01:00
Lucas De Marchi
9027a55696
global: use static method to construct RangeFinder
2017-09-26 03:01:21 +01:00
Lucas De Marchi
2e80b2e1d0
AP_RangeFinder: add static create method
2017-09-26 03:01:21 +01:00
davidaroyer
cb270a9acf
AP_RangeFinder: cleanup variable names in uLanding driver
2017-09-22 18:08:27 +01:00
davidaroyer
8284fb1093
AP_RangeFinder: update uLanding driver for new firmware data format
2017-09-22 18:08:27 +01:00
Lucas De Marchi
7b0d6166e1
AP_RangeFinder: use FALLTHROUGH define
...
When falling through on a case switch, allow to add an empty statement
with the correct attribute to tell the compiler this behavior is
intended.
2017-08-22 23:59:13 -07:00
Mateusz Sadowski
eb56a010b3
AP_RangeFinder: TeraRangerI2C: use address from parameter instead of hardcoded
2017-08-15 19:42:10 +01:00
Mateusz Sadowski
0993300506
AP_Rangefinder: rename trone to TeraRangerI2C
2017-08-15 19:27:49 +01: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
c0aa10d84b
AP_RangeFinder: move rangefinder backend data accessors to backend
2017-08-15 18:30:45 +01:00