Commit Graph

349 Commits

Author SHA1 Message Date
Peter Barker 305a8ad48a AP_Scripting: add and use HAL_QUADPLANE_ENABLED 2021-09-14 11:23:18 +10:00
Willian Galvani e563919dd2 AP_Scripting: update to use capacity_remaining_pct() as a bool 2021-09-08 17:17:41 +10:00
Randy Mackay e8155bc47c AP_Scripting: add AP_Vehicle set_target_pos_NED and posvelaccel_NED bindings 2021-08-26 11:25:54 +09:00
Randy Mackay a3b4c8efd8 AP_Scripting: minor reorder of AP_Vehicle bindings
this is a slightly better grouping
2021-08-26 11:25:54 +09:00
Randy Mackay 5eb65c9a1f AP_Scripting: add AHRS:get_relative_position_NED_origin binding 2021-08-26 11:25:54 +09:00
Peter Barker 9dd02f0c2b AP_Scripting: add and use HAL_BUTTON_ENABLE 2021-08-25 19:03:42 +10:00
Randy Mackay 8548695e5d AP_Scripting: add bindings for get_circle_radius, set_circle_rate 2021-08-25 18:39:09 +10:00
Randy Mackay df187d5d3f AP_Scripting: add optical flow bindings 2021-08-24 16:49:04 +09:00
Peter Hall 2ec36d7f7f AP_Scripting: add quadplane in_assisted_flight binding 2021-08-18 18:07:20 +10:00
Peter Hall 5eee3c4eb0 AP_Scripting: add binding to get RC_Channel by number 2021-08-17 11:01:00 +01:00
Andrew Tridgell 2d6070d449 AP_Scripting: added has_valid_input binding 2021-08-10 08:48:10 +10:00
Iampete1 4b28f53644 AP_Scripting: add change alt frame method to location userdata 2021-07-28 18:19:23 +10:00
Iampete1 9047b19e59 AP_Scripting: bindings for CANFrame and ScriptingCANBuffer 2021-07-27 09:04:17 +10:00
Iampete1 8c7cad8663 AP_Scripting: generator support depends keyword on AP_Object 2021-07-27 09:04:17 +10:00
Tatsuya Yamaguchi a3e176284d AP_Scripting: add AP_InertialSensor binding 2021-07-23 09:32:04 +09:00
Iampete1 d158199a7a AP_Scripting: add bindings and example for dynamic motor mixer 2021-07-20 09:19:28 +10:00
Iampete1 a6795a8e45 AP_Scripting: support depends keyword on userdata 2021-07-20 09:19:28 +10:00
Iampete1 aad459d447 AP_Scripting: support array userdata feilds 2021-07-20 09:19:28 +10:00
CallanDaniel c34322f6ce AP_Scripting: add set_origin and initialised bindings
added bindings and example scripts
2021-07-08 11:54:37 +09:00
bugobliterator 027d8b4aea AP_Scripting: add support for controlling onvif camera using lua script 2021-07-07 18:57:25 +10:00
Michael Oborne a81da13c13 AP_Scripting: add support for configuring ONVIF using scripting 2021-07-07 18:57:25 +10:00
CallanDaniel a617175881 AP_Scripting: add get_origin and set_home bindings
added bindings and example scripts for set_home and get_origin
2021-06-23 10:11:02 +09:00
Peter Hall c239e71de5 AP_Scripting: add motor matrix set throttle factor binding 2021-05-25 09:01:06 +09:00
Andy Piper f1078d00a3 AP_Scripting: add in ESC telemetry bindings and make optional 2021-05-12 17:01:11 +10:00
Iampete1 15362484bc AP_Scripting: add do_aux_function binding and example 2021-05-04 09:05:56 +10:00
Iampete1 82228469c8 AP_Scripting: add reset_remianing battery binding 2021-03-31 19:21:59 +11:00
Iampete1 8b278b52b3 AP_Scripting: add GPIO inputs and exmaple 2021-03-30 10:44:43 +11:00
Iampete1 e0621179ef AP_Scripting: add PWMSource bindings 2021-03-30 10:44:43 +11:00
Iampete1 590be4049c AP_Scripting: support userdata alias 2021-03-30 10:44:43 +11:00
Iampete1 9d739cfa42 AP_scripting: add bindings and example for analog inputs 2021-03-30 10:44:43 +11:00
Randy Mackay a17086816f AP_Scripting: proximity bindings depend upon HAL_PROXIMITY_ENABLED 2021-03-26 16:22:46 +09:00
Emre Saldiran 1a3a2a0437 AP_Scripting: add set_target_posvel_NED binding 2021-03-24 08:55:48 +09:00
Rishabh 06a7086562 AP_Scripting: Add proximity status binding 2021-03-23 10:02:18 +09:00
Iampete1 166aedf1be AP_Scripting: add I2CDevice to auto bindings 2021-03-17 18:50:05 +11:00
Iampete1 7b3097972b AP_Scripting: generator: support pointer semaphore flag 2021-03-17 18:50:05 +11:00
Iampete1 c54634e86b AP_Scripting: generator: finish off refence access implmentation 2021-03-17 18:50:05 +11:00
Iampete1 8effa59d10 AP_Scripting: generator: support method alias and sanitised names 2021-03-17 18:50:05 +11:00
Peter Hall 9997981702 AP_Scripting: generator: support literal singltons that do not need to be fetched 2021-03-17 18:50:05 +11:00
Iampete1 bf7920f2d7 AP_Scripting: use helper for not supported error saving 1K of flash 2021-02-18 15:12:58 -07:00
Peter Hall fc95664580 AP_Scripting: add GCS send_named_float binding 2021-02-17 18:49:20 +11:00
Iampete1 1395f9ce79 AP_Scripting: add 6DoF motors matrix bindings and example 2021-02-09 12:43:54 +09:00
Iampete1 28e8c5e56e AP_Scripting: add 6DoF attitude control bindings and example 2021-02-09 12:43:54 +09:00
WillyZehnder acfe815305 AP_Scripting: make get_control_mode_reason available to lua 2021-02-04 08:32:35 +09:00
yaapu 4fbba17506 AP_Scripting: added bindings for frsky telemetry library 2021-01-29 09:55:22 +11:00
Iampete1 5c397d4674 AP_Scripting: add MotorMatrix bindings 2021-01-26 11:07:36 +09:00
Iampete1 9be19b0bfa AP_Scripting: add plane spesific quadplane in_vtol_mode binding 2021-01-19 11:18:10 +11:00
Iampete1 7de14f2e2f AP_Scripting: desc: update AP_Terrain depends 2021-01-19 11:18:10 +11:00
Iampete1 2a75432fa2 AP_Scripting: Generator: support depends 2021-01-19 11:18:10 +11:00
TsuyoshiKawamura 441be7e04b AP_Scripting: add rangefinder status_orient 2021-01-05 11:03:42 +11:00
Peter Hall 1f7d796845 AP_Scripting: add fast param bindings and example 2021-01-05 10:55:36 +11:00
yaapu 89f0ed2f8f AP_Scripting: added bindings and example for waypoint info 2020-12-10 12:39:44 +11:00
Andrew Tridgell c731e77607 AP_Scripting: added mission clear and offset_bearing bindings 2020-12-08 12:27:00 +11:00
Randy Mackay 2b9fb79d72 AP_Scripting: add bindings for set_posvelyaw_source and get_vel_innovations 2020-11-20 16:43:44 +09:00
Iampete1 e95376fbef AP_Scripting: add notify LED get RGB binding and example 2020-11-02 17:40:21 -07:00
Iampete1 0668c5c584 AP_Scripting: support pass by refence on none bool return 2020-11-02 17:40:21 -07:00
Iampete1 2bdcadd785 AP_Scripting: examples to load and save missions to the SD card 2020-10-28 19:21:26 +11:00
Randy Mackay 5eae007d49 AP_Scripting: add binding for ahrs get_variances 2020-10-21 08:58:45 +09:00
Randy Mackay d31a00a6a1 AP_Scripting: replace prearm_healthy binding with healthy 2020-10-07 11:53:07 +11:00
Gone4Dirt 39788aa4f7 AP_Scripting: Add rc norm_input_ignore_trim binding 2020-09-09 17:50:31 +10:00
Pierre Kancir af1bdcfdfc AP_Scipting: fix memleak on generator 2020-08-26 17:06:23 +10:00
Randy Mackay eddbf7a755 AP_Scripting: fix get_control_output binding
co-author: @wicked.shell.scripts@gmail.com
2020-08-20 14:09:29 +09:00
Randy Mackay 39d2079c06 AP_Scripting: add set_angle and set_range bindings 2020-08-20 14:09:29 +09:00
Randy Mackay 94b2381399 AP_Scripting: add set_output_norm binding 2020-08-20 14:09:29 +09:00
ashvath100 a3b435e912 AP_Scripting: add get_control_output binding 2020-08-20 14:09:29 +09:00
Andrew Tridgell 822d3b2a3a AP_Scripting: added get_accel AHRS method
complements get_gyro() method
2020-08-16 08:55:27 -07:00
Tsuyoshi Kawamura 67ad05609f AP_Scripting: add proximity bindings 2020-08-07 17:32:16 -07:00
Tsuyoshi Kawamura e2eed88ca3 AP_Scripting: add rangefinder bindings 2020-08-07 17:32:16 -07:00
Siddharth Purohit 913c00dd96 AP_Scripting: add default case to fix uninitialised use situation 2020-07-30 20:28:48 +10:00
Michael du Breuil 1c789c66c3 AP_Scripting: Fix generator for nullable types with multiple return values 2020-07-28 16:22:17 -07:00
Iampete1 2ad81fb425 AP_Scripting: generator: static cast all basic return types 2020-07-28 13:47:35 +10:00
Iampete1 4ad7eeb7a9 AP_Scripting: add RC Channel object bindings 2020-07-28 13:47:35 +10:00
Andrew Tridgell 259cf10373 AP_Scripting: added rotate binding to Vector2f 2020-07-06 14:46:48 +10:00
Michael du Breuil ff007dd017 AP_Scripting: Allow generator to cope with windows line endings
Also fixes allowing an extra new line on the depends entries to be
emitted, as well as a possible stack overflow in the generator if
you inserted a malicious comment.
2020-06-24 09:37:36 -07:00
Randy Mackay d665a0a440 AP_Scripting: add binding for set_desired_steering_and_throttle 2020-06-24 08:34:41 +09:00
Iampete1 dc34dfb003 AP_Scripting: add guided mode set angle 2020-06-19 10:09:35 +10:00
ashvath100 042ca7861f AP_Scripting: get_output_scaled method 2020-06-12 14:48:02 +10:00
Andrew Tridgell 1bc9001267 AP_Scripting: added ahrs:get_EAS2TAS() 2020-06-04 09:49:52 +10:00
Andrew Tridgell f8be087c7e AP_Scripting: added new lua bindings 2020-06-04 09:49:52 +10:00
TunaLobster a13ddc1096 AP_Scripting: add binding for get_output_pwm 2020-06-02 12:53:24 +10:00
Andrew Tridgell 5e74152444 AP_Scripting: Add servo chan override w/ timeout
Adds a feature to override a servo output for a given time. Scripting bindings and example included.
2020-05-25 14:10:01 +10:00
Andy Piper e9b939ccb5 AP_Scripting: build fix for macOS 2020-05-13 11:59:03 -07:00
Andrew Tridgell 9cf464e570 AP_Scripting: removed the old Makefile 2020-05-12 19:55:21 +10:00
Andrew Tridgell 2c6fd13899 AP_Scripting: auto-build the bindings 2020-05-12 19:55:21 +10:00
Buzz 963b25059d AP_Scripting: allow to get/set/create arbitrary mission items
fetch item/s by their index, and review wp data, etc.  
AP_Mission: ran mission files through approved astyle  as they were non-compliant before this( astyle --options=Tools/CodeStyle/astylerc   )
2020-05-12 09:58:14 +10:00
Andrew Tridgell ca584943a5 AP_Scripting: added bindings for servo output 2020-04-28 11:14:26 +10:00
Michael du Breuil 6753e99604 AP_Scripting: Add a return around luaL_error
This is the normal method of calling luaL_error which longjmp's away,
and it helps the static analysis tools realize that anything afterwards
will not be reached
2020-03-28 21:16:09 +11:00
Randy Mackay 60b3c6ca94 AP_Scripting: add bindings for start_takeoff and set_target_velocity_NED 2020-03-19 15:17:11 -07:00
Peter Hall f5052b68a8 AP_Scripting: add binding for AP_Button get_button_state 2020-03-19 14:59:34 -07:00
Andrew Tridgell 564740f06b AP_Scripting: added get_vibration and get_target_location bindings 2020-03-12 08:36:40 +11:00
Andrew Tridgell 609b535dda AP_Scripting: added RPM interface 2020-03-12 08:36:40 +11:00
Peter Hall 426f5e6180 AP_Scripting: support ProfiLEDs 2020-03-10 10:37:26 +11:00
Randy Mackay 989241a6bd AP_Scripting: fix limits on Location alt field binding 2020-03-03 10:06:38 -07:00
Randy Mackay e8699ab9fe AP_Scripting: add Location.alt to bindings 2020-03-03 10:06:38 -07:00
Randy Mackay 1e2fc444b6 AP_Scripting: add set_target_location binding 2020-03-03 10:06:38 -07:00
Peter Hall 129dc16bdb AP_Scripting: add mission scripting example 2020-02-27 18:07:31 -07:00
Peter Hall 370b6473a2 AP_Scripting: add AP_Mission bindings 2020-02-27 18:07:31 -07:00
Andrew Tridgell fe86d8bb0c AP_Scripting: adjust for updated LED API 2020-02-27 13:12:26 +11:00
Randy Mackay ccaa74655c AP_Scripting: support external authorisation for arming 2020-02-25 19:55:54 +09:00
Peter Barker 1e82ae4676 AP_Scripting: log disarm method 2020-02-22 12:16:29 +11:00
Peter Hall 1f139414bc AP_Scripting: add param get, set and save bindings 2020-02-18 10:18:12 +11:00
Michael du Breuil a0bfc823b3 AP_Scripting: Support libraries holding the scheduler lock 2020-02-18 09:16:10 +11:00
Randy Mackay 617b8b45d2 AP_Scripting: add AP_ESC_Telem bindings 2020-02-12 11:58:34 +09:00
Peter Hall d6689372e3 AP_Scripting: add to AHRS ands vehicle and add baro bindings 2020-01-14 22:34:37 -07:00
Michael du Breuil 51f79c1b10 AP_Scripting: Add support for UART drivers
Also improves the handling of uint32_t arguments
2020-01-13 20:06:31 -07:00
Tatsuya Yamaguchi 2c9e56c4b2 AP_Scripting: allow scripts to get modes 2020-01-14 11:16:29 +11:00
Peter Barker 4c5c5fff72 AP_Scripting: add some pointers on how to work with bindings 2020-01-07 19:29:12 -07:00
Andrew Tridgell 32215be29f AP_Scripting: added rc input bindings 2019-12-20 19:51:46 -07:00
Randy Mackay fdf8d4b2ee AP_Scripting: add binding for BattMonitor's get_cycle_count method 2019-12-18 15:54:42 +11:00
Peter Hall f35ffaddc6 AP_Scripting: add rgb notify binding 2019-12-12 21:35:23 -07:00
Michael du Breuil c836b6221d AP_Scripting: Remove readline link dependency 2019-12-11 00:15:13 -07:00
Andrew Tridgell bc7651cfcb AP_Scripting: fixed chan check in LED bindings 2019-11-04 13:05:52 +11:00
Andrew Tridgell ea681c7a1e AP_Scripting: added bindings for LEDs 2019-11-04 13:01:59 +11:00
Michael du Breuil 38e17e2068 AP_Scripting: Add Location get_distance_NED and get_distance_NE
Fixes a regression with nil punning which broke Location:offset() and
adds a test script that is suitable for CI to test this sort of thing
2019-10-31 07:10:55 +11:00
Michael du Breuil 610dff61d8 AP_Scripting: Fix nullable arguments numbering, add location bearing 2019-10-25 08:48:22 +08:00
Michael du Breuil 82a7116142 AP_Scripting: Allow scripts to set the mode 2019-10-25 08:48:22 +08:00
Michael du Breuil 3274398bc2 AP_Scripting: Fix up uint32_t manipulation, fix AP_Notify
This also adds a touched up version of the foxhunt demo that was done at
the 2019 developer unconf
2019-10-16 21:57:41 -07:00
Michael du Breuil f0e742caa3 AP_Scripting: Fix generation of uint32_t arguments
This also fixes the message interval description not generating
correctly, it must have been manually edited before
2019-10-14 17:51:54 -06:00
Tatsuya Yamaguchi 5039bdc8ea AP_Scripting: add set_message_interval binding 2019-10-02 16:09:44 +09:00
Michael du Breuil 1e66457755 AP_Scripting: Allow the bindings to descirbe any build dependencies needed
Scripting has a hard requirement on AP_Terrain being available, this
allows us to emit a cleaner error message if you have disabled terrain
but not scripting
2019-08-27 09:45:35 +10:00
Michael du Breuil e05047bb0b AP_Scripting: Remove unneeded function, add some more enums 2019-08-17 10:41:27 +09:00
Michael du Breuil 1677c11855 AP_Scripting: Cope with new AP_GPS::first_unconfigured_gps 2019-07-30 10:12:43 +10:00
Michael du Breuil 852f85ec10 AP_Scripting: Fix bad return types on is_nan, is_inf, is_zero 2019-07-24 16:03:46 +10:00
Michael du Breuil 9e04939adf AP_Scripting: Protect send_text from reading the stack
Also fixes small alignment problem in generated code
2019-07-24 16:03:46 +10:00
Michael du Breuil 6caa700c09 AP_Scripting: Add literal support to the binding layer 2019-07-23 10:05:29 +09:00
Michael du Breuil f79a3100d0 AP_Scripting: Add arming call, improve range check casting 2019-07-22 14:32:54 +09:00
Randy Mackay e45db32957 AP_Scripting: add AP_arming binding 2019-07-19 19:44:13 -07:00
Michael du Breuil 0054544bd3 AP_Scripting: Add support for enums to be passed through 2019-07-19 09:34:05 +09:00
Michael du Breuil ed584313bd AP_Scripting: Remove unneeded debug output, fix the index for singleton errors 2019-07-14 00:28:00 -07:00
Michael du Breuil be25a703c0 AP_Scripting: Update battery interface 2019-07-14 00:28:00 -07:00
Michael du Breuil d58783664d AP_Scripting: Update generator to not use readline 2019-07-12 16:55:12 -07:00
Randy Mackay 27e802eaa6 AP_Scripting: add AP_AHRS method get_roll, pitch, yaw 2019-07-12 13:57:28 +09:00
Michael du Breuil 104164d2e4 AP_Scripting: Tighten range checks on library calls 2019-07-06 09:01:13 -07:00
Michael du Breuil 0ed3c547fd AP_Scripting: Disable by default, fix a nullable type, update README 2019-06-18 00:06:32 -07:00
Michael du Breuil 8db8dcd2d2 AP_Scripting: Fix up some warnings
-Remove some non forward declared issues
  -Remove forced min/max values from the enum range check
2019-05-11 18:25:43 -07:00
Michael du Breuil bd256afee4 AP_Scripting: extract a common argument check helper
Allows an easy additional flag for saving flash space
2019-05-11 18:25:43 -07:00
Michael du Breuil 84c2b18e43 AP_Scripting: Support enum types, add millis() remove manual GCS wrapper
This introduces enum types for range checking/returns, adds a millis(() call
(this returns a uint32_t), and moves over to an auto generated version of the GCS binding
2019-05-11 18:25:43 -07:00
Michael du Breuil eddf926433 AP_Scripting: Add support for semaphore protection around singletons
This makes the assumption that the semaphore is available via reference, not pointer
For a singleton object this seems like a reasonable API restriction
2019-05-11 18:25:43 -07:00
Michael du Breuil 066dc9d12b AP_Scripting: Add support for terrain 2019-04-26 08:07:19 +10:00
Michael du Breuil 50b76a27aa AP_Scripting: Add uint32_t support to generator 2019-04-26 08:07:19 +10:00
Michael du Breuil 7690df1d69 AP_Scripting: Add boxed numerics for uint32_t types
Also fixes bad check in send_text that could seg fault in send_text

And fixes the fact that all freshly allocated userdata's need to be
memset
2019-04-26 08:07:19 +10:00
Michael du Breuil 8e50ca9ae4 AP_Scripting: Add stack checking to allocators 2019-04-26 08:07:19 +10:00
Michael du Breuil 56b8741c3e AP_Scripting: Add more bindings 2019-04-26 08:07:19 +10:00
Michael du Breuil 1b48ce57f0 AP_Scripting: Add operator overloading
Also introduces battmonitor wrappers, and removes an unneeded checkdata
2019-04-26 08:07:19 +10:00
Michael du Breuil 6bcc6d85e7 AP_Scripting: Nullable primitive arguments do not recieve a range check 2019-04-26 08:07:19 +10:00
Michael du Breuil 893779fbcd AP_Scripting: Introduce fixed minimum range type checking on primitives 2019-04-26 08:07:19 +10:00
Michael du Breuil 1895178285 AP_Scripting: Add support for nullable types
This adds nil punning to the generator. It also unifies the emitter for
both singletons and userdata, as they were almost identical to begin
with. This should ease the maintenance burden of adding new types.
2019-04-26 08:07:19 +10:00
Michael du Breuil e4035bd7e8 AP_Scripting: Add alias suppport to the scripting generator 2019-04-26 08:07:19 +10:00
Michael du Breuil 746240ebe3 AP_Scripting: Add more primitive types 2019-04-26 08:07:19 +10:00
Michael du Breuil e7d59514d9 AP_Scripting: Add an initial generator 2019-04-11 23:03:20 -07:00