Commit Graph

31484 Commits

Author SHA1 Message Date
Ian
d358ca1b32 SITL: Add Webots 2023a support and examples
The various C Webots controllers are replaced by a single Python controller
- More readable (in my opinion)
- Does not require compilation
- Easily modifiable to run user code
- Can be blackboxed and configured via arguments when designing a robot model
- Optionally provides the ability to stream camera images over TCP
- Generalizable to copters and rovers (and probably more)
- Supports multi-vehicle simulation (including of multiple types)
- Requires no non-standard libraries (neither does current)

Higher fidelity example worlds
- Iris quadcopter demo world similar to gazebo
- Crazyflie quadcopter demo world (crazyflie models baked into webots)
- Pioneer3at rover demo world (pioneer models baked into webots)
2023-01-22 18:19:38 +11:00
Tom Pittenger
773129bab4 AP_TemperatureSensor: add driver for MAX31865 2023-01-21 11:38:50 +11:00
Henry Wurzburg
f8c4356ce2 AP_Scripting: add error check to mission_load.lua 2023-01-21 11:09:52 +11:00
Andrew Tridgell
b71601e9e4 AP_Scripting: fixed alt frame error in ship landing
if terrain follow is enabled then this would result in mixing a
terrain alt with an absolute alt, resulting in attempts to descend to
a negative alt
2023-01-19 17:09:05 +11:00
Andrew Tridgell
645240cc2b AP_InertialSensor: cleanup NAMED_VALUE_FLOAT for fifo error 2023-01-19 15:44:13 +11:00
Andrew Tridgell
786ae7c67f AP_InertialSensor: fixed flood of log with fast fifo reset 2023-01-19 15:44:13 +11:00
Nicholas (Nick) Kruzan
0dc878564f AP_Scripting:examples - rangefinder_test.lua : Minor Spelling Correction
Ratation -> Rotation
2023-01-18 12:01:40 +00:00
Andrew Tridgell
4dec8f849f hwdef: added HolybroG4_Compass
G4 based DroneCAN compass with RM3100
2023-01-18 19:30:30 +11:00
Andy Piper
0234c344ab AP_HAL_ChibiOS: add vanity and build requirements to betaflight converter 2023-01-18 19:17:22 +11:00
Andy Piper
f9276f76e7 AP_HAL_ChibiOS: cope with sensor alignment not being set in betaflight config 2023-01-18 19:17:22 +11:00
Peter Barker
591d587ed0 SITL: document SIM_ESC_TELEM
this is the perfect telemetry stream; we don't want to override other telemetry streams
2023-01-18 18:07:23 +11:00
Peter Barker
ccf290246c AP_HAL_SITL: use parameter to enable/disable SITL ESC telem
this is the perfect telemetry stream; we don't want to override other telemetry streams
2023-01-18 18:07:23 +11:00
Peter Barker
aa7ab28969 AP_AHRS: add a bool wind_estimate(...)
NavEKF3 can fail to return a wind estimate, and we lose that value
2023-01-18 11:20:32 +11:00
Peter Barker
96f359b4e3 AP_Logger: avoid logging duplicate FMT/UNIT/FMTU/MULT messages
Failing due to being out of time meant we wouldn't incremement the counter, even though we'd emitted the item.

it is important we try to send something, so move this check to be after we increment whichever counter we are using.
2023-01-18 10:09:43 +11:00
Peter Barker
f429aae09e AP_ESC_Telem: correct esc telem debug
wrong format specifier
2023-01-18 07:17:51 +11:00
Andrew Tridgell
863b4bf928 AP_Compass: fixed zero compass diagonals
this fixes a regression from 4.2 to 4.3.

previously we automatically set the diagnoals to 1,1,1 if they were
0,0,0. We don't do that any more. I was helping a user who had copied
an old config with 0,0,0 for diagonals and did not understand two
things:

- the compass did not work in 4.3
- large vehicle mag cal didn't work
2023-01-17 12:05:19 +11:00
Peter Barker
5078e6ea00 SITL: exclude SIM_SAIL_TYPE from non-Rover builds 2023-01-17 11:23:40 +11:00
Peter Barker
0c7ce291ec SITL: document the SIM_WOW_PIN parameter 2023-01-17 11:23:40 +11:00
Peter Barker
6c03134169 AP_HAL_SITL: use AP_CSVReader to read from Log serial-async dump 2023-01-17 11:21:48 +11:00
Peter Barker
20fc2d091c AP_CSVReader: add simple CSV reader 2023-01-17 11:21:48 +11:00
Iampete1
c99c17f1ce AMP_Control: Roll and Pitch Controller: don't reset pid_info.I in reset_I calls 2023-01-17 11:19:39 +11:00
Iampete1
2371d83620 AC_PID: dont change pid_info.I in set/reset methods 2023-01-17 11:19:39 +11:00
Peter Barker
84d49d5a88 hwdef: skyviper-v2450: remove EK3 external nav and body-frame-odometry
Neither of these are applicable to SkyViper
2023-01-17 10:50:37 +11:00
Peter Barker
d78ea08d24 AP_AHRS: move AP_AHRS_SIM::get_results into backend file 2023-01-17 10:49:56 +11:00
Iampete1
722ec745e9 AP_BattMoniter: don't allow equal low and critical FS thresholds 2023-01-17 10:36:09 +11:00
Andrew Tridgell
ffb6a9fb7f AP_OpenDroneID: set EMERGENCY status on crash or chute deploy
RemoteID modules are required to set EMERGENCY status on uncontrolled
descent or crash. This fixes our implementation to do that, either via
existing vehicle crash checking code or via a parachute release
2023-01-17 10:31:26 +11:00
chobits
f467acbe92 AP_HAL_ChibiOS: no dma for unused kakuteh7 uart2 2023-01-17 10:24:42 +11:00
Henry Wurzburg
71099c881d AP_Scripting: add error check to mission_load.lua 2023-01-17 10:24:08 +11:00
Henry Wurzburg
8865d79015 AP_Mission: add error check to mission_load.lua 2023-01-17 10:24:08 +11:00
Henry Wurzburg
c8617ccf01 AP_Scripting:Add mission to Script_Controller and improve 2023-01-17 10:24:08 +11:00
Henry Wurzburg
509d4b7fbf SITL:make MAG1 param consistent names 2023-01-17 08:45:30 +11:00
Andrew Tridgell
12c24df476 AP_HAL_SITL: added old_size to heap_realloc 2023-01-16 09:19:16 +11:00
Andrew Tridgell
deb86be1da AP_HAL_Linux: added old_size to heap_realloc 2023-01-16 09:19:16 +11:00
Andrew Tridgell
13cbccc016 AP_HAL: added old_size to heap_realloc 2023-01-16 09:19:16 +11:00
Andrew Tridgell
e255bbbd40 AP_HAL_ESP32: added old_size to heap_realloc 2023-01-16 09:19:16 +11:00
Andrew Tridgell
365de4b505 AP_HAL_ChibiOS: added old_size to heap_realloc 2023-01-16 09:19:16 +11:00
Andrew Tridgell
b45be75a98 AP_Scripting: use MultiHeap class 2023-01-16 09:19:16 +11:00
Andrew Tridgell
22a16f9672 AP_Common: added MultiHeap class
for scripting allocation with multiple heaps
2023-01-16 09:19:16 +11:00
Henry Wurzburg
e96a55c1b6 SITL:add SIM param metadata 2023-01-15 21:58:12 +11:00
Andrew Tridgell
a2b0bbffdb HAL_SITL: implement SIM_UART_LOSS 2023-01-15 21:57:15 +11:00
Andrew Tridgell
d3ea7b0ca6 SITL: added SIM_UART_LOSS parameter 2023-01-15 21:57:15 +11:00
Andrew Tridgell
dfdecc52c4 GCS_MAVLink: fixed FTP terminate session error
this caused ftp downloads to intermittently fail. The cause is the FTP
client may ask for a session terminate and then immediately afterwards
a ftp open. The open would fail as the ftp session was considered
active
2023-01-15 21:57:15 +11:00
Andrew Tridgell
abb3cdd6b8 AP_TECS: added max throttle time for takeoff with no airspeed sensor 2023-01-15 12:17:27 +11:00
Andrew Tridgell
d15c5ce233 AP_Vehicle: added takeoff_throttle_max_t for fixed wing 2023-01-15 12:17:27 +11:00
Peter Barker
08f652fe2c AP_HAL_ChibiOS: ignore array bounds check while checking 0x0 for writes
Fixes compiler error on g++ 12

../../libraries/AP_HAL_ChibiOS/Scheduler.cpp:568:20: error: array subscript 0 is outside array bounds of 'const uint8_t [0]' [-Werror=array-bounds]
  568 |         if (addr0[i] != 0) {
2023-01-12 23:30:15 +11:00
Peter Barker
c42754b691 AP_AHRS: create an AP_AHRS_SIM backend 2023-01-12 13:11:40 +11:00
Henry Wurzburg
c79672b96c SITL: add SITL param metadata and fix a few 2023-01-12 09:19:27 +11:00
Peter Barker
9cb3bfbe05 AP_HAL_ChibiOS: disable batch sampler on SkyViper-v2450
saves ~1.8kB
2023-01-11 19:08:41 +11:00
Peter Barker
e5c3dd871c AP_InertialSensor: create explicit define for AP_INERTIALSENSOR_BATCHSAMPLER_ENABLED
this allows the batch sampler to be removed for size reasons, or because you don't have logging enabled
2023-01-11 19:08:41 +11:00
Andy Piper
c620ba58df AP_Motors: use _dt instead of loop rate for throttle slew calculation 2023-01-11 18:59:52 +11:00