Commit Graph

18529 Commits

Author SHA1 Message Date
Andrew Tridgell
93abb41e77 AP_RTC: added JitterCorrection class 2018-12-04 11:37:38 +11:00
Andrew Tridgell
b5f3750014 AP_GPS: convert NOVA, SBP and SBP2 to use check_new_itow() 2018-12-04 11:37:38 +11:00
Andrew Tridgell
df68d6413c AP_GPS: moved iTow handling to GPS_Backend 2018-12-04 11:37:38 +11:00
Andrew Tridgell
4af857da44 AP_GPS: adjust NMEA sentence length calculation
review feedback
2018-12-04 11:37:38 +11:00
Andrew Tridgell
3fe4b9c0f8 AP_GPS: make GPS packet timestamps more accurate
this reduces the effect of processing time and uart transmit time
2018-12-04 11:37:38 +11:00
Andrew Tridgell
62c26ec5ff SITL: added parameters for Morse quad 2018-12-04 09:44:50 +11:00
Andrew Tridgell
a4f388e0f3 SITL: improved Morse socket handling 2018-12-04 09:44:50 +11:00
Andrew Tridgell
505bc2b1fc SITL: added quadcopter example script for Morse 2018-12-04 09:44:50 +11:00
Andrew Tridgell
adb45c261f SITL: support quad simulation in Morse 2018-12-04 09:44:50 +11:00
Andrew Tridgell
d907c5757d AP_Motors: added PlusRev motors type
this is a plus frame with reversed motor direction, needed for quad in
Morse simulator
2018-12-04 09:44:50 +11:00
Andrew Tridgell
c8c54b369a SITL: added example script for Morse 2018-12-04 09:44:50 +11:00
Andrew Tridgell
fea5060429 SITL: added Morse simulation backend 2018-12-04 09:44:50 +11:00
Andrew Tridgell
d46c48e28c HAL_SITL: enable morse simulator backend 2018-12-04 09:44:50 +11:00
vierfuffzig
64915c69b6 AP_OSD: check for airspeed object 2018-12-03 07:57:46 +11:00
vierfuffzig
5a262a7f6a AP_OSD: add secondary airspeed item 2018-12-03 07:57:46 +11:00
Andrew Tridgell
50683633b3 HAL_ChibiOS: setup for brushed feature in IOMCU 2018-11-30 13:14:14 +11:00
Andrew Tridgell
41264568ba AP_IOMCU: added brushed motor feature bit in protocol 2018-11-30 13:14:14 +11:00
Andrew Tridgell
25247433dc AP_BattMonitor: added Sum backend type
this is used to combine battery monitors into a single reporting
unit. It operates on all instances beyond itself
2018-11-30 13:02:35 +11:00
Andrew Tridgell
3d9126ec4a AP_Compass: run lsm303d at 91Hz, not 100Hz
Peter and I have discovered an odd behaviour with the lsm303d mag. If
you fetch data a bit too soon then it will give a peridic oscillation
in the output.

Checking the data ready bit in the status register doesn't help. The
only fix I've found is to run the sampling at a bit lower rate
2018-11-30 11:39:54 +11:00
Andrew Tridgell
0faab853cb HAL_ChibiOS: make atob static
only used in this file
2018-11-30 11:29:51 +11:00
Andrew Tridgell
9257d29717 SITL: fixed frame_property build error with older C++ compilers 2018-11-30 11:03:09 +11:00
Andrew Tridgell
c72f2e57b0 HAL_SITL: fixed build on older MacOS 2018-11-30 11:03:09 +11:00
Andrew Tridgell
8ea7df3efe AP_NavEKF2: added filter reset if unhealthy for 5s and disarmed 2018-11-30 11:02:30 +11:00
Andrew Tridgell
c1516da203 AP_Camera: use timestamp from trigger time
this avoids time inaccuracy from loop times in timestamps
2018-11-30 10:12:27 +11:00
Andrew Tridgell
19ba2322ac DataFlash: added timestamp to CAM messages 2018-11-30 10:12:27 +11:00
Andrew Tridgell
8f51bef0f0 HAL_ChibiOS: added 3 tries to microSD MMC init
this makes init for MMC/SPI interfaces more reliable
2018-11-29 19:39:11 +11:00
Siddharth Purohit
6a27e8585a AP_UAVCAN: limit number of file open and close events 2018-11-29 16:36:29 +11:00
Siddharth Purohit
0976019133 AP_UAVCAN: continue dna server setup even if unique id not received 2018-11-29 16:36:29 +11:00
Andrew Tridgell
8c9e9bd415 HAL_SITL: implement get_system_id() 2018-11-29 16:36:29 +11:00
Andrew Tridgell
48475051d9 HAL_Linux: implement get_system_id() on Linux
this is needed for UAVCAN dynamic node allocation
2018-11-29 16:36:29 +11:00
Andrew Tridgell
73d6200db4 AP_UAVCAN: use HAL_BOARD_STORAGE_DIRECTORY for node db path 2018-11-29 16:36:29 +11:00
Andrew Tridgell
4cfb1b04ad AP_HAL: define HAL_BOARD_STORAGE_DIRECTORY for sitl, px4 and chibios 2018-11-29 16:36:29 +11:00
Siddharth Purohit
c37a9966c1 AP_UAVCAN: use const unique id length variable 2018-11-29 16:36:29 +11:00
Siddharth Purohit
e017783f69 AP_UAVCAN: disable server for HAL_PX4 with minimize feature builds 2018-11-29 16:36:29 +11:00
bugobliterator
144bbb293f HAL_PX4: implement system id without formatting 2018-11-29 16:36:29 +11:00
Siddharth Purohit
bb6b176785 AP_UAVCAN: add support for dynamic node allocation 2018-11-29 16:36:29 +11:00
Siddharth Purohit
df7d0d1971 AP_HAL: add support for unformatted board id 2018-11-29 16:36:29 +11:00
Siddharth Purohit
3b2fdc9c70 HAL_ChibiOS: add support for unformatted board id 2018-11-29 16:36:29 +11:00
Siddharth Purohit
8df52aba29 HAL_ChibiOS: move vsnprintf call to redirect Ardupilot's instead of ChibiOS's 2018-11-29 16:36:29 +11:00
Andrew Tridgell
42b89e7427 AP_OSD: flash GPS if no lock 2018-11-29 08:49:23 +11:00
Andrew Tridgell
ee78374513 RC_Channel: added GPS_DISABLE option on a switch 2018-11-29 08:49:23 +11:00
Andrew Tridgell
2512b73106 AP_GPS: added ability to disable GPS
this is used for GPS loss testing in real vehicles, by linking it to a
RCn_OPTION value. GPS position is still logged, but is not used
2018-11-29 08:49:23 +11:00
Randy Mackay
671f39c874 AP_OpticalFlow: remove unnecessary init from CSOF and add comments
also replace greater-than-zero with is_positive
2018-11-28 20:38:58 +09:00
Randy Mackay
4f738ca906 AP_OpticalFlow: driver for Cheerson CX-OF 2018-11-28 20:38:58 +09:00
Randy Mackay
67be002cca AP_SerialManager: add optical flow to list of protocols 2018-11-28 20:38:58 +09:00
Randy Mackay
70817bb6a7 GCS_Common: optical flow comp fields should include flow 2018-11-28 20:38:58 +09:00
Andrew Tridgell
d78be209fe AP_SBusOut: fixed an init bug in SBUS output 2018-11-28 14:46:51 +11:00
Matt
adf78ab8d3 MAVLINK: Forward to private channels if sysid and compid match
If the target system ID and target component ID match a private channel,
it is ok to forward that mavlink traffic.  Any traffic without a
matching sysid or compid will not be forwarded on the channel
2018-11-28 11:33:23 +11:00
Andrew Tridgell
b7dd255050 AP_RCProtocol: small improvement to SBUS parsing robustness
ensure that if we see a frame gab that we reset input buffer
2018-11-28 10:35:50 +11:00
Andrew Tridgell
7459709acb HAL_ChibiOS: allow ROMFS to override a file
this allows a hwdef.dat with an include to change an embedded file
specified in the include
2018-11-28 10:35:50 +11:00
Andrew Tridgell
5baf4c42ea AP_RCProtocol: fixed decoding of SBUS switch channels
these are not used now, but may be in the future
2018-11-28 10:35:50 +11:00
Andrew Tridgell
e3cd081064 SITL: support up to 12 actuators with RealFlight8
the new beta release supports up to 12 channels
2018-11-27 13:49:41 +11:00
Andrew Tridgell
d4c2945a48 AP_RCProtocol: increased robustness of SBUS parsing
take full advantage of the frame gap to reduce CPU and the chance of a
bad decode
2018-11-27 09:38:18 +11:00
Andrew Tridgell
69c4fb671e AP_IOMCU: optimisations to reduce ISR latency
this speeds up the DMA ISR handlers to reduce the change of losing a
byte on RC input due to loss of an interrupt
2018-11-27 09:38:18 +11:00
Andrew Tridgell
24b23d6784 AP_RCProtocol: make DSM parsing more robust
this makes DSM parsing much more robust. It fixes an issue with DSM
input for the Solo, where it occasionally saw glitches
2018-11-27 09:38:18 +11:00
Andrew Tridgell
50df8c7e28 AP_RCProtocol: added cmdline RC decoder program 2018-11-27 09:38:18 +11:00
Andrew Tridgell
02519afdf4 HAL_Linux: fixed an error found with valgrind
sa_flags wasn't initialised
2018-11-27 09:38:18 +11:00
Michael du Breuil
8c464572d8 AP_HAL_ChibiOS: Use a less clever version of realloc
The clever version loses access to memory, and is excessively hard coded
2018-11-26 22:32:56 +00:00
Michael du Breuil
effdc436f2 AP_Param: Fix a mixture of new/free 2018-11-26 22:32:56 +00:00
Michael du Breuil
0ede7b7d39 AP_Scripting: Catch lua panics 2018-11-26 22:32:56 +00:00
Peter Barker
686abb5e61 GCS_MAVLink: warn user via text message of mission upload failure 2018-11-26 14:31:41 -08:00
Michael du Breuil
57d3a4fb5f AP_HAL_Empty: Remove unneeded private member 2018-11-27 07:36:17 +11:00
Michael du Breuil
b32c5e6f8d AP_HAL_ChibiOS: Remove unneeded private member 2018-11-27 07:36:17 +11:00
Michael du Breuil
52d6353e33 AP_Rangefinder: Remove unused members 2018-11-27 07:36:17 +11:00
Michael du Breuil
0808539ee5 AP_LandingGear: Remove unused members 2018-11-27 07:36:17 +11:00
Randy Mackay
18c3eba829 AP_OpticalFlow: minor format fix to Pixart driver 2018-11-26 12:29:37 +09:00
Andrew Tridgell
e629845f00 AP_HAL: minimize features on px4-v1 2018-11-26 13:29:40 +11:00
Andrew Tridgell
891447d798 AP_Notify: fixed LED sync for OreoLED
the NuttX driver tries to send a sync every 4s, but actually ends up
sending at around 4.1s due to poor scheduling. Rather strangely, the
oreoled firmware seems to rely on this inaccuracy, and doesn't work
with exactly 4s under ChibiOS
2018-11-26 13:29:40 +11:00
Andrew Tridgell
78dc575258 AP_Notify: added OreoLED_I2C driver
this is for Solo on ChibiOS, but is usable with any board
2018-11-26 13:29:40 +11:00
Tom Pittenger
deea50731d SRV_Channel: fix values order 2018-11-26 11:28:22 +09:00
Andrew Tridgell
4673fd8c7c AP_BattMonitor: fix problem with BATT_MONITOR=0 and BATT2_MONITOR=N
this fixes a problem that came up with a user where they had
BATT_MONITOR=0 and BATT2_MONITOR=7. They did not get any battery
monitoring.

There are several ways to tackle this, but this is the simplest
2018-11-26 13:27:02 +11:00
Randy Mackay
ba3303dc61 AC_PosControl: set-alt-target-with-slew sets desired to 0 once at target
This resolves and issue with the set-alt-target-with-slew method leaving the z-axis desired velocity at the max speed-up or speed-down
this causes a jump in throttle if the user switches to Loiter after the vehicle has reached its target
2018-11-26 09:30:32 +09:00
Michael du Breuil
3ee675ad42 DataFlash: Log integer version of mission
This is higher precision the casting to float, and better matches the
internal format we actually use. Removed the indicection as it gained us
nothing. Closes #8875
2018-11-24 20:11:46 -08:00
Peter Barker
3296b1c7f7 SITL: correct use of uninitialized values in simulated gimbal 2018-11-25 03:13:21 +00:00
Michael du Breuil
00cdf24324 AP_BattMonitor: Add docs for Plane QLand failsafe 2018-11-24 14:37:04 -08:00
Andrew Tridgell
f6d564599e AP_Mount: mark gimbal channel as private 2018-11-24 11:00:37 +11:00
Andrew Tridgell
1e354d53c9 GCS_MAVLink: added private channel mask
this allows a channel to be marked "private". A private channel gets
heartbeats, but doesn't get forwarded packets or broadcast messages

This is used by solo gimbal driver
2018-11-24 11:00:37 +11:00
Andrew Tridgell
635540b4d6 SITL: simulate Solo gimbal parameter handling
this allows us to get into running state
2018-11-24 11:00:37 +11:00
Andrew Tridgell
2a08dc73b7 SITL: added some debug code to simulated Solo gimbal 2018-11-24 11:00:37 +11:00
Peter Barker
f4cf4c7fa2 GCS_MAVLink: remove unused variable 2018-11-23 14:25:20 +09:00
Peter Barker
2cea90eefe AP_Vehicle: remove ancient, misleading Arduino comment 2018-11-23 10:56:17 +11:00
Peter Barker
c9714ae962 RC_Channel: read_aux_all is no longer overrridden by any class 2018-11-23 10:56:17 +11:00
Matt
ca4d28200b AP_BattMonitor: Increase solo's power off button delay time
The Solo battery's power button needs to be held to power off. The
debounce time before it plays the power off tone is too low.
Occasionally it causes the user to not hold the button long enough.
This corrects the delay before playing the power off tone.
2018-11-23 08:59:08 +11:00
Randy Mackay
616a2709ff AP_BattMonitor: clarify copter action for SmartRTL
this hopefully helps clarify the difference between the two choices that include SmartRTL
2018-11-22 13:20:20 +09: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
Andrew Tridgell
1428594daf HAL_ChibiOS: fixed uart order for PH4-mini
thanks to Arthur from Holybro
2018-11-21 09:29:15 +11:00
Andrew Tridgell
8ac18f343f HAL_ChibiOS: added note on KakuteF7 ESC telem 2018-11-20 19:47:48 +11:00
Andrew Tridgell
08199eb5ff HAL_ChibiOS: updated KakuteF7 docs 2018-11-20 19:45:08 +11:00
Andrew Tridgell
62f07f36c7 HAL_ChibiOS: updated KakuteF4 docs 2018-11-20 19:16:37 +11:00
Andrew Tridgell
101b12617d HAL_ChibiOS: updated PH4-mini docs 2018-11-20 18:46:35 +11:00
Andrew Tridgell
eac6435dec HAL_ChibiOS: allow CAP ports to be used as PWM on PH4-mini 2018-11-20 18:46:34 +11:00
Andrew Tridgell
a6ab885866 HAL_ChibiOS: fixed typo in F767 pin def file 2018-11-20 18:28:11 +11:00
Andrew Tridgell
14cd9f11e8 AP_SerialManager: document Swap option for UARTs 2018-11-20 18:26:42 +11:00
Andrew Tridgell
013f1d55e8 HAL_ChibiOS: added support for swapping UART pins 2018-11-20 18:25:35 +11:00
Andrew Tridgell
bed7939969 AP_HAL: added support for swapping RX and TX pins 2018-11-20 18:25:20 +11:00
Andrew Tridgell
cfc6ec5e57 HAL_ChibiOS: added PH4-mini docs 2018-11-20 17:26:14 +11:00
Andrew Tridgell
7c2dc84d45 HAL_ChibiOS: added Pixhawk4 docs 2018-11-20 16:19:00 +11:00
Andrew Tridgell
9f22dae444 HAL_ChibiOS: added docs for CUAVv5 2018-11-20 16:03:34 +11:00
Andrew Tridgell
d422e6a6ff HAL_ChibiOS: correct SPKT pin numbers for CubeBlack 2018-11-20 15:23:06 +11:00
Andrew Tridgell
742d8b8933 HAL_ChibiOS: pixracer and cube doc updates 2018-11-20 15:09:51 +11:00
Andrew Tridgell
8a85d9db69 HAL_ChibiOS: added CubeBlack docs 2018-11-20 14:52:48 +11:00
Andrew Tridgell
715ac2d6c5 HAL_ChibiOS: fixed error in pixracer docs 2018-11-20 13:37:07 +11:00
Andrew Tridgell
35db9c4b85 HAL_ChibiOS: added Pixracer docs 2018-11-20 13:32:46 +11:00
DOMINATOR\Eugene
d3eb24bc01 AP_Airspeed: Temperature conversion in consistence with other libraries 2018-11-19 17:31:12 +00:00
Randy Mackay
f5a9fdaf42 RangeFinder: benewake buffer uses uint8_t 2018-11-19 11:33:48 +09:00
DOMINATOR\Eugene
4f9c492f78 AP_Landing: yaw correction on landing 2018-11-18 13:40:15 -08:00
Andrew Tridgell
09dde518df AP_AHRS: fixed dead-reckoning groundspeed vector
this is essential for RTL in planes on GPS loss
2018-11-19 07:32:20 +11:00
Andrew Tridgell
62be29fbcf HAL_ChibiOS: added board docs for KakuteF4 2018-11-18 21:37:56 +11:00
Andrew Tridgell
39003905b9 HAL_ChibiOS: re-arrange KakuteF4 UARTs
this allows for FrSky S.PORT on Telem2, and enables it by default
2018-11-18 21:37:56 +11:00
Andrew Tridgell
cfb401995f AP_SerialManager: allow override of SERIAL2_PROTOCOL 2018-11-18 21:37:56 +11:00
Andrew Tridgell
da402f4fb7 HAL_ChibiOS: fixed KakuteF7 UART order 2018-11-18 15:56:42 +11:00
Andrew Tridgell
fa487fe1bc HAL_ChibiOS: added Pixhawk1 docs 2018-11-18 15:56:42 +11:00
Eugene Shamaev
9cba4b2e70 AP_LandingGear: Helper for landing 2018-11-17 20:31:01 -08:00
Eugene Shamaev
2c8d96145f AP_Landing: Check deployment of gear 2018-11-17 20:31:01 -08:00
Andrew Tridgell
774cea0dd5 HAL_ChibiOS: added KakuteF7 docs 2018-11-18 14:59:04 +11:00
DOMINATOR\Eugene
c56188d081 AP_Baro: read temperature from AP_Airspeed singleton 2018-11-17 07:52:42 +11:00
DOMINATOR\Eugene
c81f9e6baa AP_Airspeed: update data with logging 2018-11-17 07:52:42 +11:00
Andrew Tridgell
d84bc9f556 HAL_ChibiOS: fixed STM32F7 RXINV flag 2018-11-16 15:48:21 +11:00
Andrew Tridgell
285935f8b3 RC_Channel: added reverse throttle RC option
used in plane for reverse on a switch
2018-11-16 08:33:35 +11:00
Andrew Tridgell
f71013928a AP_Motors: force PWM range for DShot to 1000 to 2000 2018-11-16 08:33:35 +11:00
Andrew Tridgell
fbcbbb72b1 SRV_Channel: support reversible DShot motors
force the PWM MIN/MAX to 1000/2000
2018-11-16 08:33:35 +11:00
Andrew Tridgell
8dd58b4181 HAL_ChibiOS: support reversible DShot motors 2018-11-16 08:33:35 +11:00
Andrew Tridgell
f2cd6e9a05 AP_HAL: added set_reversible_mask() 2018-11-16 08:33:35 +11:00
Andrew Tridgell
1910f266a6 AP_BLHeli: added SERVO_BLH_REMASK for reversible motors
this allows the user to specify which motors are configured as
reversible (3D)
2018-11-16 08:33:35 +11:00
Andrew Tridgell
adf7fefc2e HAL_ChibiOS: detect stuck I2C bus and clear with SCL
This detects the I2C bus becoming stuck with SDA low after a timeout
and clears the bus by toggling SCL. Many thanks to @jhw84 for the
suggestion
2018-11-16 08:30:40 +11:00
Andrew Tridgell
a0ed658fcc HAL_ChibiOS: added palReadLineMode() function
used to change and restore line modes
2018-11-16 08:30:40 +11:00
Andrew Tridgell
b4c551b56c AP_RCProtocol: expand DSM test to 8 channels 2018-11-15 19:54:36 +11:00
Andrew Tridgell
da0301c208 AP_RCProtocol: fixed DSM parser for 8 channels
this ensures we remember channels from the previous frame, avoiding a
bug with more than 7 channels
2018-11-15 19:54:36 +11:00
Andrew Tridgell
a4c532edff AP_HAL: fixed typo in fmax macro 2018-11-15 14:39:11 +11:00
Kristian Klausen
d7f529d3c6 AP_HAL_SITL: Use double point precision when converting langitudes and longitudes from degrees to radians.
See #9536
2018-11-15 11:22:56 +11:00
Randy Mackay
e9c1abfc3c AP_RangeFinder: fix benewake checksum check 2018-11-15 09:18:45 +09:00
Randy Mackay
3cc84173e3 DataFlash: log rangefinder status in RFND msg 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
e702ca7202 AP_Arming: resolve compiler warning 2018-11-14 20:40:46 +09:00
Andrew Tridgell
85243ad522 HAL_ChibiOS: enable support for half-duplex uart config 2018-11-14 19:05:09 +11:00
Andrew Tridgell
58ed5a123c AP_HAL: added HalfDuplex UART option 2018-11-14 19:05:09 +11:00
Andrew Tridgell
20b2d05dfd AP_SerialManager: added docs for HalfDuplex option 2018-11-14 19:05:09 +11:00
Andrew Tridgell
b346d82f96 HAL_ChibiOS: allow frsky invert for p3pro and mindpx-v2 2018-11-14 19:05:09 +11:00
Andrew Tridgell
f0c13d4089 HAL_ChibiOS: allow user control of frsky inversion on Pixracer 2018-11-14 19:05:09 +11:00
Andrew Tridgell
acf03980ca HAL_ChibiOS: added UART inversion options
support GPIO pins or STM32F7
2018-11-14 19:05:09 +11:00
Andrew Tridgell
bd117f1548 HAL_ChibiOS: define pins for inverting uarts 2018-11-14 19:05:09 +11:00
Andrew Tridgell
37fc6e8b1c AP_HAL: added inversion options 2018-11-14 19:05:09 +11:00
Andrew Tridgell
ac3b0a98ab AP_SerialManager: added options for each uart
used to control inversion of uarts
2018-11-14 19:05:09 +11:00
Michael du Breuil
2afe72d79f AP_Scripting: Swap reschedule to be callback, delay 2018-11-14 01:41:35 +00:00
Michael du Breuil
ecb1a433b1 AP_Scripting: Add more runtime sanity checks 2018-11-14 01:41:35 +00:00
Michael du Breuil
40d5e233d4 AP_Scripting: Autostart all scripts in a given folder 2018-11-14 01:41:35 +00:00
Michael du Breuil
19a8c5a6ed AP_Scripting: Run multiple scripts at once 2018-11-14 01:41:35 +00:00
Michael du Breuil
b0a84ab7cf AP_Scripting: Enforce a time limit for a script 2018-11-14 01:41:35 +00:00
Andrew Tridgell
d824cf0a40 HAL_ChibiOS: default the battery2 pins correctly for CubeBlack 2018-11-13 14:33:17 +11:00
Peter Barker
e5fa728a28 AP_OpticalFlow: fix example for not taking ahrs in constructor 2018-11-13 10:40:23 +11:00