Commit Graph

395 Commits

Author SHA1 Message Date
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
Peter Barker 127edce39e AP_RangeFinder: move prearm checks into backend 2017-08-09 13:58:53 +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 ccbf281137 AP_RangeFinder: allow to set rangefinder type for mavlink 2017-06-22 16:17:58 +01:00
Francisco Ferreira a960c6526c
AP_Rangefinder: set type for VL53L0X 2017-06-08 01:32:11 +01:00
Pierre Kancir 8b38bd2e33 AP_RangeFinder: add sensor type to backend 2017-06-08 01:22:07 +01:00
Andrew Tridgell b29db0aa5b AP_RangeFinder: implement VL53L0X rangefinder 2017-06-07 23:05:01 +01:00
Dr.-Ing. Amilcar Do Carmo Lucas 78b7207ab4 AP_RangeFinder: Use SI units conventions in parameter units
Follow the rules from:
http://physics.nist.gov/cuu/Units/units.html
http://physics.nist.gov/cuu/Units/outside.html
and
http://physics.nist.gov/cuu/Units/checklist.html
one further constrain is that only printable (7bit) ASCII characters are allowed
2017-05-17 18:07:25 +10:00
murata 46cba2c970 libraries: Delete the setting value for specific editor. 2017-05-11 13:18:41 -07:00
Pierre Kancir 4a2b90b707 AP_Rangefinder: example fix travis warning
missing function declaration
implicit cast
some style fix
2017-04-13 19:56:16 +01:00
Grant Morphett 792bf70c40 RangeFinder: Fixed the value labels for LidarLite
LidarLiteV2 ---> LidarLiteV2-I2C
LidarLiteV3 ---> LidarLiteV3-I2C
2017-04-11 20:54:19 +09:00
Lucas De Marchi b17acfee12 Add aerofc support
Flight Controller board that comes on Intel Aero RTF Drone.
2017-03-24 12:06:19 +11:00
Andrew Tridgell 05cbc19ad6 AP_RangeFinder: added type 15 for LidareLiteV3 2017-03-01 22:44:37 +11:00
Randy Mackay c98e598ae2 AP_RangeFinder: fix example sketch 2017-02-27 15:18:08 +09:00
Randy Mackay e7dd21a0bb AP_RangeFinder: remove primary, add orientation 2017-02-27 15:18:03 +09:00
Andrew Tridgell df1da3c14e AP_RangeFinder: setup for split I2C transfers
this fixes PulsedLight Lidar on Linux
2017-02-23 22:38:15 -08:00
Jacob Walser d3442ae16b AP_RangeFinder: Bugfix for mavlink rangefinders to include out of range low/high 2017-02-21 11:26:14 +11:00
murata d9dbf6e1eb AP_OpticalFlow: Change from magic number 0 to definition name. 2017-02-18 14:12:36 +00:00
priseborough bf51da224a AP_RangeFinder: Update min value for RNGFND_GNDCLEAR parameter 2017-02-15 07:04:38 +09:00
murata 17c62ffe4c AP_RangeFinder: Unify from print or println to printf. 2017-01-27 18:20:22 +11:00
Andrew Tridgell 848c03650b AP_RangeFinder: removed old PX4 rangefinder drivers 2017-01-27 18:12:20 +11:00
Andrew Tridgell 3b42289475 AP_RangeFinder: added doc listing for TrOneI2C 2017-01-27 18:11:29 +11:00
Andrew Tridgell 683e549ed7 AP_RangeFinder: added WHOAMI and crc check
thanks to Francisco for review comments
2017-01-27 18:11:29 +11:00
Andrew Tridgell 68ff71e4c0 AP_RangeFinder: added trone in-tree driver 2017-01-27 18:11:29 +11:00
Julien Beraud b561837b41 RangeFinder_Bebop: Fix mode selection
mistakes in selecting mode
2017-01-17 09:34:25 -08:00
Julien Beraud 8a1f4e048f RangeFinder_Bebop: fix spi speed
Set spi speed. Else 0 will be sent at each transfer.
2017-01-17 09:34:25 -08: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
Randy Mackay 8215b92371 AP_RangeFinder: MAV only accepts DISTANCE_SENSOR with orient 25
25 is  MAV_SENSOR_ROTATION_PITCH_270 meaning downward facing
2016-12-27 08:37:48 +09:00
Randy Mackay 0dd7e78c2b RangeFinder: fix to suppressing comment for case fall through
no functional change
eclipse stops complaining if no-break is used in place of fall-through
2016-12-14 13:22:31 +09:00
Jonathan Challinger 6e47bed97d AP_RangeFinder: fix hard fault with LightWareI2C 2016-12-07 07:52:38 +11:00
Francisco Ferreira 202c33491e RangeFinder: remove useless returns and update comment 2016-12-03 17:44:06 +00:00
murata a99bde9dad RangeFinder: Change type determination from if state to switch state. 2016-12-03 17:33:01 +00:00
ShingoMatsuura e9feb7bdda AP_RangeFilnder: moved the const buffer definition to the header and changed from '8' to 'sizeof(send_request_buffer)' 2016-11-23 10:28:38 -08:00