Commit Graph

413 Commits

Author SHA1 Message Date
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
Andrew Tridgell
d87404adfa AP_Scripting: added mcu_temperature binding 2024-06-27 10:11:14 +10: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
Iampete1
cb22a6389d AP_Scripting: add virtual class in docs to avoid need nil check warning 2024-06-07 06:30:22 +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
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
Iampete1
713eda617f AP_Scripting: allow new flow control type in set_flow_control binding 2024-05-28 09:48:19 +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
a4a8923e1e AP_Scripting: generator: add return count to manual bindings 2024-05-07 09:51:53 +10:00
Iampete1
6e75f7c80f AP_Scripting: update docs generator to show ap_objects as possibly nil 2024-05-07 09:51:53 +10:00
Peter Barker
d1de760ee4 AP_Scripting: enable AP_Scheduler for CubeOrange-periph-heavy
... we use the scehduler in AP_Motors, which is compiled when making heavy-periph
2024-05-01 17:53:44 +10:00
Andrew Tridgell
bac99dc7ac AP_Scripting: added bindings for AC_PrecLand 2024-03-06 09:39:51 +11:00
Randy Mackay
f2b66fd179 AP_Scripting: add VisualOdom bindings 2024-02-28 18:52:37 +11:00
Peter Barker
53fd9056d8 AP_Scripting: use AP_ARMING_ENABLED and AP_COMPASS_ENABLED
... in place of periph-specific checks
2024-02-27 11:02:48 +11:00
Clyde McQueen
b486c1cb46 AP_Scripting: expose sub rangefinder methods 2024-02-21 18:59:20 -03:00
Iampete1
5907e49cb1 AP_Scripting: ensure that all pass by refence values are initialized 2024-02-20 11:05:36 +11:00
Peter Barker
2263dced74 AP_Scripting use scheduler semaphore only if AP_SCHEDULER_ENABLED 2024-02-15 12:17:07 +11:00
Iampete1
46e4588cf7 AP_Scripting: add file system crc32 binding 2024-02-15 07:36:39 +11:00
Peter Barker
40f0001aea AP_BattMonitor: fix compilation when scripting in but scripted-battery out
Co-authored-by: Peter Hall <33176108+IamPete1@users.noreply.github.com>
2024-02-14 23:43:18 +11:00
Peter Barker
3f34eb12b0 AP_Scripting: include extern-hal line to fix compilation
this external line was coming in from a header file somewhere...
2024-02-13 20:57:12 +11:00
Peter Barker
bb8047c026 AP_Scripting: correct compilation with AP_FILESYSTEM_FORMAT_ENABLED is false
Co-authored-by: Peter Hall <33176108+IamPete1@users.noreply.github.com>
2024-02-12 09:38:29 +11:00
Hayden Donald
52409d6765 AP_Scripting: Add gyro/accel consistency checks to lua
Added the accels_consistent and gyros_consistent methods to the lua bindings
2024-02-09 18:54:43 +11:00
Hayden Donald
c259d11cd6 AP_Scripting: Add getting of gyro/accel values
Added the ability to get gyro/accel from LUA
2024-02-08 15:24:12 +11:00
Hayden Donald
baf8958ee0 AP_Scripting: Add send_text to display binding
Added a notify:send_text and notify:release_text binding to override the text displayed on a display with custom text
2024-02-07 23:52:30 +00:00
Hayden Donald
14aea255e6 AP_Scripting: Add calibrating method
Add the calibrating method to lua so we can see if the device is currently calibrating
2024-02-07 18:36:33 +11:00
Hayden Donald
85a8b6c414 AP_Scripting: Add filesystem format
Added the ability to format the SD card from LUA
2024-02-07 18:35:36 +11:00
Peter Barker
bed976a8fc AP_Scripting: add and use AP_BATTERY_ENABLED 2024-02-06 11:01:02 +11:00
Andrew Tridgell
c84459f518 AP_Scripting: added reboot() binding to AP_Periph 2024-01-21 12:30:08 +11:00
Andrew Tridgell
9202a33ff4 AP_Scripting: added networking bindings and allow uart calls without GCS
this allows for useful lua scripts on non-heavy peripherals
2024-01-12 19:06:49 -08:00
Michael du Breuil
ae256b168e AP_Scripting: Add bindings for jump to landing and abort in the mission 2024-01-09 10:55:06 +11:00
Bob Long
1ffda7ef3c AP_Scripting: add scripting backend
AP_BattMonitor_Scripting: whitespace consistency
2024-01-09 07:53:59 +11:00
Peter Mullen
a83ed6b730 AP_Scripting: Add LUA interface to access Range Finder state 2024-01-02 11:31:02 +11:00
Tom Pittenger
47fdf2295c AP_Scripting: add bindings for ahrs.wind_alignment and ahrs.head_wind 2023-12-26 10:20:23 +11:00
Peter Barker
22c1019767 AP_Scripting: correct compilation when AP_RTC is compiled out 2023-12-12 14:35:25 +11:00
Iampete1
782605e7ea AP_Scripting: CANSensor: Add filtering of incoming frames
Co-authored-by: Andras Schaffer <eosbandi@gmail.com>
2023-12-12 11:32:04 +11:00
Andrew Tridgell
75217ec1e6 AP_Scripting: added readstring for uarts
this is much more efficient than reading a byte at a time
2023-12-12 07:42:15 +11:00
Andrew Tridgell
ffb7328ede AP_Scripting: review fixes
thanks Pete!
2023-12-11 18:00:38 +11:00
Andrew Tridgell
90c12d4db3 AP_Scripting: added stat() binding for filesystem 2023-12-11 18:00:38 +11:00
Andrew Tridgell
1e1255c8f0 AP_Scripting: added sendfile() API on sockets 2023-12-11 18:00:38 +11:00
Andrew Tridgell
f924497194 AP_Scripting: added poll bindings 2023-12-11 18:00:38 +11:00
Andrew Tridgell
3446ff78d7 AP_Scripting: added isdirectory() 2023-12-11 18:00:38 +11:00
Andrew Tridgell
9065baa329 AP_Scripting: added bindings for SocketAPM 2023-12-11 18:00:38 +11:00
Andy Piper
b5ef11797b AP_Scripting: add success status to serialLED:send and serialLED:set_RGB 2023-11-20 19:22:20 +11:00
Andrew Tridgell
3e0e32a409 AP_Scripting: support 2nd cylinder in EFI 2023-11-17 13:09:02 +11:00
Iampete1
ae2ab08b1f AP_Scripting: add bindings for fence 2023-11-07 07:52:14 +11:00
Andrew Tridgell
96f5a1cb2b AP_Scripting: added bindings for telemetry data for ESCs
allows more complete ESC protocol implementation in scripting
2023-11-06 07:12:35 +11:00
Iampete1
66b8fd95ad AP_Scripting: add binding for GCS last seen time 2023-11-04 19:10:36 +11:00
Andrew Tridgell
a190dfe24a AP_Scripting: added get_cell_voltage() API and arming check example
this allows for cell imbalance to be checked as an arming check using
a lua script
2023-10-25 07:31:24 +11:00
Iampete1
105801c5b0 AP_Scripting: add support for dependencty on manual methods, remove handling of mission commands without AP_Mission 2023-10-17 10:23:20 +11:00
Iampete1
77e2d07979 AP_Scripting: add lots off missing binding dependencies 2023-10-17 10:23:20 +11:00
Iampete1
6a8e07e7ae AP_Scripting: Generator: allow unused enum loader function 2023-10-17 10:23:20 +11:00
Iampete1
cf2ba23089 AP_Scripting: generator: emit dependancys for operators 2023-10-17 10:23:20 +11:00
Iampete1
fc68bf8979 AP_Scripting: don't include CAN support on periph if there is only one CAN port 2023-10-17 10:23:20 +11:00
Iampete1
a068569f8a AP_Scripting: add basic print 2023-10-04 18:34:08 +11:00
Andy Piper
dd7f65ec51 AP_Scripting: support set_num_neopixel_rgb() 2023-10-04 18:06:17 +11:00
Clyde McQueen
924a391d55 AP_Scripting: add sub bindings for joystick buttons 2023-09-27 08:14:36 +10:00
Iampete1
7bbd4a7c7d AP_Scripting: add some missing dependencies 2023-09-26 11:29:42 +10:00
Iampete1
82628c2559 AP_Scripting: bindings: allow GCS without high latency 2023-09-26 11:29:42 +10:00
Iampete1
6ae2fc2ca0 AP_Scripting: support per method dependencies 2023-09-26 11:29:42 +10:00
Iampete1
d2e3bd700c AP_Scripting: add argcheck warning to defualt userdata creation functions 2023-08-29 10:16:36 +10:00
Shiv Tyagi
0d87479314 AP_Scripting: make follow bindings dependant on AP_FOLLOW_ENABLED 2023-08-15 09:57:35 +10:00
Iampete1
63666ea83a AP_Scripting: generator: fix dependancy start and end miss-match 2023-08-07 12:33:01 +10:00
rishabsingh3003
b6a54bbef9 AP_Scripting: Add scripting proximity driver bindings 2023-08-03 08:02:49 +09:00
Randy Mackay
0fd87667e5 AP_Scripting: AR_PosControl bindings 2023-08-01 09:16:17 +10:00
Randy Mackay
5e3c0d4ead AP_Scripting: add AR_AttitudeControl srate binding
also add AP_Vehicle:get_steering_and_throttle binding
2023-08-01 09:16:17 +10:00
Andrew Tridgell
0f8d618102 AP_Scripting: added bindings for VTOL motor loss
this allows a script to take an action on loss of a VTOL motor
2023-07-13 08:03:52 +10:00
Iampete1
1c5f3c708a AP_Scripting: add new mavlink binding to block commands 2023-07-04 10:20:42 +10:00
Peter Barker
f96266b227 AP_Scripting: add option to disable relay and servorelay libraries 2023-06-20 09:36:39 +10:00
Andrew Tridgell
51c4c047d6 AP_Scripting: added log_file_content method
this allows for aerobatics to log the schedule for easier log review
2023-06-14 19:02:23 +10:00
Peter Barker
d519ab604e AP_Scripting: allow AP_SCRIPTING_ENABLED to come from hwdef files 2023-06-09 16:10:52 +10:00
Tatsuya Yamaguchi
7ebc2256bc AP_Scripting: add is_landing and is_taking_off binding 2023-05-26 10:59:09 -07:00
bugobliterator
949f0e36d0 AP_Scripting: change receive_msgid to register_rx_msgid 2023-05-24 19:03:28 +10:00
bugobliterator
d056a33dca AP_Scripting: use _chan to mark the methods that are mavlink channel based 2023-05-24 19:03:28 +10:00
bugobliterator
076d00fd1e AP_Scripting: add mavlink support to scripting 2023-05-24 19:03:28 +10:00
Hayden
09fd157b9b AP_Scripting: Add health checks
Added health checks for the Baro, InertialSensor, IOMCU, and Compass
2023-05-24 12:39:47 +10:00
Peter Barker
772eda555b AP_Scripting: correct dependencies on bindings 2023-05-16 10:31:01 +10:00
Randy Mackay
2be750eaf8 AP_Scripting: camera state bindings use Vector2f 2023-05-08 21:26:35 +10:00
Randy Mackay
98636287fc AP_Scripting: camera state gets tracking 2023-05-08 21:26:35 +10:00
Iampete1
990db62235 AP_Scripting: generator: don't expose creation functions to all read only userdata 2023-05-08 19:43:24 +10:00
Iampete1
7a129e73cb AP_Scripting: bindings: remaining EFI_State to read and write 2023-05-08 19:43:24 +10:00
Iampete1
8fa2472148 AP_Scripting: userdata: allow read of enums and userdata 2023-05-08 19:43:24 +10:00
Randy Mackay
edc2ea7bf6 AP_Scripting: camera state uses focus_type and focus_value 2023-04-26 22:55:47 +10:00
Randy Mackay
82d03e45e0 AP_Scripting: integrate camera_state_t scope change 2023-04-19 17:31:46 +10:00
Randy Mackay
4090c50e8f AP_Scripting: camera set_zoom binding replaces set_zoom_step 2023-04-19 17:31:46 +10:00
Robert Taylor
59cb583d63 AP_Scripting: Add efi get_state function 2023-04-18 10:31:01 +10:00
Robert Taylor
7b64d09dc4 AP_Scripting: Make EFI bindings readable 2023-04-18 10:31:01 +10:00
Randy Mackay
1a9189d602 AP_Scripting: add binding for camera semaphore 2023-04-13 07:04:46 +10:00
Randy Mackay
1a375f1ff5 AP_Scripting: remove mount get_camera_state
AP_Camera scripting backend provides access
2023-04-13 07:04:46 +10:00
Randy Mackay
554d52b6fe AP_Scripting: add AP_Camera::get_state bindings 2023-04-13 07:04:46 +10:00
Randy Mackay
03148a113f AP_Scripting: add camera bindings 2023-04-13 07:04:46 +10:00
Peter Barker
80ca43ad37 AP_Scripting: correct depends for AP_Winch 2023-04-10 09:20:47 +10:00
Andrew Tridgell
19a46fff0f AP_Scripting: added vehicle:reboot() binding 2023-03-24 08:31:25 +11:00
Peter Barker
8e1decc730 AP_Scripting: correct compilation when AP_EFI_Scripting is not enabled 2023-03-14 12:09:26 +11:00
Bob Long
74279d9b32 AP_Scripting: add fuel_pressure_status binding 2023-03-07 20:35:13 +09:00
Peter Hall
9ac488d500 AP_Scripting: add binding to set motors external limits 2023-03-07 10:12:30 +11:00
Peter Hall
23fb73085a AP_Scripting: add bindings to get throttle, forward, lateral and spool state from motors 2023-03-07 10:12:30 +11:00
Andrew Tridgell
bc3fc9a317 AP_Scripting: added bindings for motors roll, pitch, yaw outputs 2023-03-07 10:12:30 +11:00