Commit Graph

36609 Commits

Author SHA1 Message Date
Thomas Watson f9b138724c AP_Scripting: add serial loopback test script
Tests that data can flow both ways with one end using protocol 28
(Scripting) and the other using the serial device simulation feature.
2024-06-27 12:00:18 +10:00
Thomas Watson 46e204dd6c AP_Scripting: clear serial device sim buffers appropriately
Ensures the script won't process data created before it started, and
that the protocol won't process data created after the script stopped.
2024-06-27 12:00:18 +10:00
Thomas Watson 4cb684e8a9 AP_Vehicle: initialize scripting serial device sim ports early
Necessary for mavlink in particular to notice the port and hook up the
protocol internally.
2024-06-27 12:00:18 +10:00
Thomas Watson a077e4a3ed AP_Scripting: introduce serial device simulation support
Allows a script to simulate a device attached via any serial protocol.
The script can read and write data and have it handled according to the
protocol as if exchanged over a serial port. The script can then do
protocol translation, data filtering and validation,
hardware-in-the-loop simulation, experimentation, etc., especially in
combination with the scripting protocol which lets the script itself
handle an attached device and so interpose any communication.
2024-06-27 12:00:18 +10:00
Thomas Watson 4df2a1bce7 AP_Scripting/generator: generate depends for manual functions on singletons 2024-06-27 12:00:18 +10:00
Thomas Watson c18f9f733e AP_Scripting: add writestring for serial
Enables more efficient scripting.
2024-06-27 12:00:18 +10:00
Thomas Watson d93aa15f2a AP_Scripting: refactor serial readstring
Using `luaL_Buffer` avoids the need for any heap allocation in the
common case (count <= 512 bytes) and avoids stressing out the system
heap for large reads, instead using the script heap.

Zero net flash usage change.
2024-06-27 12:00:18 +10:00
Thomas Watson e18449b1b8 AP_Scripting: use generic access userdata for serial ports
Adding another layer instead of just exposing UARTDriver bindings allows
substitution of the different functions for device simulation later.

Also take the opportunity to rework the docs a little.
2024-06-27 12:00:18 +10:00
Thomas Watson c37dba60de AP_Scripting/generator: allow disabling userdata creation from Lua
Passing -1 to the argument count for the `creation` tag (name does not
matter) will stop the generator from giving Lua a function to construct
that userdata. The C `new_<name>` function still works.
2024-06-27 12:00:18 +10:00
Thomas Watson 7fb65aece3 AP_SerialManager: allocate port IDs for scripting serial device ports 2024-06-27 12:00:18 +10:00
Peter Barker 0ee787325a AC_AutoTune: NFC whitespace, ordering and add trailing comma to enumeration 2024-06-27 10:12:30 +10:00
Pierre Kancir 396bca359d AP_Scripting: add an example to use Copter Standby mode in SITL with LUA 2024-06-27 10:11:53 +10:00
Andrew Tridgell 10c6020a66 AP_Scripting: update docs 2024-06-27 10:11:14 +10:00
Andrew Tridgell bcfc273799 hwdef: enable an ADC on CubePilot-PPPGW
allows for mcu temp
2024-06-27 10:11:14 +10:00
Andrew Tridgell 98479658d4 HAL_ChibiOS: support H7 at 200MHz 2024-06-27 10:11:14 +10:00
Andrew Tridgell d87404adfa AP_Scripting: added mcu_temperature binding 2024-06-27 10:11:14 +10:00
Andrew Tridgell f532f7a9e6 AP_SerialManager: added docs for SERIALn_PROTCOL=PPP 2024-06-27 10:11:14 +10:00
Andrew Tridgell 5a795ccba0 AP_Networking: added TCP reflection test
TCP to an echo server, testing bi-directional transfer
2024-06-27 10:11:14 +10:00
Andrew Tridgell 34815f9fb0 HAL_ChibiOS: scale RTS threshold to make software CTS more effective 2024-06-27 10:11:14 +10:00
Andrew Tridgell ebc4ee99a9 AP_HAL_ChibiOS: add support for GPIO pins as software CTS 2024-06-27 10:11:14 +10:00
bugobliterator b6cdb8b1a6 hwdef: fix hwdef for updated CubePilot-PPPGW 2024-06-27 10:11:14 +10:00
bugobliterator 0a0d5a3e49 AP_HAL_ChibiOS: add support for PPP on CubeOrangePlus 2024-06-27 10:11:14 +10:00
Peter Barker 2425023331 AP_Notify: flash green lights based off location not GPS
Your Copter in stabilize mode can flash rapid-green indicating a good DGPS lock or better, and yet your vehicle still doesn't have a good idea of where it is.

That means that your vehicle may end up RTL'ing onto a point somewhere along your flight path, when you were given an all-green indication by teh vehicle before you armed in stabilize.

Past this PR, we require the same GPS as before, but in addition we must have been happy enough with our location to set the navigation origin, *and* currently be able to get a location.

A user will receive slow-flashing blue lights if they can't currently get a location, or the navigation origin isn't set, even if they've got a "good" fix.

We also require a good location to get a solid green light - you will get a solid blue light if you can't get a location or don't have a navigation origin, even if you have a good GPS lock
2024-06-26 18:39:43 +10:00
Randy Mackay 3439ced236 AP_Mount: add Siyi ZT6 support 2024-06-26 18:37:42 +10:00
Peter Barker c55a5abcd9 AP_RCProtocol: remove redundant check for crsf telem on iomcu
the hwdef for the iomcu already removes crsf
2024-06-26 18:13:01 +10:00
bugobliterator 178cf7c2da AP_GPS: use 64 bit time in the pps interrupt callback in ublox driver 2024-06-26 17:51:31 +10:00
Andy Piper 651f4f15eb AP_RCTelemetry: use get_max_rpm_esc() 2024-06-26 17:36:54 +10:00
Andy Piper 451c1ae347 AP_OSD: use get_max_rpm_esc()
allow ESC index to be specified for OSD ESC info
2024-06-26 17:36:54 +10:00
Andy Piper 038735657a AP_ESC_Telem: add get_max_rpm_esc() 2024-06-26 17:36:54 +10:00
Andy Piper a86f4fdc8f AP_InertialSensor: move gyro and accel instance ids into AP_InertialSensor_Backend 2024-06-26 17:14:56 +10:00
Peter Barker 5911b87ae3 GCS_MAVLink: rename ins get_primary_accel to get_first_usable_accel 2024-06-26 17:12:12 +10:00
Peter Barker 563c3e7c62 AP_NavEKF3: rename ins get_primary_accel to get_first_usable_accel 2024-06-26 17:12:12 +10:00
Peter Barker 025888a7d1 AP_NavEKF2: rename ins get_primary_accel to get_first_usable_accel 2024-06-26 17:12:12 +10:00
Peter Barker 8302e0d1e2 AP_Mount: rename ins get_primary_accel to get_first_usable_accel 2024-06-26 17:12:12 +10:00
Peter Barker 8ddac54b17 AP_InertialSensor: rename ins get_primary_accel to get_first_usable_accel 2024-06-26 17:12:12 +10:00
Peter Barker 243e095b4e AP_DAL: rename ins get_primary_accel to get_first_usable_accel 2024-06-26 17:12:12 +10:00
Peter Barker a325ddbfa9 AP_AHRS: rename ins get_primary_accel to get_first_usable_accel 2024-06-26 17:12:12 +10:00
Leonard Hall 7047e11090 AC_AttitudeControl: Change input_quaternion to use body frame rates 2024-06-26 11:22:54 +10:00
Peter Barker 580199dfba AP_Logger: disable HAL_LOGGING_BLOCK_ENABLED if not HAL_LOGGING_ENABLED
HAL_LOGGING_DATAFLASH_ENABLED is set unconditionally in some hwdefs, but we still need to honour HAL_LOGGING_ENABLED
2024-06-25 18:32:41 +10:00
Clyde McQueen 0e6543f0e4 AP_NavEKF3: sub update for yaw reset and inFlight checks
on sub, request final yaw reset after diving 0.5m.
Also update rangefinder tests for sub
2024-06-25 18:09:37 +10:00
Andrew Tridgell ed58758ce6 hwdef: don't use DEFAULTGPIO in bootloaders
setting up a DEFAULTGPIO pulldown in bootloaders is a bad idea as it
overrides any hardware pullups that have been put in place as part of
a "hold in bootloader" mechanism. See discussion in #27360 for ELRS

note that this only impacts one board that I can see, the
BlitzF745AIO, due to the MCU vs DEFAULTGPIO interaction
2024-06-25 12:05:40 +10:00
Peter Barker 9bb343938f AP_Scripting: correct use-after-free in script statistics
run_next_script can free the script if the script runs over-time.

... so stop using data from that freed script structure!
2024-06-25 11:07:07 +10:00
Peter Barker 7dd50cd036 hwdef: JHEMCU-H743HD correct for rename of W25 dataflash driver 2024-06-25 11:05:22 +10:00
Iampete1 cc99ebf872 AP_Scripting: allow logging lua boolean with uint8 format `B` 2024-06-25 11:01:10 +10:00
Andrew Tridgell 32750476be AP_Scripting: added more telemetry for INF Inject 2024-06-25 09:34:18 +10:00
Andrew Tridgell b108d9cf09 AP_Scripting: added throttle and ignition control for INF_INject
allows full control over serial
2024-06-25 09:34:18 +10:00
TsuyoshiKawamura b9bf7acbf1 AP_Scripting: add test samples of get_target_location/update_target_location for copter 2024-06-25 08:29:57 +09:00
Leonard Hall 5ab2aaffff AC_Autotune: Clean up Multi Variables and non functional changes 2024-06-24 19:11:41 +10:00
Peter Barker 87d694414b AP_Beacon: use enum class for type 2024-06-24 18:24:11 +10:00
bugobliterator 96682b1b1b AP_Networking: add timeout to swap the UDP Server client target 2024-06-21 20:31:31 +10:00
bugobliterator d07e8d16df AP_Networking: use IP4_STR_LEN instead of value 16 2024-06-21 20:31:31 +10:00
bugobliterator a82729589c AP_Networking: allow UDP Server to talk to different clients on the same run 2024-06-21 20:31:31 +10:00
bugobliterator bace8d4c85 AP_HAL: add methods that deal in ip address as uint32_t 2024-06-21 20:31:31 +10:00
bugobliterator 3c69f156f4 AP_HAL: make recv call to be undirected but also get the ip:port of received packet 2024-06-21 20:31:31 +10:00
bugobliterator 43615f22b7 AP_HAL: add AP_MAVLINK_PACKETISE_ENABLE option 2024-06-21 20:31:31 +10:00
MattKear e1a1d15f62 AP_Mount: Alexmos: Improve angle precision and move defines to cpp 2024-06-20 15:13:48 +10:00
muramura 80b1a07de3 AP_Baro: Group device headers 2024-06-20 15:13:01 +10:00
Peter Barker f07ac41c65 AP_Notify: rename Notify buzzertype enumeration 2024-06-20 14:47:20 +10:00
Peter Barker 6b490a4c47 AP_HAL_ChibiOS: rename Notify buzzertype enumeration 2024-06-20 14:47:20 +10:00
Peter Barker 56a7e520b6 AP_Gripper: correct emitting of grabbed/released messages
these strigs would only be released if release() or grab were called a second time
2024-06-20 10:59:14 +10:00
George Zogopoulos 5ca8c0058c AP_TECS: Small legibility improvements
AP_TECS: Fixed bad whitespace
2024-06-20 09:12:50 +10:00
George Zogopoulos 9a3f6ae9c7 AP_Math: Created CentiDegreesToRadians 2024-06-20 09:12:50 +10:00
Siddharth Bharat Purohit f89923fcbe AP_HAL_ChibiOS: mark CONS RX/TX as NC for ADSB Carrier board 2024-06-19 19:09:36 +10:00
bugobliterator 04879d2c42 AP_HAL_ChibiOS: add passthrough from secondary through primary while in bootloader 2024-06-19 19:09:10 +10:00
robot-to-society b86094978d Mission: add is_resume method 2024-06-19 17:12:17 +10:00
Peter Barker 05a22aaffc AP_ADSB: cache course-over-ground for GPS message
stops the vehicle flipping around as speed goes to/comes from 0
2024-06-19 10:14:50 +10:00
Simon Hancock 43c604f1db AP_Compass: Fix fewer multipliers than params on MAGH log message 2024-06-19 09:38:59 +10:00
Simon Hancock d6f0d9b57c AP_GPS: Update description of VDop and HDop log params 2024-06-19 09:38:59 +10:00
Peter Barker b5b42f9446 AP_Logger: tidy running of LoggerMessageWriter sub-writers
... use the fact these all have a common base class to reduce effectively duplicate code.

Also un-virtualise and const a function which wasn't overridden and can be const
2024-06-19 08:51:28 +10:00
Peter Barker 12197b2d60 SITL: correct and improve Hirth simulator
we weren't sending an ACK for the set-values message
2024-06-19 08:48:32 +10:00
Thomas Watson 4ef2d49d92 hwdef: CubeRedPrimary: ICM45686 as ICM20649 alternative
Empirically what is present on Cube Reds built on/after 2024-04-14.
2024-06-18 10:53:08 +09:00
Iampete1 a322ba4f77 AP_Scripting: add binding for GPS `time_epoch_usec` 2024-06-18 10:37:13 +10:00
Iampete1 1c26c241f1 AP_Scripting: add uint64 userdata 2024-06-18 10:37:13 +10:00
Iampete1 574b9939a5 AP_Scripting: allow auto generation of uint32 operators 2024-06-18 10:37:13 +10:00
Andrew Tridgell 003f931d9c AP_Arming: added eeprom full arming check
tell users if params may not persist
2024-06-18 10:29:55 +10:00
Andrew Tridgell ae8ee5325c AP_Param: added get_eeprom_full()
for arming check
2024-06-18 10:29:55 +10:00
Iampete1 b68af03419 AP_HAL_ChibiOS: update relay parameter names 2024-06-18 08:59:34 +09:00
Andy Piper 608d396fd6 AP_Logger: take a blocking semaphore when writing messages using the block logger 2024-06-18 09:54:09 +10:00
Iampete1 fe814a66e4 AP_Vehicle: add new mode reason AUX_FUNCTION 2024-06-18 09:49:20 +10:00
koehlert 7092cb4717 GCS_MAVLink: support HIGHRES_IMU
HIGHRES_IMU MAVLink message. Built in to 2MB boards or not by default.
2024-06-18 09:29:04 +10:00
SCRainbow 0f011a4b61 AP_HAL_ChibiOS: Added support for JHEMCU H743 HD
commit 7d01b9e3cb09e89afea4bcb903d54b9ce8cdb1be
Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
Date:   Fri Apr 19 07:06:45 2024 +0800

    AP_HAL_ChibiOS: Added support for JHEMCU H743 HD

    commit d1e4ba0ef307e3ab3cc0f4218dd08e2f5c8f6ad0
    Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
    Date:   Fri Apr 19 04:38:22 2024 +0800

        board_types.txt: Reverted change for seperate PR

        hwdef-bl.dat: revert flash size to 2mb

        hwdef.dat: flash size set to 2mb, corrected syntax, realigned imus

    commit ee465524a7c37509d89ae17ae277a42328cb1cfd
    Merge: b1a55e0e3d 0f0023e62d
    Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
    Date:   Tue Apr 16 10:59:31 2024 +0800

        Merge branch 'master' into master

    commit b1a55e0e3d10a1fc3eff7af14c837271d0a3d131
    Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
    Date:   Tue Apr 16 10:59:08 2024 +0800

        Create defaults.parm

        output 9 is setup as serial LED

    commit 8437b6277c9f1d00a333ebd4f96946f02bf2bfc1
    Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
    Date:   Tue Apr 16 10:56:44 2024 +0800

        Update JHEMCU-H743HD/README.md

        Changed default UART6 protocol to displayport

        Co-authored-by: Henry Wurzburg <hwurzburg@yahoo.com>

    commit 186740cbc038a0ed4dd3bfc9035504bdd165b5aa
    Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
    Date:   Tue Apr 16 10:56:28 2024 +0800

        Update JHEMCU-H743HD/hwdef.dat

        Changed default UART6 protocol to displayport

        Co-authored-by: Henry Wurzburg <hwurzburg@yahoo.com>

    commit 48cfc0daaf58fecfe75a9338c91f4543aed4b14c
    Merge: 789b71d709 5a21d0cb8a
    Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
    Date:   Mon Apr 15 10:25:49 2024 +0800

        Merge branch 'master' into master

    commit 789b71d709b2b01c2a5134f8293f785917a787fd
    Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
    Date:   Sat Apr 13 19:37:37 2024 +0800

        Update hwdef-bl.dat

        Corrected FLASH_SIZE_KB to 1024 as H743VGT6  have only 1M flash

    commit cfa26b8f014c1775aa0270168682deca8ae16e78
    Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
    Date:   Sat Apr 13 19:37:04 2024 +0800

        Update hwdef.dat

        Corrected FLASH_SIZE_KB to 1024 as H743VGT6  have only 1M flash

    commit 3ae8a2c6ca2b0e95c076b652622adfe53275575a
    Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
    Date:   Sat Apr 13 18:40:31 2024 +0800

        Update hwdef.dat

        Fixed BIDIR labels, they are now in pairs, only on M1, M3, M5 and M7

    commit 200e22d5f06f6a0aef30463f4d2702872fe6f063
    Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
    Date:   Sat Apr 13 18:20:42 2024 +0800

        Update hwdef.dat

        Included OTG2, default serial 3 protocol is set to None.

    commit 8f561c17efa9708acbd257759f12b056f44ea5f6
    Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
    Date:   Sat Apr 13 18:10:01 2024 +0800

        Update README.md

        Corrected title

    commit 404b49f399d756561727571132ec38f3f89188a3
    Merge: b1d353b185 77cccd08a3
    Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
    Date:   Sat Apr 13 09:56:53 2024 +0800

        Merge branch 'master' into master

    commit b1d353b185721c1e319f2b758f8e4ea1b1d30968
    Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
    Date:   Fri Apr 12 17:51:57 2024 +0800

        Added JHEMCU H743 HD support

    commit 299841b23628431dc1b0172bb5fc50968acf2fd1
    Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
    Date:   Fri Apr 12 17:25:01 2024 +0800

        Added JHEMCU-H743HD

    commit 39d10456894bbbc4f73dfba65ee7cace7659ae17
    Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
    Date:   Fri Apr 12 17:21:14 2024 +0800

        Update README.md

    commit 048780fe44aace829173b0e701bc5a2ff874ee49
    Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
    Date:   Fri Apr 12 17:18:23 2024 +0800

        Added initial hwdef for JHEMCU H743 HD board

commit d4021681ec6d47f81973e6b346a67b757f3908d2
Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
Date:   Fri Apr 19 07:06:46 2024 +0800

    Tools: Added support for JHEMCU H743 HD

    commit d1e4ba0ef307e3ab3cc0f4218dd08e2f5c8f6ad0
    Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
    Date:   Fri Apr 19 04:38:22 2024 +0800

        board_types.txt: Reverted change for seperate PR

        hwdef-bl.dat: revert flash size to 2mb

        hwdef.dat: flash size set to 2mb, corrected syntax, realigned imus

    commit ee465524a7c37509d89ae17ae277a42328cb1cfd
    Merge: b1a55e0e3d 0f0023e62d
    Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
    Date:   Tue Apr 16 10:59:31 2024 +0800

        Merge branch 'master' into master

    commit b1a55e0e3d10a1fc3eff7af14c837271d0a3d131
    Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
    Date:   Tue Apr 16 10:59:08 2024 +0800

        Create defaults.parm

        output 9 is setup as serial LED

    commit 8437b6277c9f1d00a333ebd4f96946f02bf2bfc1
    Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
    Date:   Tue Apr 16 10:56:44 2024 +0800

        Update JHEMCU-H743HD/README.md

        Changed default UART6 protocol to displayport

        Co-authored-by: Henry Wurzburg <hwurzburg@yahoo.com>

    commit 186740cbc038a0ed4dd3bfc9035504bdd165b5aa
    Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
    Date:   Tue Apr 16 10:56:28 2024 +0800

        Update JHEMCU-H743HD/hwdef.dat

        Changed default UART6 protocol to displayport

        Co-authored-by: Henry Wurzburg <hwurzburg@yahoo.com>

    commit 48cfc0daaf58fecfe75a9338c91f4543aed4b14c
    Merge: 789b71d709 5a21d0cb8a
    Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
    Date:   Mon Apr 15 10:25:49 2024 +0800

        Merge branch 'master' into master

    commit 789b71d709b2b01c2a5134f8293f785917a787fd
    Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
    Date:   Sat Apr 13 19:37:37 2024 +0800

        Update hwdef-bl.dat

        Corrected FLASH_SIZE_KB to 1024 as H743VGT6  have only 1M flash

    commit cfa26b8f014c1775aa0270168682deca8ae16e78
    Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
    Date:   Sat Apr 13 19:37:04 2024 +0800

        Update hwdef.dat

        Corrected FLASH_SIZE_KB to 1024 as H743VGT6  have only 1M flash

    commit 3ae8a2c6ca2b0e95c076b652622adfe53275575a
    Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
    Date:   Sat Apr 13 18:40:31 2024 +0800

        Update hwdef.dat

        Fixed BIDIR labels, they are now in pairs, only on M1, M3, M5 and M7

    commit 200e22d5f06f6a0aef30463f4d2702872fe6f063
    Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
    Date:   Sat Apr 13 18:20:42 2024 +0800

        Update hwdef.dat

        Included OTG2, default serial 3 protocol is set to None.

    commit 8f561c17efa9708acbd257759f12b056f44ea5f6
    Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
    Date:   Sat Apr 13 18:10:01 2024 +0800

        Update README.md

        Corrected title

    commit 404b49f399d756561727571132ec38f3f89188a3
    Merge: b1d353b185 77cccd08a3
    Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
    Date:   Sat Apr 13 09:56:53 2024 +0800

        Merge branch 'master' into master

    commit b1d353b185721c1e319f2b758f8e4ea1b1d30968
    Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
    Date:   Fri Apr 12 17:51:57 2024 +0800

        Added JHEMCU H743 HD support

    commit 299841b23628431dc1b0172bb5fc50968acf2fd1
    Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
    Date:   Fri Apr 12 17:25:01 2024 +0800

        Added JHEMCU-H743HD

    commit 39d10456894bbbc4f73dfba65ee7cace7659ae17
    Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
    Date:   Fri Apr 12 17:21:14 2024 +0800

        Update README.md

    commit 048780fe44aace829173b0e701bc5a2ff874ee49
    Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
    Date:   Fri Apr 12 17:18:23 2024 +0800

        Added initial hwdef for JHEMCU H743 HD board
2024-06-18 08:21:16 +09:00
xianglunkai 5b05a171a2 AP_HAL_Linux: remove unused includes 2024-06-17 09:51:38 +10:00
cuav-chen2 869ef0ee04 AP_Baro: Add in BMP581 Driver 2024-06-17 09:50:47 +10:00
Peter Barker a737a34cd0 AP_Logger: correct comment about reserved range for vehicle IDs 2024-06-17 08:24:52 +10:00
Henry Wurzburg 247f5e5446 AP_OSD:Update HD fonts 2024-06-12 20:11:00 -04:00
Peter Barker 1d945cc5ac AP_Common: Location: allow retrieval of Vector3p from vector-from-origin 2024-06-11 19:50:18 +10:00
Peter Barker 0fc6fc4e9c AP_Math: move definition of HAL_WITH_POSTYPE_DOUBLE into AP_HAL_Boards.h
other libraries need to know if we are doing double-precision offsets
2024-06-11 19:50:18 +10:00
Peter Barker d70f5b92e0 AP_HAL: move definition of HAL_WITH_POSTYPE_DOUBLE into AP_HAL_Boards.h
other libraries need to know if we are doing double-precision offsets
2024-06-11 19:50:18 +10:00
Peter Barker 50401b749b AP_Follow: factor out separate methods for handling mavlink messages
handle_message was a bit of a monster
2024-06-11 16:20:20 +10:00
Peter Barker 89eade0836 AP_Follow: factor out a Log_Write_FOLL method 2024-06-11 16:20:20 +10:00
Peter Barker 6765838a3c AP_Follow: factor out a should_handle_message method 2024-06-11 16:20:20 +10:00
Peter Barker 7ea2e60b5a AP_AHRS: clarify frame of get_location_from_origin_offset
... by renaming it get_location_from_origin_offset_NED
2024-06-11 14:57:56 +10:00
Peter Barker 5994664bf9 SITL: add simulated tie-down clamp 2024-06-11 09:56:43 +10:00
Peter Barker 911375fa9a AP_Common: rearrange get_vector_from_origin_NEU to be less destructive
this change means that if the origin call failes we don't half-update the object before returning false
2024-06-11 09:47:14 +10:00
Peter Barker 500ca22c75 AP_Follow: clarify what we're doing when rotating a vector
odd sort of a transform, make it clear what's happening
2024-06-11 09:41:32 +10:00
Peter Barker 9c42a5d9dd GCS_MAVLink: warn on use of old fence point / rally point protocols 2024-06-11 09:39:56 +10:00
Peter Barker c5f902919e AC_Fence: warn on use of old fence point / rally point protocols 2024-06-11 09:39:56 +10:00
Peter Barker 2d7a4b318d AP_NavEKF: tidy creation of vectors 2024-06-11 09:38:54 +10:00
Peter Barker 4fb8408e80 GCS_MAVLink: clarify timeline on removal of HIL_GPS and BATTERY2
try to move to a standard greppable pattern for code to be removed
2024-06-11 09:37:56 +10:00
Peter Barker d250d9cb2b GCS_MAVLink: remove MOUNT_CONFIGURE/MOUNT_CONTROL handling by default 2024-06-11 09:37:56 +10:00
Peter Barker fc560e8219 GCS_MAVLink: avoid casting DroneCAN backend to incorrect type
- split get_type into allocated_type and configured_type
 - check allocated type rather than configured type when looking at backends

Prevents overwrite of random memory when backends are changed at runtime.
2024-06-11 09:31:46 +10:00
Peter Barker 029e0b15b3 AP_BattMonitor: avoid casting DroneCAN backend to incorrect type
- split get_type into allocated_type and configured_type
 - check allocated type rather than configured type when looking at backends

Prevents overwrite of random memory when backends are changed at runtime.
2024-06-11 09:31:46 +10:00
Peter Barker dd56f2465b SITL: make simulated SBP2 vastly more accurate
I have no idea if this is actually the sort of number which these devices will return.

However, for the EKF to be happy with the GPS the reported speed accuracy must be much lower than the SBP2 driver reports when we give it these numbers.

It might be that we are interpretting these fields incorrectly in the driver and that the simulator is, in fact, correct.
2024-06-11 09:29:14 +10:00
Brad Bosch 3b150d2e4c GCS_MAVLink: Add support for parity to Serial passthrough
Add code to reflect USB ACM parity setting to the passthrough port alongside existing support for ACM baud rate changes.  Some use cases for serial passthrough require specific parity settings.

For example, even parity is used and required by the USART protocol used in the STM32 system bootloader. This enhancement allows the use of standard flash programming tools such as STM32CubeProgrammer to flash connected STM based peripherals such as Receivers and Telemetry radios via serial passthrough.  Some examples of such peripherals include the FrSky R9 receivers as well as various other STM based LoRa modules used by the mLRS project.
2024-06-11 09:24:32 +10:00
Brad Bosch f2f9349419 AP_HAL: Add support for parity to Serial passthrough
Add code to reflect USB ACM parity setting to the passthrough port alongside existing support for ACM baud rate changes.  Some use cases for serial passthrough require specific parity settings.

For example, even parity is used and required by the USART protocol used in the STM32 system bootloader. This enhancement allows the use of standard flash programming tools such as STM32CubeProgrammer to flash connected STM based peripherals such as Receivers and Telemetry radios via serial passthrough.  Some examples of such peripherals include the FrSky R9 receivers as well as various other STM based LoRa modules used by the mLRS project.
2024-06-11 09:24:32 +10:00
Martin Luessi 3201622d38 AP_HAL_ChibiOS: Update readme for RADIX2HD 2024-06-11 09:11:09 +10:00
Peter Barker 6751bce0fc SITL: log number of times sim paused on serial0 buffer
SITL pauses the simulation if we do not have a minimum amount of space in its out queue.

Log the number of times we do this.
2024-06-11 08:51:25 +10:00
Peter Barker 6ae0b5ec5b AP_HAL_SITL: log number of times sim paused on serial0 buffer
SITL pauses the simulation if we do not have a minimum amount of space in its out queue.

Log the number of times we do this.
2024-06-11 08:51:25 +10:00
subashchandar 7e59b8c5a0 hwdef: update PixFlamingo_f767 README 2024-06-11 08:42:56 +10:00
Andy Piper 2af6358c07 AP_GPS: dynamically allocate config_GNSS 2024-06-10 06:53:23 +10:00
Andy Piper 90f7222f98 AP_HAL_ChibiOS: enable LEDs on Here4AP 2024-06-10 06:53:23 +10:00
Andy Piper a9dc7b440f AP_GPS: support GPSx_GNSS_MODE for F9P
support detecting F9P hardware variant
fix bug in extension buffer management
support NEO-F9P GNSS configuration
allow multiple configuration values to be set in one go
phase F9 configuration to account for GNSS reset
2024-06-10 06:53:23 +10:00
Bill Geyer c77f688032 AP_Motors: fix spacing
Co-authored-by: Peter Hall <33176108+IamPete1@users.noreply.github.com>
2024-06-09 13:24:38 -04:00
MattKear 3a311a9d69 AP_Motors: Heli: Fix SWSH logging for reversed collectives 2024-06-09 13:24:38 -04:00
Paul Riseborough 61874da020 AP_NavEKF3: Rework method of synthesising airspeed for dead reckoning
The previous method resulted in data incest and fusion of predicted airspeed on every EKF internal time step.
This was not apparent during flight where the vehicle was turning, but during long straight legs did not constrain along track drift.
2024-06-09 14:25:02 +10:00
Paul Riseborough 720c2da807 AP_NavEKF3: Rework GPS jamming resiliency
Make it user selectable.
Remove potential for a race condition between decisions based on latest data and the EKF fusion processing which operates on a delayed time horizon. This is achieved by preventing data entering the buffer if awaiting checks to pass ensuring that no EKF fusion time horizon processes can use data that hasn't passed checks.
Log the waitingForGpsChecks class variable
2024-06-09 14:25:02 +10:00
Paul Riseborough 996bf7d4df AP_NavEKF3: Log gpsGoodToAlign 2024-06-09 14:25:02 +10:00
Paul Riseborough eb2ff2192d AP_NavEKF3: Don't block no compass planes from running GPS alignment checks 2024-06-09 14:25:02 +10:00
Paul Riseborough 6baeb1cd9d AP_NavEKF3: Fix bug causing in flight yaw align to not complete 2024-06-09 14:25:02 +10:00
Paul Riseborough ffde7f815c AP_NavEKF3: Allow wind to relearn rapidly when GPS is re-enabled 2024-06-09 14:25:02 +10:00
Paul Riseborough 87bf8d9997 AP_NavEKF3: Treat wind as truth when deadreckoning with no airspeed sensor 2024-06-09 14:25:02 +10:00
Paul Riseborough 568972c0f0 AP_NavEKF3: Fix bug preventing use of default or synthetic airspeed 2024-06-09 14:25:02 +10:00
Paul Riseborough 2c3174b77b AP_NavEKF3: Strengthen protection against GPS jamming
These changes prevent the EKF from consuming GPS data too soon when it is recovering from jamming if the EKF is able to navigate using dead reckoning.
2024-06-09 14:25:02 +10:00
Paul Riseborough 324d5da811 AP_NavEKF3: Use last observed wind states to enable dead reckoning
These changes enable the EKF to use the last observable wind velocity vector estimate to synthesise an airspeed measurement if operating without an airspeed sensor and when all other measurement types that can constrain velocoty drift are lost. This enables the EKF to use dead reckoning to continue after loss of GPS when there is no air speed sensor fitted and without the need to set a default airspeed value.
The logic used to fuse a default airspeed value has also been cleaned up and the call to FuseAirSpeed() from inside SelectBetaDragFusion() has been removed.

AP_NavEKF3: Fix error in default airspeed observation variance

AP_NavEKF3: Enable shadow fusion of airspeed when sensor is disabled
2024-06-09 14:25:02 +10:00
Paul Riseborough e53416e77b AP_NavEKF3: Apply GPS quality checks following loss of 3D fix if velocity error is bounded 2024-06-09 14:25:02 +10:00
MattKear 5784abde1f AP_Motors: Heli dual: Constrain cyclic roll for intermeshing 2024-06-08 23:13:28 -04:00
Andrew Tridgell c783f632c1 AP_Scription: added CANF logging to Halo6000 EFI driver
allows for easier debugging
2024-06-09 08:37:44 +10:00
Iampete1 1c5c80d244 AP_Scripting: Docs: remove stray grave 2024-06-08 07:29:53 +10:00
Andrew Tridgell e9d39d80f4 AP_InertialSensor: fixed ICM42670
highres sampling is not working on the ICM42670 on some versions of
the Pixhawk6X. Disable for now.
2024-06-07 19:44:48 +10:00
Iampete1 cb22a6389d AP_Scripting: add virtual class in docs to avoid need nil check warning 2024-06-07 06:30:22 +10:00
muramura dfc04cd53a AP_Notify: Convert the ENUM definition to a class 2024-06-06 15:15:14 -04:00
George Zogopoulos d2901dc9c9 SITL: Removed trailing underscore 2024-06-05 19:03:31 +10:00
Peter Barker 78fcf7057c GCS_MAVLink: move switch for sending camera messages into AP_Camera
neatens GCS_Common a bit, reduces repetitive code
2024-06-05 10:29:01 +10:00
Peter Barker 5538f6735f AP_Camera: move switch for sending camera messages into AP_Camera
neatens GCS_Common a bit, reduces repetitive code
2024-06-05 10:29:01 +10:00
Iampete1 364419be81 AP_Scripting: docs: allow overload of manual bindings to allow documentation of optional arguments 2024-06-04 09:29:49 +10:00
Iampete1 f54ca766df AP_Scripting: tests: luacheck.lua: ignore lua-language-server 2024-06-04 09:29:49 +10:00
Iampete1 93642026aa AP_Scripting: tests: check.json: check files it gitignore but not self 2024-06-04 09:29:49 +10:00
Henry Wurzburg 3b86c0527f AP_BLHeli:expand metadata of 3d and Reverse masks 2024-06-04 09:24:41 +10:00
Henry Wurzburg 887e4713e6 AP_HAL_ChibiOS:remove fetaures to allow boards to build 2024-06-04 09:23:43 +10:00
Andrew Tridgell 6233bc0e10 HAL_Empty: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell ceac4969d5 AP_Networking: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell e97a6c7089 AP_InertialSensor: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 35a8f6c7b2 AP_DroneCAN: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 265e2a4d6b StorageManager: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 3682e3aad3 SRV_Channel: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 4e1b2b95d4 SITL: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 9b046f5a12 GCS_MAVLink: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 5859250651 Filter: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell db6bcdb725 AP_WindVane: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 76d16e2d78 AP_Winch: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 20a5ec4348 AP_WheelEncoder: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 659ecf6159 AP_VisualOdom: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 6a96df4792 AP_Vehicle: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 30228f5e6e AP_Torqeedo: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 65822c01ed AP_TemperatureSensor: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 93484ec81d AP_TempCalibration: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell a2459c6e61 AP_Scripting: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 5af89a4291 AP_Scheduler: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell c1bdf15c1d AP_RPM: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 01f02867a6 AP_RCTelemetry: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 51d5f85b83 AP_RCProtocol: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 8554081be5 AP_RangeFinder: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 5130e26f4c AP_Radio: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell c681701f81 AP_Proximity: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 6bd2be548b AP_Param: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell a5672b0105 AP_OSD: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 7235c146fa AP_OpticalFlow: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 014b3bba70 AP_OpenDroneID: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell cead1ee264 AP_ONVIF: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 530cbf1eca AP_Notify: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 4d5aa1b8e3 AP_Networking: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 242a3741e3 AP_NavEKF: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 94cbd7cbfb AP_NavEKF3: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 5e88d67571 AP_NavEKF2: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 5ca4bdbd8d AP_MSP: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 28da263e16 AP_Mount: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell e5a63eaad0 AP_Motors: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 3912c6a5e0 AP_Module: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell e180359757 AP_Menu: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell ad6502c9f1 APM_Control: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 72c77b3453 AP_Math: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 20070b7e37 AP_Logger: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 41cc776bd9 AP_LeakDetector: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 98697ba5d3 AP_KDECAN: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 6962c4080d AP_JSON: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 2e6c5157e6 AP_IOMCU: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell a0acccb1f9 AP_InertialSensor: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 17e338d7f6 AP_HAL_SITL: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell f1c6538f34 AP_HAL_Linux: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 20959524b8 AP_HAL: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 9caf942c7e AP_HAL_ESP32: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell d3133b8fa1 AP_HAL_Empty: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 8dbad82c8a AP_HAL_ChibiOS: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 375eab8560 AP_GyroFFT: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 62e3c6e5a4 AP_Gripper: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 1e075aeb80 AP_GPS: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell c70c8657bc AP_Generator: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell ab408bf3af AP_Frsky_Telem: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell a241b13f45 AP_Filesystem: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 4da9c245d1 AP_FETtecOneWire: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 5756b9a3de AP_ExternalAHRS: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell b07e0bf06b AP_EFI: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell ed8926361f AP_DroneCAN: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell d5a90af9ba AP_DDS: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 50253834ef AP_DAL: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 98caad29f5 AP_CustomRotations: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 0f08b47322 AP_Compass: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 5620fee636 AP_Common: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 4bf2d87d70 AP_CheckFirmware: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 02456875e7 AP_CANManager: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell a71585b9b8 AP_Camera: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell bac6d6f644 AP_Beacon: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 4879cc24e6 AP_BattMonitor: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 72dc87e5c1 AP_Baro: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 9ace1c6792 AP_Avoidance: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 6f6648a35c AP_AIS: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 8fdf085e2f AP_Airspeed: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 54017b820b AP_AHRS: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 715e8346a6 AP_ADSB: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell b8eab36298 AP_ADC: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 260a8eaddc AC_PrecLand: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 4c41805a3d AC_PID: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell c95624a040 AC_Fence: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 18e5da78d2 AC_CustomControl: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell c36c37099d AC_Avoidance: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell aa2f885e2f AP_Common: added checks for new without std::nothrow
and add NEW_NOTHROW macro
2024-06-04 09:20:21 +10:00
Andrew Tridgell 4f6653e5c7 HAL_SITL: avoid std::vector in command line handling
use ObjectArray instead
2024-06-04 09:20:21 +10:00
Andrew Tridgell c764e60aa0 HAL_SITL: avoid use of std::queue
use ObjectArray instead
2024-06-04 09:20:21 +10:00
muramura eec7876028 SITL: correct valgrind failure in SIM_GPS_SBP2 2024-06-03 21:30:32 +10:00
Peter Barker db6245bb66 AP_CRSF_Telem: add missing VideoTX include
We use the vtx singleton in here, so we need the header.

... also fix up the includes and ifdefs a little.
2024-06-03 17:51:47 +10:00
Bron2002 165b0e929f AP_GPS: add checking of instance number before update with incoming data 2024-06-03 12:18:11 +10:00
Andy Piper 07f0bfc8c9 AP_IOMCU: correct TCIE setting and add more debug 2024-06-02 10:54:14 +10:00
Andy Piper ae8a2d9513 AP_HAL_ChibiOS: reset pwm peripheral on F1 when deallocating IC DMA 2024-06-02 10:54:14 +10:00
Andrew Tridgell c2a9bc93b5 SITL: added --uartA alias for SITL
needed for MissionPlanner SITL

see https://github.com/ArduPilot/MissionPlanner/pull/3359

we will need this till a new stable release of MissionPlanner is done
2024-06-01 21:35:55 +10:00
Andrew Tridgell 4e0e20aee1 SITL: added plane-steering model for ground steering
needs to be updated with improved yaw rate calculation
2024-06-01 20:09:25 +10:00
Iampete1 51c77fe098 Filter: Testes: notch: interpolate crossing points for acurate phase lag 2024-06-01 16:37:07 +10:00
Andrew Tridgell c908636cde Filter: added test of phase lag vs attenuation 2024-06-01 16:37:07 +10:00
Henry Wurzburg f5a6193cbf AP_HAL_ChibiOS:correct pin to be pulled high during boot 2024-06-01 10:23:52 +10:00
Peter Barker b2b8eb93a6 SITL: correct valgrind failure in SIM_GPS_SBP 2024-05-31 13:23:03 +10:00
Ryan Friedman 513938b0ff AP_DDS: Use common quaternion initialization function
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2024-05-30 16:57:28 +10:00
Leonard Hall 0accc61107 AC_AutoTune: Move functions out of HAL_LOGGING_ENABLED 2024-05-29 18:29:23 +10:00
Leonard Hall 20edb9185d Copter: Autotune: Remove double call to AC_Attitude_Control 2024-05-29 18:29:23 +10:00
Leonard Hall b9e06402af Copter: Autotune: Increase waiting for level timeout. 2024-05-29 18:29:23 +10:00
Leonard Hall cebcbf0044 Copter: Autotune: Virtual methods to separate Heli and Multi 2024-05-29 18:29:23 +10:00
Leonard Hall 45525a40b8 Copter: Autotune: Don't Fail min D for Yaw Filter 2024-05-29 18:29:23 +10:00
Leonard Hall a7962c35b6 Copter: Autotune: Reduce MIN_D 2024-05-29 18:29:23 +10:00
Leonard Hall 858d90cb95 Copter: Autotune: Improve angle limit test 2024-05-29 18:29:23 +10:00
Leonard Hall 712cf3696b Copter: Autotune: Small changes for clarity 2024-05-29 18:29:23 +10:00
Leonard Hall 79f4e0a2d8 Copter: Autotune: Level requirement improvements 2024-05-29 18:29:23 +10:00
Leonard Hall 41a5a1b8fe Copter: Autotune: Notify user of min Rate D for action 2024-05-29 18:29:23 +10:00
Leonard Hall fcd3c8502f Copter: Autotune: Twitch direction enhancements 2024-05-29 18:29:23 +10:00
Leonard Hall e2560371cf Copter: Autotune: Base angles limits on lean_angle_max 2024-05-29 18:29:23 +10:00
Leonard Hall 54618dd903 Copter: Autotune: Fail when bad tune is expected 2024-05-29 18:29:23 +10:00
Leonard Hall 13fb69be7c Copter: Autotune: Look for bounce earlier in test 2024-05-29 18:29:23 +10:00
Leonard Hall 18d18d14fc Copter: Autotune: Set D = 0 for Yaw test 2024-05-29 18:29:23 +10:00
Leonard Hall c000efdabe Copter: Autotune: Increase test timeout 2024-05-29 18:29:23 +10:00
Leonard Hall 327fd034da Copter: Autotune: Reduce default AGGR 2024-05-29 18:29:23 +10:00
Leonard Hall c47b3b8f03 Copter: Autotune: Reduce chance of desync 2024-05-29 18:29:23 +10:00
Tom Pittenger 9669699405 AP_Networking: enable Socket IP reuse 2024-05-29 18:29:03 +10:00
Andy Piper 304751e162 AP_RCTelemetry: only update VTX parameters if CRSF provider was enabled 2024-05-29 17:49:08 +10:00
Andy Piper 607249d73d AP_VideoTX: add autobauding to Tramp
Record enabled backends
2024-05-29 17:49:08 +10:00
Rhys Mainwaring 88926a38cf AP_DDS: make all subscriber QoS best effort reliability
Signed-off-by: Rhys Mainwaring <rhys.mainwaring@me.com>
2024-05-29 17:47:52 +10:00
Rhys Mainwaring 840f4b142d AP_DDS: fix type string for navsat msg
Signed-off-by: Rhys Mainwaring <rhys.mainwaring@me.com>
2024-05-29 17:47:52 +10:00
Rhys Mainwaring c71ef23657 AP_DDS: create entities by binary
- Add topic name and type to topic table.
- Use binary creation functions for participants and topics.
- Add constant for domain ID.
- Create publishers and datawriters by binary
- Create subscribers, datareaders and services by binary
- Add extra fields to the services table.
- Remove dds_xrce_profile.xml
- Document additional service table fields
- Add QoS struct to topic and service tables
- Replace profile labels with enums.

Signed-off-by: Rhys Mainwaring <rhys.mainwaring@me.com>
2024-05-29 17:47:52 +10:00
xingchengGE 3ba16eb933 AP_Motor: Fix a typo 2024-05-29 16:28:02 +09:00
radityankn 4cab322356 Update RCOutput.cpp
erasing additional curly brackets
2024-05-29 17:02:48 +10:00
radityankn 119f822583 AP_HAL_ESP32: support for Safety Switch
modified RCOutout.cpp to read specified pin for safety switch and light
the LED on another specified pin
2024-05-29 17:02:48 +10:00
David Buzz 1c9a44c33e AP_HAL_ESP32:LOWERING the MAIN_PRIO gets a 400hz loop rate on s3 "empty" board
loop_rate: actual: 400.000000Hz, expected: 400Hz
loop_rate: actual: 400.000000Hz, expected: 400Hz
loop_rate: actual: 400.000000Hz, expected: 400Hz
[ setup esp32 build env ] 
./waf configure --board=esp32s3empty --debug
./waf copter --debug --disable-scripting --upload
 after upload:
cd build/esp32s3empty/esp-idf_build && ninja monitor && cd -
[watch console output for 2 minutes]
ctrl-right-square-bracket to stop watching console.
2024-05-29 13:12:37 +10:00
David Buzz 07092715a7 AP_HAL_ESP32: print loop rate
loop rate getting 262Hz from console after approx 2 minutes boot

loop_rate: actual: 262.022766Hz, expected: 400Hz
loop_rate: actual: 262.022766Hz, expected: 400Hz

t
2024-05-29 13:12:37 +10:00
David 'Buzz' Bussenschutt 529d783e0e AP_HAL_ESP32: automatic S3 sdkconfig changes generated by IDF 2024-05-29 13:12:37 +10:00
Pierre Kancir 9623e7a249 AP_HAL_SITL: Give tcp client 3 attempts to connect
This make tcp client connection easier when connecting multiple sitl instances
2024-05-29 13:12:09 +10:00
Andrew Tridgell d305cb47f8 AP_Scripting: added GPS yaw binding
useful for seeing if switching to a GPS yaw source set in EK3 will work
2024-05-29 12:56:57 +10:00
Andrew Tridgell bf9f3b8660 AP_Scripting: added notch_switch example
switch between two notch setups using attenuation change
2024-05-29 12:56:43 +10:00
Henry Wurzburg f5f78b7711 AP_HAL_ChibiOS:Improve SDMODELH7V2 definition 2024-05-29 10:40:03 +10:00
petrosilius 1d810bfa6f AP_Scripting: added tracker Pelco-D control script
This script uses the scaled output from the antennatracker servos and map them to corresponding Pelco-D messages to be sent via a RS-485 interface to a motorized base (can be anything from motorized tracker to a PTZ camera).
If your FCU doesnt offer a RS-485 interface by default, you can use or TTL-RS485- or USB-RS485-adapters.

Pelco-D allows to control using either speed-/differential- or absolute-control control of the pan-/tilt-axis.
Currently the script uses speed based control using by mapping the "ContinuousRotation" type servos outputs to the corresponding Pelco-D messages.
The absolute control messages are implemented nevertheless for future use.

The script assumes therefor at least the following parameters to be set:

SCR_ENABLE = 1
SERVO_PITCH_TYPE = 2  # ContinuousRotation type servo
SERVO_YAW_TYPE = 2    # ContinuousRotation type servo
SERIALx_PROTOCOL = 28 # serial port used by luascript

Additionally the PITCH2SRV and YAW2SRV tuning needs to be done as described by the antennatracker description.
Also keep attention to the PITCH_MIN, PITCH_MAX and YAW_RANGE parameters to fit your Pelco-D hardware!
2024-05-28 17:42:52 +10:00
Andrew Tridgell e0af22ad8f SITL: update to work on newer cygwin versions 2024-05-28 11:33:38 +10:00
Iampete1 3f6ce2dc09 AP_DroneCAN: Serial: map baudrates so param works as expected 2024-05-28 10:27:20 +10:00
Peter Barker 720c8719dc waf: boards.py: use chibios_hwdef.py to get boards list 2024-05-28 10:25:39 +10:00
Peter Barker a669249416 GCS_MAVLink: default support for BATTERY2 sending to off
replaced by BATTERY_STATUS
2024-05-28 10:11:37 +10:00
Iampete1 f5e7bfcc48 AP_Scripting: remove support for REPL 2024-05-28 10:10:14 +10:00
rotorman 0962b759b0 AP_HAL_ChibiOS: adds Flywoo/Goku F405 HD 1-2S ELRS AIO v2 flight controller support
Co-authored-by: Henry Wurzburg <hwurzburg@yahoo.com>
2024-05-28 09:57:14 +10:00
MattKear 0a6fa4f886 AP_SurfaceDistance: Start library for tracking the floor/roof distance 2024-05-28 09:55:36 +10:00
Iampete1 e10b4abad8 ChibiOS: UART: Add support for RS-485 Driver Enable RTS flow control 2024-05-28 09:48:19 +10:00
Iampete1 e6a0abdfce AP_HAL_ChibiOS: hwdef.py: find alt function for UART RTS and add to init struct 2024-05-28 09:48:19 +10:00
Iampete1 0959930289 AP_BoardConfig: update RTSCTS param values for new option 2024-05-28 09:48:19 +10:00
Iampete1 50fd01af97 GCS_MAVLink: use new `flow_control_enabled` helper 2024-05-28 09:48:19 +10:00
Iampete1 713eda617f AP_Scripting: allow new flow control type in `set_flow_control` binding 2024-05-28 09:48:19 +10:00
Iampete1 d340f37678 AP_HAL: UARTDriver: Add new flow control option "FLOW_CONTROL_RTS_DE" for RS485 driver enable. 2024-05-28 09:48:19 +10:00
Thomas Watson 0956b4f65d AP_HAL_SITL: remove deprecated --uartX options
Code remains to check for use of these options and give an error which
contains the correct option to use, due to the non-intuitive mapping
between --uartX and --serialN.

A future version will remove that code too.
2024-05-28 09:23:39 +10:00
Thomas Watson d2456f4199 SITL: remove references to legacy UART order 2024-05-28 09:23:39 +10:00
burgeruser 458cb0a1c9 AP_HAL_ChibiOS: bi-directional dshot on iomcu F103 8MHz 2024-05-28 06:56:14 +10:00
Rhys Mainwaring 33d51d52ad AP_DDS: ensure zero rotation quaternions are normalised
- ROS expects quaternions to be normalised and the default message constructor does not enforce this.
- Fix normalisation for pose stamped.

Signed-off-by: Rhys Mainwaring <rhys.mainwaring@me.com>
2024-05-26 09:46:48 +10:00
Stephen Dade d16ff40162 RC_Channel: detect duplicate aux functions with an ID >256 2024-05-24 09:57:17 +10:00
Paul Riseborough 91423d4c71 AP_NavEKF3: Remove unncessary local position height reporting offset
The offset generated by the EK3_OGN_HGT_MASK parameter bit 2 option is applied to the baro or range finder sensor so it does not have to be applied to the local position height.
2024-05-23 10:35:51 +10:00
Paul Riseborough 5fded75eb6 AP_NavEKF3: Adjust sensor height when EK3_OGN_HGT_MASK bit 2 is set 2024-05-23 10:35:51 +10:00
David O'Connor 77adb5586d AP_HAL_ChibiOS: Added mag and dataflash logging support to AnyLeaf H7 2024-05-23 09:48:02 +10:00
Peter Barker b7cf418d1e GCS_MAVLink: allow handling of AP_MAVLINK_MSG_HIL_GPS_ENABLED to be compiled out 2024-05-23 09:16:32 +10:00
Peter Barker 05b8c28ea9 AP_GPS: allow handling of AP_MAVLINK_MSG_HIL_GPS_ENABLED to be compiled out 2024-05-23 09:16:32 +10:00
Alex Burka 8e399cffbe AP_InternalError: fix signedness issue with snprintf 2024-05-22 23:22:23 +10:00
Iampete1 0c6f396438 AP_Scripting: docs: document all functions currently documented on the wiki 2024-05-22 18:13:53 +10:00
Peter Barker 482342340d hwdef: fold minimal_GPS.inc into sole user 2024-05-22 18:03:06 +10:00
Randy Mackay 72b5efd8b3 AP_Mount: serial backends gets instance 2024-05-22 18:00:22 +10:00
Randy Mackay 99626b73ff AP_Mount: SToRM32_serial inherits from serial backend 2024-05-22 18:00:22 +10:00
Randy Mackay 7fc00efe7e AP_Mount: Viewpro inherits from serial backend 2024-05-22 18:00:22 +10:00
Randy Mackay 790b5e8565 AP_Mount: Siyi inherits from serial backend 2024-05-22 18:00:22 +10:00
Randy Mackay 1e777390b2 AP_Mount: add Backend_Serial 2024-05-22 18:00:22 +10:00
Andy Piper 3a4fdb16a8 AP_RCTelemetry: add support for baro/vario CRSF frames 2024-05-22 17:15:04 +10:00
Andy Piper 1e2621466c AP_Frsky_Telem: factor out vspeed and nav alt 2024-05-22 17:15:04 +10:00
Andy Piper 9112b14414 AP_RCProtocol: add frame ids for CRSF baro/vario 2024-05-22 17:15:04 +10:00
James O'Shannessy a5e11911fc AP_Mount: Only save converted mount if mount was previously set in the first place
The mount library force configures the mount type on conversion, even if the mount was never configured in the first place
2024-05-22 17:11:40 +10:00
Andrew Tridgell 5fd4e23fa9 AP_Compass: removed IST8310 overrun message
this is not useful and just causes concern to users. Any small bus
delay can trigger this. We have health monitoring at a higher level
2024-05-22 14:51:15 +10:00
Peter Barker 24e54dac88 AC_WPNav: remove un-needed initialisation 2024-05-21 15:52:51 +10:00
Nick Exton 0af4649705 AP_Mount: In Servo backend, report attitude as demanded servo angles, not target angles 2024-05-21 14:27:28 +09:00
Nick Exton e17439287b AP_Mount: In Servo backend, add overrides for has_roll_control() and has_tilt_control() 2024-05-21 14:27:28 +09:00
Nick Exton 0e090faf05 AP_Mount: Add roll_range_valid() and pitch_range_valid() functions
Equivalent to yaw_range_valid().
2024-05-21 14:27:28 +09:00
Bob Long 7e8f9c72fb AP_MotorsTri: reverse-frame cleanup and fixes
- fix motor test order for reverse frame
- add frame type string for reverse frame
- fix initialization of _pitch_reversed flag
2024-05-21 15:20:27 +10:00
Bob Long dc3f2c9724 AP_Motors_test: add tri frames to json output 2024-05-21 15:20:27 +10:00
Nick Exton 8b5539c055 AP_Mount: Clarify angle frames of set_angle_target() 2024-05-21 14:28:38 +10:00
Iampete1 44bd77d49e AP_BattMonitor: FuelLevel_Ananlog: set has_current true so capacity is reported 2024-05-21 10:07:48 +10:00
Andrew Tridgell 54b6349a2a HAL_SITL: implement wind rate of change 2024-05-21 09:59:37 +10:00
Andrew Tridgell 1603869140 SITL: added SIM_WIND_TC
time constant for wind changes
2024-05-21 09:59:37 +10:00
Peter Barker 36e385fb22 AP_NavEKF3: set-origin failure comment improved 2024-05-21 09:56:02 +10:00
Randy Mackay 4e2dd7c399 AP_NavEKF3: accept set origin even when using GPS 2024-05-21 09:56:02 +10:00
muramura ddae068657 AP_Param: Summarize the type definitions settings 2024-05-21 09:46:32 +10:00
Iampete1 91cdea1a8d AP_Scripting: examples: fault_handling.lua: ignore errors. 2024-05-21 09:42:22 +10:00
Iampete1 3a7bf8dd7d AP_Scripting: ignore lua language check issues resulting from https://github.com/ArduPilot/ardupilot/pull/26939 2024-05-21 09:42:22 +10:00
Iampete1 d2e95583d6 AP_Scripting: docs: update 2024-05-21 09:42:22 +10:00
Iampete1 003ccc38c6 AP_Scripting: generator allow more types for uint32 prams and dont add class keyword to globals 2024-05-21 09:42:22 +10:00
Iampete1 cc159a44d5 AP_Scripting: tests: add config files for checks and docs generation 2024-05-21 09:42:22 +10:00
Iampete1 5bb5f442e1 AP_Scripting: ignore lua-language-server-errors 2024-05-21 09:42:22 +10:00
rmaia 07c854db57 AP_OSD: add BTFL sidebar symbols
Adds the sidebar symbols translation to BTFL fonts, so sidebar is properly displayed in DJI O3 OSD.
2024-05-21 09:23:49 +10:00
rmaia e07980db43 AP_OSD: Add configurable sidebar horizontal and vertical size extensions 2024-05-21 09:21:56 +10:00
Randy Mackay 19ea0944b1 AP_SerialManager: TYPE param renamed to MAVLink 2024-05-21 08:38:59 +10:00
Randy Mackay 1da3c24850 AP_EFI: TYPE param renamed to MAVLink 2024-05-21 08:38:59 +10:00
Randy Mackay fcc2e2ac5a AC_PrecLand: TYPE param renamed to MAVLink 2024-05-21 08:38:59 +10:00
Randy Mackay 31720d2c83 AP_GPS: TYPE param value renamed to MAVLink 2024-05-21 08:38:59 +10:00
Andrew Tridgell 5cf2c2740e AP_Terrain: added parameter for terrain cache size 2024-05-17 10:18:13 +10:00
Maxim Buzdalov ada091f1fc AP_IOMCU: add support for Extended DShot Telemetry v2 2024-05-15 17:29:19 +10:00
Maxim Buzdalov 1232e810d4 AP_HAL: add support for Extended DShot Telemetry v2 2024-05-15 17:29:19 +10:00
Maxim Buzdalov 43937ddeed AP_HAL_ChibiOS: add support for Extended DShot Telemetry v2 2024-05-15 17:29:19 +10:00
Maxim Buzdalov 0022c3aa72 AP_ESC_Telem: add support for Extended DShot Telemetry v2 2024-05-15 17:29:19 +10:00
bnsgeyer 8a42a29ef7 AC_AttitudeControl: add comments for system ID disturbance input code 2024-05-14 23:16:52 -04:00
bnsgeyer c2e99dc50e AC_AttitudeControl: implement suggested changes 2024-05-14 23:16:52 -04:00
bnsgeyer 84e52378cf AC_PosControl: add support for sysid of vel and pos loops 2024-05-14 23:16:52 -04:00
Peter Barker 9f0e191505 GCS_MAVLink: deny attempt to do partial upload while mission transfer in progress
fixes an internal error where we make sure resources are not allocated before allocating upload resources.

The user may receive a DENIED message if they move a waypoint before an item has been transfered to the vehicle.
2024-05-15 12:26:34 +10:00
Andy Piper 2891b37807 AP_HAL_ChibiOS: add SDMODELV2 2024-05-15 07:27:46 +10:00
Andrew Tridgell 188df1312d AP_Scripting: fixed float register save/restore in setjmp/longjmp
the register save must happen before the setjmp() call, which means
outside of the LUAI_TRY() macro. We also should be saving all 32
floating point registers
2024-05-15 06:47:44 +10:00
Andrew Tridgell 09df079c19 AP_Scripting: added example script that causes a hard fault
this exercises rapid fault handling
2024-05-15 06:47:44 +10:00
Andy Piper 2352990d90 AC_AutoTune: zero out D_FF during twitching 2024-05-14 16:33:38 +09:00
Iampete1 0bb51a31ea AP_HAL_ChibiOS: remove setting of ROMFS flags 2024-05-14 10:05:51 +10:00