Commit Graph

298 Commits

Author SHA1 Message Date
murata 5f3837f434 AP_Scripting: Modify the extension. 2020-07-28 08:40:06 +09:00
Henry Wurzburg 8bfda973db AP_Scripting: Add user accessable script parameters 2020-07-19 14:18:39 +10:00
Andrew Tridgell e9a4a74e7b AP_Scripting: suppress cast-align warnings in Lua interpreter
this is externally maintained code that makes heavy use of casting
2020-07-10 13:31:27 +10:00
Andrew Tridgell 6bab6d94bf AP_Scripting: fixed equality test for uint32_t 2020-07-06 10:08:19 -07:00
Andrew Tridgell 259cf10373 AP_Scripting: added rotate binding to Vector2f 2020-07-06 14:46:48 +10:00
craigy72 6557f3c258 AP_Scripting: fixup serial_test.lua 2020-07-04 09:11:09 +09: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 5b90c98e02 AP_Scripting: add rover-set-steering-and-throttle example script 2020-06-24 08:34:41 +09:00
Randy Mackay d665a0a440 AP_Scripting: add binding for set_desired_steering_and_throttle 2020-06-24 08:34:41 +09:00
Rishabh c53d42e665 AP_Scripting: Remove send_text if directory is created 2020-06-23 10:42:41 +10:00
Rishabh bd7190767e AP_Scripting: Create scripts folder automatically 2020-06-20 21:39:06 +10:00
Iampete1 a23934fe93 AP_Scripting: add set angle demo 2020-06-19 10:09:35 +10: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 86d53c96d1 AP_Scripting: added opendog lua demo 2020-06-08 17:50:03 +10:00
Andrew Tridgell d7b20c6e48 AP_Scripting: added micros() 2020-06-04 09:49:52 +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
Peter Hall b368188b01 AP_Scripting: add AP_Logger binding 2020-05-19 09:09:48 +10:00
Peter Hall be37a8a2b6 AP_Scripting: add example logging serial to dataflash 2020-05-19 09:09:48 +10:00
Peter Hall 11dc3e05e3 AP_Scripting: add SD file and dataflash logging example 2020-05-19 09:09:48 +10:00
Peter Hall aa657626f2 AP_Scripting: examples: plane-wind-fs: read in CRT_MAH 2020-05-18 11:25:13 -07:00
Andy Piper e9b939ccb5 AP_Scripting: build fix for macOS 2020-05-13 11:59:03 -07:00
Andrew Tridgell 36869f668b AP_Scripting: fixed build on cygwin with deep directories 2020-05-12 19:55:21 +10:00
Andrew Tridgell 50db7f1648 AP_Scripting: update README.md 2020-05-12 19:55:21 +10: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
Andrew Tridgell 5c8e4a4d7b AP_Scripting: removed old generated bindings 2020-05-12 19:55:21 +10:00
Buzz 9d9fdd1cb0 AP_Scripting: add big demo script for editing and updating mission item/s from lua. 2020-05-12 14:20:26 +10:00
Buzz 816474b6e8 AP_Scripting: rebuild bindings 2020-05-12 09:58:14 +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 b1977ca43d AP_Scripting: removed old servo output binding 2020-04-28 11:14:26 +10:00
Andrew Tridgell d214e379a2 AP_Scripting: rebuild bindings 2020-04-28 11:14:26 +10:00
Andrew Tridgell ea9316c2b5 AP_Scripting: added servo movement example script 2020-04-28 11:14:26 +10:00
Andrew Tridgell ca584943a5 AP_Scripting: added bindings for servo output 2020-04-28 11:14:26 +10:00
Andrew Tridgell 6222649e37 AP_Scripting: avoid build warnings 2020-04-28 10:32:23 +10:00
Michael du Breuil 75b133926f AP_Scripting: Cleanups to remove false posive warnings 2020-03-28 21:16:09 +11:00
Michael du Breuil d50e9865bd AP_Scripting: Delete the lua object if we failed to allocate the required memory 2020-03-28 21:16:09 +11: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
Andrew Tridgell 5047eb88e2 AP_Scripting: use @ROMFS 2020-03-28 15:28:03 +11:00
Andrew Tridgell ebec738b88 AP_Scripting: enable lua scripts in ROMFS 2020-03-28 15:28:03 +11:00
Andrew Tridgell a91c587ef3 AP_Scripting: use new DirHandle for directory listings 2020-03-28 15:28:03 +11:00
bugobliterator edaf9fa086 AP_Scripting: remove unused user of realloc from lua 2020-03-24 10:32:14 +11:00
Peter Hall 3f7ab6289d AP_Scripting: move scripting_test.lua from examples to tests 2020-03-19 15:28:39 -07:00
Peter Hall 524d59ad78 AP_Scripting: add math and strings test scripts 2020-03-19 15:28:39 -07:00
Randy Mackay 05b563cf54 AP_Scripting: fixup comment in set-target-location example script 2020-03-19 15:17:11 -07:00
Randy Mackay 0846746932 AP_Scripting: add copter-fly-vertical-circle example script 2020-03-19 15:17:11 -07:00
Randy Mackay fa0fb9ef34 AP_Scripting: add set-target-velocity example script 2020-03-19 15:17:11 -07:00
Randy Mackay d7fb84c765 AP_Scripting: make bindings 2020-03-19 15:17:11 -07: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 d37efe1b38 AP_Scripting: regenerate bindings 2020-03-19 14:59:34 -07:00
Peter Hall 67bfedd845 AP_Scripting: add button example script 2020-03-19 14:59:34 -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 87b97f8bee AP_Scripting: added a VTOL failsafe example script
if fwd motor is lost try to make best effort to get home
2020-03-12 08:36:40 +11:00
Andrew Tridgell e815b97c66 AP_Scripting: regenerate bindings 2020-03-12 08:36:40 +11:00
Andrew Tridgell 564740f06b AP_Scripting: added get_vibration and get_target_location bindings 2020-03-12 08:36:40 +11:00
Andrew Tridgell be7e142888 AP_Scripting: regenerate bindings for RPM 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 Barker 19249a13fd AP_Scripting: tell the user where their scripts directory is on failure 2020-03-10 08:43:03 +09:00
Peter Hall e95e996cc4 AP_Scripting: Add led matrix examples 2020-03-10 10:37:26 +11:00
Peter Hall bf76a8c727 AP_Scripting: update LED_roll example 2020-03-10 10:37:26 +11:00
Peter Hall 8dccea4a15 AP_Scripting: regenerate bindings 2020-03-10 10:37:26 +11:00
Peter Hall 426f5e6180 AP_Scripting: support ProfiLEDs 2020-03-10 10:37:26 +11:00
Randy Mackay 1486421581 AP_Scripting: rename arming-check-batt-temp example script 2020-03-04 11:28:10 +09:00
Randy Mackay 2526aaeb74 AP_Scripting: set-target-location example script 2020-03-03 10:06:38 -07:00
Randy Mackay ae8c8b71b2 AP_Scripting: make bindings 2020-03-03 10:06:38 -07: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 fc0d845b6c AP_Scripting: add NMEA decode example 2020-03-03 09:57:07 -07:00
Peter Hall 71f1755c97 AP_Scripting: update plane-wind-fs example 2020-02-27 18:33:56 -07:00
Peter Hall 6587653e14 AP_Scripting: regnerate bindings 2020-02-27 18:07:31 -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 e582432a2f AP_Scripting: regen bindings 2020-02-27 13:12:26 +11:00
Andrew Tridgell fe86d8bb0c AP_Scripting: adjust for updated LED API 2020-02-27 13:12:26 +11:00
Randy Mackay cc33c8d116 AP_Scripting: make bindings 2020-02-25 19:55:54 +09:00
Randy Mackay c0bc696b86 AP_Scripting: add arming-check-batt-temp example script 2020-02-25 19:55:54 +09: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
Michael du Breuil d7a59bc449 AP_Scripting: Reduce the sleep time with no scripts
Lowering the sleep time when no scripts are pending, causes starting a
REPL session to respond much faster (this cuts the latency from up to 10
seconds to 1 second before the session is ready to start).

Also lowers the default scripting debug level to hide the statustext
from users, as in the general case this is just a spammy message if it
occurs, and we should be finding better reporting bits to get this to
the user.
2020-02-19 13:24:23 -07:00
Michael du Breuil cf06beb1e6 AP_Scripting: Add support for REPL over MAVLink 2020-02-18 17:23:22 -07:00
Peter Barker d24d1c587a AP_Scripting: add documentation for DEBUG_LVL parameter 2020-02-18 20:25:58 +09:00
Michael du Breuil c1a599d0bd AP_Scripting: Reduce memory associated with the sandbox 2020-02-18 10:38:09 +11:00
Peter Hall 4ee17aea3d AP_Scripting: regenerate bindings 2020-02-18 10:18:12 +11:00
Peter Hall a04a34ff6a AP_Scripting: add param get and set example 2020-02-18 10:18:12 +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 8c227a5a18 AP_Scripting: add esc-usage.lua
example script to retrieve esc usage time
2020-02-12 11:58:34 +09:00
Randy Mackay fb2d7242f4 AP_Scripting: make bindings 2020-02-12 11:58:34 +09:00
Randy Mackay 617b8b45d2 AP_Scripting: add AP_ESC_Telem bindings 2020-02-12 11:58:34 +09:00
Peter Hall d5729236e2 AP_Scripting: update plane-wind-fs battery RTL failsafe example 2020-01-21 10:12:45 +11:00
Michael du Breuil 0e70eabdb9 AP_Scripting: Send lua errors to the console before status_text
This helps SITL where we frequently panic about to long a statustext,
which means a user never sees the intresting part unless they comment
out the sanity check, or run on a real board.
2020-01-16 17:54:30 -07:00
Peter Hall a1fb44b782 AP_Scripting: regenerate bindings 2020-01-14 22:34:37 -07: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 2291702473 AP_Scripting: Raise SITL default heap size 2020-01-13 20:06:31 -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
Michael du Breuil 5da062b850 AP_Scripting: Forward declare lua_new_uint32_t 2020-01-06 16:02:50 -07:00
Andrew Tridgell b69afff6a7 AP_Scripting: increase heap size (again) 2019-12-20 19:51:46 -07:00
Andrew Tridgell 07415d06ab AP_Scripting: added RCIN example script 2019-12-20 19:51:46 -07:00
Andrew Tridgell e86c6b047a AP_Scripting: regen bindings for Lua 2019-12-20 19:51:46 -07:00
Andrew Tridgell 32215be29f AP_Scripting: added rc input bindings 2019-12-20 19:51:46 -07:00
Randy Mackay a5a1d2812a AP_Scripting: example to check battery cycle count 2019-12-18 15:54:42 +11: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 f9c4c17ff4 AP_Scripting: add rgb notify led example 2019-12-12 21:35:23 -07:00
Peter Hall 6b58501821 AP_Scripting: regenerate bindings 2019-12-12 21:35:23 -07: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
Peter Barker b0549c7569 AP_Scripting: add example to warn and then RTL based on wind speed
This was written at CubePilot 2019 as part of a workshop.

Blame MdB
2019-12-05 18:31:53 -07:00
Michael du Breuil 1c3287160e AP_Scripting: Simplify the LED_roll example 2019-12-06 08:03:26 +08:00
Michael du Breuil 9fe2c02079 AP_Scripting: Don't restart scripts if it panic'd during the initial VM creation 2019-12-05 15:08:43 -07:00
Randy Mackay c78112564c AP_Scripting: init sends failure message 2019-12-03 12:48:32 +08:00
Randy Mackay 09d75cff3b AP_Scripting: add init failure check 2019-12-03 12:48:32 +08:00
Andrew Tridgell 381af923c5 AP_Scripting: re-gen 2019-11-04 13:06:45 +11:00
Andrew Tridgell bc7651cfcb AP_Scripting: fixed chan check in LED bindings 2019-11-04 13:05:52 +11:00
Andrew Tridgell 48ba63ba11 AP_Scripting: added example script for LEDs
show LED values based on roll
2019-11-04 13:01:59 +11:00
Andrew Tridgell 7caac67487 AP_Scripting: re-gen bindings 2019-11-04 13:01:59 +11:00
Andrew Tridgell ea681c7a1e AP_Scripting: added bindings for LEDs 2019-11-04 13:01:59 +11:00
Andrew Tridgell 38ba08e0ce AP_Scripting: increase default heap size
we will need a better fix than this. Adding a couple of bindings costs
us nearly 1k of ram even if unused
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 0edc8a55a0 AP_Scripting: Add plane failsafe example script 2019-10-25 08:48:22 +08: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
Andrew Tridgell 83eeca2586 AP_Scripting: fixes for modified AP_ROMFS API
need to use AP_ROMFS::free()
2019-10-24 22:03:43 +11:00
Peter Barker f6b6aa68ed AP_Scripting: add a hello world example 2019-10-24 13:50:51 +11:00
Peter Barker 099379713c AP_Scripting: add simple example of a loop 2019-10-24 13:50:51 +11: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 e54acb8bde AP_Scripting: Add an example message interval script 2019-10-16 09:48:55 +09:00
Michael du Breuil 076cf0bdc8 AP_Scripting: Add a one arg variant of uint32_t, and expose table unpack 2019-10-16 09:48:55 +09:00
Michael du Breuil df8c9e5825 AP_Scripting: Raise default heap size 2019-10-15 15:35:12 -06:00
Michael du Breuil cf94a02207 AP_Scripting: Stop running scripts if the enable flag ever goes false 2019-10-15 15:35:12 -06: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
Andrew Tridgell b577787f68 AP_Scripting: use AP_Filesystem API 2019-08-27 15:40:43 +10:00
Michael du Breuil 7fdc9fef12 AP_Scripting: Garbage collect after each run of a script
For some reason this resolves a memory leak in a tight loop of file
open, close. This also extends the memory debug printing to be a bit
more useful.
2019-08-27 13:54:54 +10: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
Randy Mackay 0e9688a4e1 AP_Scripting: resolve gcs::send_text compiler warning 2019-07-29 09:23:13 +09: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 6e7367b86f AP_Scripting: Reduce lua stack usage 2019-07-19 09:34:05 +09:00