Commit Graph

25 Commits

Author SHA1 Message Date
Thomas Watson a3aa278589 AP_HAL_SITL: improve periph simulation efficiency
Removes busywait for simulation state packet, dramatically reducing CPU
usage. The dominant wait time in AP_Periph is 1024 microseconds as this
is the default value of HAL_PERIPH_LOOP_DELAY_US, so a 1ms wait is
unlikely to be a problem.
2024-07-17 09:06:16 +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 69df468b88 AP_HAL_SITL: use SocketAPM_native 2024-01-03 12:14:47 +11:00
Thomas Watson 9044632315 AP_HAL_SITL: eliminate internal legacy UART ordering/references
Legacy command line arguments are kept to avoid breaking users.

The vestigial `_tcp_client_addr` variable is removed.

Serial port status messages are updated to a slightly different format
to clarify the numbering scheme being used and prompt any external
consumers to update.
2023-12-19 06:53:15 +11:00
Andrew Tridgell 58cf4f65a9 HAL_SITL: use SocketAPM for CAN multicast and SITL_Periph state 2023-11-25 12:19:43 -08:00
Peter Barker c953b4e512 AP_HAL_SITL: track simulated ADSB vehicles relative to simulation origin
removes dependence on ArduPilot AHRS library

Also removes vehicles based off vehicle simulated position rather than distance-from-origin, so you always have company
2023-11-02 15:52:42 +11:00
Andrew Tridgell bf229b3dc1 HAL_SITL: enable ADSB simulator in SITL periph 2023-10-02 21:45:28 +11:00
Andrew Tridgell 18f3ab98e4 HAL_SITL: allow for I2C simulated devices in SITL AP_Periph
this allows for SMBbus batteries and other I2C simulated devices
2023-10-02 21:45:28 +11:00
Andrew Tridgell f076f7c4f1 HAL_SITL: use nan to indicate no actuator value
this allows for multiple periph nodes, each providing a subset of
motors/servos
2023-08-24 13:06:40 +10:00
Andrew Tridgell 823ac579cd HAL_SITL: added debug for multicast startup
useful for CI diagnosis
2023-08-24 13:06:40 +10:00
Andrew Tridgell 4a07f7a4eb HAL_SITL: block in MC read for packet in AP_Periph
can't advance time without a new multicast packet
2023-08-24 13:06:40 +10:00
Andrew Tridgell 1144036a8d HAL_SITL: support servo and ESC output in SITL AP_Periph
use another UDP socket back to the main firmware from peripheral
2023-08-24 13:06:40 +10:00
Andrew Tridgell b76e2342db HAL_SITL: added "Waiting for" message
this is needed for test.CAN autotest as it waits for periph startup
2023-08-24 13:06:40 +10:00
Andrew Tridgell 6d81f34db8 HAL_SITL: added --defaults handling to periph SITL 2023-08-24 13:06:40 +10:00
Andrew Tridgell 65ced84a0e HAL_SITL: handle periph voltage/current and improve timing 2023-08-24 13:06:40 +10:00
Andrew Tridgell a42a2fec2a HAL_SITL: implement multicast comms for SITL AP_Periph 2023-08-24 13:06:40 +10:00
Andrew Tridgell 85c2c3609b AP_HAL_SITL: removed native_millis/micros 2023-08-24 13:06:40 +10:00
Andrew Tridgell 6e952bae17 HAL_SITL: allow override of serial devices in SITL periph 2023-07-12 17:06:02 +10:00
Andrew Tridgell fca6f2cba2 HAL_SITL: fixed crash with command line args to SITL periph 2023-07-12 17:06:02 +10:00
Andrew Tridgell b6ae79c700 HAL_SITL: fixed 64 bit periph build 2023-04-10 14:46:54 +10:00
bugobliterator 8e81ee0292 AP_HAL_SITL: add support for starting node in maintenance mode 2022-07-27 18:18:03 +10:00
Peter Barker 9ebd0cdeed AP_HAL_SITL: use SITL::SerialDevice in place of pipe for communication 2021-11-06 16:54:07 +11:00
Peter Barker 1ab8a3e3aa AP_HAL_SITL: make simulated GPS work as a SerialDevice 2021-10-21 12:09:21 +11:00
bugobliterator 49d934eb42 AP_HAL_SITL: add support for multiple periph instances 2021-03-12 16:32:36 +09:00
bugobliterator 09a0d8d0c0 HAL_SITL: add support for AP_Periph SITL build 2020-11-04 19:59:40 +11:00