Commit Graph

841 Commits

Author SHA1 Message Date
Iampete1
20a2e6aaf0 AP_Scripting: allow deprecation warnings 2022-05-03 07:48:39 +10:00
m
dbf00bae10 AP_Scripting: Add pre_arm_checks LUA binding 2022-04-30 10:23:28 +09:00
Andrew Tridgell
ed89acea66 AP_Scripting: added PDmod binding for quick tuning 2022-04-29 11:54:12 +10:00
Randy Mackay
599cd15c7b AP_Scripting: add copter-deadreckon-home example 2022-04-26 18:37:54 +09:00
Randy Mackay
7b6ad412fe AP_Scripting: add ahrs get_relative_position_D_home binding 2022-04-26 18:37:54 +09:00
Randy Mackay
f0623fa8c9 AP_Scripting: add has_ekf_failsafed binding 2022-04-26 18:37:54 +09:00
Iampete1
6e3cb7efdc AP_Scripting: support true aliases 2022-04-26 10:28:28 +10:00
Iampete1
352c48233e AP_Scripting: generator: rename alias keyword to rename 2022-04-26 10:28:28 +10:00
Peter Barker
55517450bc AP_Scripting: correct script restart send_text message 2022-04-18 12:50:18 +01:00
Andrew Tridgell
0f230eec5a AP_Scripting: increase default heap size in SITL and on F7/H7
if we have 500k or more memory then use 100k heap for Lua, making
setup easier
2022-04-11 17:02:04 +10:00
Peter Barker
ce312a3750 AP_Scripting: stop libraries including AP_Logger.h in .h files
AP_Logger.h is a nexus of includes; while this is being improved over
time, there's no reason for the library headers to include AP_Logger.h
as the logger itself is access by singleton and the structures are in
LogStructure.h

This necessitated moving The PID_Info structure out of AP_Logger's
namespace.  This cleans up a pretty nasty bit - that structure is
definitely not simply used for logging, but also used to pass pid
information around to controllers!

There are a lot of patches in here because AP_Logger.h, acting as a
nexus, was providing transitive header file inclusion in many (some
unlikely!) places.
2022-04-08 19:18:38 +10:00
Henry Wurzburg
82235163a2 AP_Scripting: remove original aerobatics example to avoid confusion 2022-04-05 10:12:13 +10:00
Andrew Tridgell
54f6dbf476 AP_Scripting: restored corrected boolean in height_amsl binding 2022-03-28 16:01:21 +11:00
Randy Mackay
fc668b4bca AP_Scripting: copter fast descent gets improved slowdown 2022-03-24 19:21:54 +09:00
bugobliterator
39b771c3a9 AP_Scripting: add support for can_printf in lua 2022-03-23 18:59:43 +11:00
Andrew Tridgell
e8115a99bc AP_Scripting: added set_override method for scripting
useful for test code
2022-03-22 10:21:06 +11:00
Andrew Tridgell
cdd63a239e AP_Scripting: fixed radius selection for ship landing 2022-03-10 07:34:20 +11:00
Andrew Tridgell
3f0110e924 AP_Scripting: fixed beacon lost in ship landing 2022-03-10 07:34:20 +11:00
Andrew Tridgell
ba57e0a9d8 AP_Scripting: review fixes 2022-03-10 07:34:20 +11:00
Andrew Tridgell
3d9086b460 AP_Scripting: update lua docs 2022-03-10 07:34:20 +11:00
Andrew Tridgell
3dca7f08b7 AP_Scripting: plane ship landing script 2022-03-10 07:34:20 +11:00
Andrew Tridgell
5c94be1d72 AP_Scripting: added rotate_xy for Vector3f 2022-03-10 07:34:20 +11:00
Andrew Tridgell
197ccda408 AP_Scripting: added follow API 2022-03-10 07:34:20 +11:00
Andrew Tridgell
0de1185625 AP_Scripting: removed terrain home correction 2022-03-10 07:34:20 +11:00
Iampete1
e07e22c0fe AP_Scripting: applets: add forward flight motor shutdown readme 2022-03-08 14:30:48 -08:00
Iampete1
3875715f67 AP_Scripting: applets: add motor failure testing sctipt 2022-03-08 14:30:48 -08:00
murata
b4d4ed8a50 AP_Scripting: Change to no message notification in DISARMED state 2022-03-08 14:28:26 -08:00
Andrew Tridgell
d8fb6cc522 AP_Scripting: added example for orbit follow
allows a following vehicle to orbit the lead vehicle
2022-03-02 18:18:43 +11:00
Peter Barker
465f56254a AP_Scripting: include cleanups 2022-03-01 11:21:33 +11:00
Randy Mackay
10e69373b3 AP_Scripting: copter-fast-descent has less aggressive slowdown at end 2022-02-26 08:05:05 +09:00
Randy Mackay
3efebcf1e0 AP_Scripting: copter-fast-descent uses small default radius 2022-02-26 08:05:05 +09:00
Randy Mackay
fc9cfe9b4a AP_Scripting: copter fast descent from Auto
Also use custom parameters
Allow yaw to be static or point towards center
2022-02-26 08:05:05 +09:00
Randy Mackay
6f8ff4cf49 AP_Scripting: add copter-nav-script-time example script 2022-02-22 12:32:56 +09:00
Peter Barker
9aeab4978f AP_Scripting: replace get_position alias with call to wrapper method
the alias breaks the call it is aliasing to
2022-02-18 21:23:06 +11:00
Iampete1
918b8a1a9c AP_Scripting: add binding and helper to get old params 2022-02-15 10:05:23 +11:00
Hwurzburg
d7d900bef9 AP_Scripting: Update plane_aerobatics script and move to new directory 2022-02-10 12:13:11 +11:00
Henry Wurzburg
92f76d0b7f AP_Scripting: fix error in Tricks on a Switch qualifier 2022-02-08 11:54:38 +11:00
Henry Wurzburg
b262e9ffbf AP_Scripting: extend nav_scripting to all modes 2022-02-07 21:19:28 +11:00
murata
6c83f2262d AP_Scripting: Remove meaningless semicolons 2022-02-07 08:27:34 +09:00
Iampete1
427e8d1e24 AP_Scripting: add define option to disable interupts for the duration of script run 2022-02-02 11:33:46 +11:00
Iampete1
da352163ee AP_Scripting: move singleton method bindings to flash 2022-02-02 11:33:46 +11:00
Rishabh
3caff0fa1e AP_Scripting: Add lua script example for Rover moving in circles with fixed radius using turn rate guided command 2022-01-31 14:48:22 +09:00
Rishabh
2e7e4a36ff AP_Scripting: Allow scripts to set Rovers turn rate and speed guided command 2022-01-31 14:48:22 +09:00
Peter Barker
3438caebe2 AP_Scripting: rename AP_AHRS::get_position to get_location 2022-01-25 10:47:22 +11:00
Iampete1
b7bd8cd6be AP_Scripting: update parameter binding docs 2022-01-23 07:00:56 +11:00
Iampete1
f147f6f215 AP_Scripting: add bindings for prameter set defualt and configured 2022-01-23 07:00:56 +11:00
Iampete1
37db2c5d4d AP_Scripting: Parameter helper: add configured and set defualt 2022-01-23 07:00:56 +11:00
Andrew Tridgell
d85dae8e50 AP_Scripting: added copy docs 2022-01-18 19:18:13 +11:00
Andrew Tridgell
d56840e4ef AP_Scripting: special case handling of copy method
allow for each copy() of Location, Vector2f and Vector3f without
adding special methods to each type in C++
2022-01-18 19:18:13 +11:00
Tom Pittenger
0475dd1e79 AP_Scripting: add example of arming check for wp index = 1 and is a takeoff 2022-01-14 10:07:11 +09:00
Andrew Tridgell
10b1f46997 AP_Scripting: added bindings for adding parameter tables 2022-01-11 13:04:53 +11:00
Iampete1
c21ec13719 AP_Scripting: support feild alias s 2022-01-06 22:30:58 +11:00
Iampete1
dad0f0c3c0 AP_Scripting: add binding for AP::fwversion 2022-01-06 22:30:58 +11:00
Iampete1
18d0687847 AP_Scripting: support singleton feild types 2022-01-06 22:30:58 +11:00
Iampete1
9ccf17488d AP_Scripting: allow singleton types as refrence rather than pointer 2022-01-06 22:30:58 +11:00
Iampete1
cc5a867397 AP_Scripting: add binding for setting motors custom frame string 2022-01-05 19:51:19 +11:00
Iampete1
ec4949c9e3 AP_Scripting: generator: use depends for singleton strings 2022-01-04 11:40:33 +11:00
Iampete1
1711fa9807 AP_Scripting: use alias for param function names 2022-01-04 11:26:29 +11:00
Peter Barker
1b0f21e2a3 AP_Scripting: create and use AP_OPTICALFLOW_ENABLED
Including a define for each backend.
2021-12-29 18:12:03 +11:00
Peter Barker
f99f2bd8ab AP_Scripting: adjust for rename of OpticalFlow.h to AP_OpticalFlow.h 2021-12-28 10:16:20 +11:00
Iampete1
3606022cd7 AP_Scripting: add MiniCheetah CAN motor driver example 2021-12-21 08:51:22 +11:00
Andrew Tridgell
fe7e2ed657 AP_Scripting: added throttle and height controller to aerobatic example
changed rolling circle to take the radius and number of
circles. negative radius for negative yaw rate and negative number of
circles for left roll
2021-12-07 10:33:13 +11:00
Andrew Tridgell
140adc126a AP_Scripting: expand to 6 SCR_USER parameters 2021-12-07 10:33:13 +11:00
Peter Barker
d72d0578a3 AP_Scripting: correct compilation when HAL_LOGGER_FILE_CONTENTS_ENABLED is 0 2021-12-07 09:36:48 +11:00
Andrew Tridgell
06ef5aed14 AP_Scripting: added an example of OOP programming
very useful pattern for more complex scripts
2021-12-01 17:40:34 +11:00
Andrew Tridgell
d52f5a9034 AP_Scripting: added rolling circle to aerobatics example 2021-11-30 16:19:26 +11:00
Andrew Tridgell
ab333d0708 Ap_Scripting: added earth frame yaw tracking off WPs
this uses the new yaw rate controller to do EF tracking, so we follow
towards the next WP while doing the roll
2021-11-30 16:19:26 +11:00
Andrew Tridgell
3a3cb92efd Ap_Scripting: fixed plane aerobatics for full yaw rate control 2021-11-30 16:19:26 +11:00
Iampete1
58ef0d0137 AP_Scripting: log files and runtime stats 2021-11-17 19:16:46 +11:00
Iampete1
817864ce74 AP_Scripting: convert DEBUG_LVL to DEBUG_OPTS bitmask 2021-11-17 19:16:46 +11:00
Peter Barker
f4651f0287 AP_Scripting: move from ENABLE_SCRIPTING to AP_SCRIPTING_ENABLED 2021-11-15 20:27:40 +11:00
Peter Barker
6b4de23630 AP_Scripting: ensure ENABLE_SCRIPTING is always defined 2021-11-15 20:27:40 +11:00
Andrew Tridgell
ad29135384 AP_Scripting: added plane aerobatics example 2021-11-08 21:08:52 +11:00
Andrew Tridgell
9ccfbe9813 AP_Scripting: added bindings for NAV_SCRIPT_TIME support 2021-11-08 21:08:52 +11:00
Iampete1
0f1d3c4fc4 AP_Scripting: Docs: document arguments 2021-11-07 08:01:32 +11:00
Iampete1
b047ea5c02 AP_Scripting: stop and restart scripting via command int 2021-11-02 17:33:34 +11:00
drtrigon
3a0ed5446a AP_Scripting: select auto or manual gimbal/camera control mode
I have a camera that has picture and video trigger on the same channel. As ArduPilot is not able to handle that currently I wrote a script that allows to switch between auto and manual gimbal and camera control modes. Switching to manual camera control allows to enable picture as well as video trigger.
2021-10-27 18:40:42 +11:00
Andy Piper
31c74f9793 AP_Scripting: convert APM_BUILD_COPTER_OR_HELI() to APM_BUILD_COPTER_OR_HELI 2021-10-26 11:42:12 +11:00
Iampete1
f5805058c2 AP_Scripting: docs ignore duplicate-set-field warning 2021-10-26 11:05:22 +11:00
Iampete1
648a2b7140 AP_Scripting: docs: add manual bindings 2021-10-26 11:05:22 +11:00
Iampete1
da1fde06ad AP_Scripting: fix skip check userdata feild write 2021-10-26 11:05:22 +11:00
Iampete1
003561ab75 AP_Scripting: Docs: append _ud to userdata types to avoild name clash with new functions and declare local 2021-10-26 11:05:22 +11:00
Iampete1
05e01fb603 AP_Scripting: docs: update GCS 2021-10-20 18:35:09 +11:00
Iampete1
1af244e5bc AP_Scripting: maunaly update GPIO docs as example 2021-10-20 18:35:09 +11:00
Iampete1
6dd9ffc334 AP_Scripting: auto generate docs 2021-10-20 18:35:09 +11:00
Iampete1
a70134ba38 AP_Scripting: generator: ouput Emmylua docs 2021-10-20 18:35:09 +11:00
Iampete1
a5a3b413df AP_Scripting: wscript: support docs option 2021-10-20 18:35:09 +11:00
Iampete1
fbb9ef422c AP_Scripting: use floats for get/set output scaled 2021-10-20 18:29:58 +11:00
tajisoft
f076bb3ad1 AP_Scripting: update ahrs-source-gps-optflow.lua 2021-10-14 10:36:29 +11:00
Iampete1
0f8bcbf4b8 AP_Scripting: optimise genrated bindings for size 2021-10-12 10:08:56 +11:00
Iampete1
c1dbb1c046 AP_Scripting: change all -FLT_MAX FLT_MAX ranges to no check 2021-10-12 10:08:56 +11:00
Iampete1
302e855dab AP_Scripting: add 'skip_check keyword to skip argument range check 2021-10-12 10:08:56 +11:00
Iampete1
0772af5539 AP_Scripting: generator: dont initalise trivial types 2021-10-12 10:08:56 +11:00
Iampete1
32d6919ae2 AP_Scripting: generator: remove unneeded else in nullable returns 2021-10-12 10:08:56 +11:00
tajisoft
68274ff996 AP_Scripting: fix switch check in ahrs-source 2021-10-11 20:59:46 +11:00
murata
fa609afc44 AP_Scripting: Change the script file name for messages 2021-10-07 18:21:11 -04:00
Iampete1
86e56934b6 AP_Scripting: update analog input example to check for valid pin 2021-10-06 18:42:51 +11:00
Iampete1
e5ae023be2 AP_Scripting: AnalogSource set_pin returns bool 2021-10-06 18:42:51 +11:00
Andrew Tridgell
32731e2cd0 AP_Scripting: fixed bug in string logging with logger.write()
this dereferenced a bad pointer, leading to crash and watchdog

thanks to Charlie for finding this!
2021-10-06 18:14:54 +11:00
bugobliterator
dd9f513aa5 AP_HAL_ChibiOS: setup led control via lua script for HerePro 2021-09-30 08:52:27 +10:00
bugobliterator
d23e37e3bb AP_Scripting: add script for controling herepro leds per vehicle state 2021-09-30 08:52:27 +10:00
bugobliterator
e666e460f9 AP_Scripting: add periph methods for getting vehicle states 2021-09-30 08:52:27 +10:00
Siddharth Purohit
24448d6adf AP_Scripting: add rgb control for independent LEDs 2021-09-30 08:52:27 +10:00
Gone4Dirt
f8ed6426a9 AP_Scripting: Add APM_BUILD_Heli 2021-09-29 19:55:48 +10:00
Iampete1
6aa8319b90 AP_Scripting: re-emmit error messages every 10 seconds if SCR_DEBUG_LVL > 0 2021-09-29 17:11:18 +10:00
TunaLobster
dd379af7cc AP_Scripting: Add Z logger format to example 2021-09-25 14:00:00 +01:00
Iampete1
955be569a3 AP_Scripting: add forward flight motor shutdown applet 2021-09-22 18:16:32 +10:00
yaapu
a2b83d675f AP_Scripting: added a frsky battery example 2021-09-15 17:21:41 +10:00
Peter Barker
305a8ad48a AP_Scripting: add and use HAL_QUADPLANE_ENABLED 2021-09-14 11:23:18 +10:00
murata
731fd7221f AP_Scripting: Only use messages that are useful for debugging 2021-09-10 20:46:33 +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
b396169084 AP_Scripting: copter-fast-descent.lua example script 2021-08-26 11:25:54 +09: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
4bdb428cfe AP_Scripting: add copter-circle-speed.lua example
Co-authored-by: Iampete1 <iampete@hotmail.co.uk>
2021-08-25 18:39:09 +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
5de30cc7cf AP_Scripting: ahrs-source-gps-optflow script fixups from peer review
also dded assert on optical flow to ensure the script is used with a version of AP that includes the optical flow bindings
2021-08-24 16:49:04 +09:00
Randy Mackay
2aa17916b1 AP_Scripting: add ahrs-source-gps-optflow
this supports automatic switching between GPS and opticalflow
2021-08-24 16:49:04 +09:00
Randy Mackay
df187d5d3f AP_Scripting: add optical flow bindings 2021-08-24 16:49:04 +09:00
Andrew Tridgell
f822d8f5f6 AP_Scripting: example script for testing EKF3/DCM switching 2021-08-19 14:42:28 +10: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
Hwurzburg
400cf31df1 AP_Scripting: Add mission selection applet 2021-08-13 08:18:55 +10:00
Andrew Tridgell
2d6070d449 AP_Scripting: added has_valid_input binding 2021-08-10 08:48:10 +10:00
Hwurzburg
72a927343a AP_Scripting: make LUA memory panic more helpful 2021-08-09 16:34:09 +10:00
Andrew Tridgell
ba45d32c7e AP_Scripting: avoid a error in lua with gcc 10.2 on STM32 with -Werror 2021-08-04 15:48:23 +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
44276be3a1 AP_Scripting: add CANSensor and manaul bindings to load. 2021-07-27 09:04:17 +10:00
Iampete1
e29dd0e7e7 AP_Scripting: add CAN read and write examples 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
c5c2b18a0b AP_Scripting: update 6DoF mixer example 2021-06-21 09:58:05 +09:00
Iampete1
4df09360ab AP_Scripting: add SN-GCJA5 particle sensor example 2021-06-15 09:04:32 +10:00
TunaLobster
2359de250d AP_Scripting: add example of fixed wing doublets via scripting 2021-06-08 14:48:27 +10: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
2a10d9d4f5 AP_Scirpting: add terrain warning example 2021-04-15 09:16:28 +09:00
Mirko Denecke
e904de3431 AP_Scripting: add position light example 2021-04-13 09:23:59 +10:00
Iampete1
186cb6ef13 AP_Scripting: correct rotations in fault tolerant hex example 2021-04-08 08:23:08 +09:00
Iampete1
0b8cdaf392 AP_Scripting: add mission command receve function, binding and example 2021-03-31 19:23:13 +11: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
f2c2e8c1eb AP_Scripting: add PWM and GPIO to analog input example 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
9e97c2e095 AP_Scripting: change set_target_posvel_circle example tart location calculation 2021-03-25 21:01:41 +09:00
Emre Saldiran
dc290a8884 AP_Scripting: set_target_posvel example script 2021-03-24 08:55:48 +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
58860205ea AP_Scripting: add manual i2c get device bindings 2021-03-17 18:50:05 +11:00
Iampete1
166aedf1be AP_Scripting: add I2CDevice to auto bindings 2021-03-17 18:50:05 +11:00
Iampete1
1f0e36e10d AP_Scripting: add i2c scan example 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
Andrew Tridgell
35149ae8b2 AP_Scripting: allow scripting startup with no sdcard
as scripts can be in ROMFS we should still create the thread without
the scripts directory
2021-02-25 11:34:39 -07:00
Andrew Tridgell
17031707e3 AP_Scripting: added pcall example
this shows how to catch errors in scripts to make them robust against
runtime errors
2021-02-23 09:59:37 +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
43763091bd AP_Scripting: add send_named_float to simple loop example 2021-02-17 18:49:20 +11:00
Peter Hall
fc95664580 AP_Scripting: add GCS send_named_float binding 2021-02-17 18:49:20 +11:00
Iampete1
6d650e74f2 AP_Scripting: add fault tolerant hex MotorsMatrix example 2021-02-10 11:16:27 +09: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
Andrew Tridgell
5920c52285 Scripting: simple relay example
toggle at 50Hz
2021-02-09 10:23:06 +11:00
WillyZehnder
acfe815305 AP_Scripting: make get_control_mode_reason available to lua 2021-02-04 08:32:35 +09:00
Patrick José Pereira
bffda55639 AP_Scripting: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
yaapu
4fbba17506 AP_Scripting: added bindings for frsky telemetry library 2021-01-29 09:55:22 +11:00
Iampete1
ebfe593e38 AP_Scripting: add example script setting up a custom MotorMatrix 2021-01-26 11:07:36 +09: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
Peter Hall
9dae370356 AP_Scripting: add param accesss helper 2021-01-05 10:55:36 +11:00
Randy Mackay
2eb5114688 AP_Scripting: ahrs-source.lua plays tune when source set changes 2020-12-23 19:02:59 +11:00
Randy Mackay
69cb8e6bc6 AP_Scripting: ahrs-soruce.lua uses RCx_OPTION 300
this removes the potential conflict with zigzag mode
2020-12-23 19:02:59 +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
02ba500d67 AP_Scripting: add ahrs-source-gps-wheelencoders.lua
supports automatically switching between GPS and wheel encoders based on GPS speed accuracy and vertical velocity innovation
2020-12-01 09:26:02 +09:00
Kawamura
cef0c87c4c AP_Scripting: fix method name for ahrs-source.lua 2020-11-25 21:07:19 +09:00
Andy Piper
a592d76866 AP_Scripting: fix compile on clang 10 2020-11-25 09:28:06 +11:00
Randy Mackay
bf5c74dbdb AP_Scripting: ahrs-source example script
switches automatically between gps, external nav and optical flow
2020-11-20 16:43:44 +09:00
Randy Mackay
2b9fb79d72 AP_Scripting: add bindings for set_posvelyaw_source and get_vel_innovations 2020-11-20 16:43:44 +09:00
Michael du Breuil
53cbd86cbe AP_Scripting: Fix the lua scheduling rate to be referenced from the
start of the update

This allows specifying a return value like "return update, 10" to run
at a near perfect 100Hz, where as before it would be run 10 ms after the
script had completed it's loop, which can be highly variable as the
script experiences interupts from the system, as well as needing the
script author to take responsibility for calculating the desired update
rate at the end. This was always intended to be fixed, but I pushed it
back during the initial development, however people are begining to run
scripts that have enough processing, or are rate sensitive enough that
we are now needing to start correcting this, or scripts will have to do
their best to guess the time, which will be inferior to us providing it.

As a note if you exceeded the time expected we will be rescheduling the
script immediately, thus it will have a schedule time in the past and
will be slotted in. This can't indefinetly starve other scripts as they
will still be slotted in, but if you request an update in 1 ms, but took
100ms to run we will simply slide you back into the queue 1ms after when
you started running.
2020-11-17 10:19:13 +11:00
Andrew Tridgell
c8e604a730 AP_Scripting: fixed gcc 9.x build 2020-11-13 14:30:11 +11:00
Peter Hall
d6a1af4690 AP_Scripting: example: arming auth: removed unused millis call
now is fetched but never used
2020-11-11 18:24:55 +11:00
Iampete1
1587d88f58 AP_Scripting: example saving serial data to SD card 2020-11-10 12:15:56 +11: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
97b44dfe71 AP_Scripting: add DIR_DISABLE param 2020-10-28 19:22:45 +11: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
eb880a2657 AP_Scripting: copter-wall-climber fix for climb rate limiting 2020-10-27 14:06:15 +09:00
Randy Mackay
eab7c9520c AP_Scripting: copter-wall-climber accel limiting
reduces climb rate slowly so it can stop before next interval
also fixup formatting of altitude output to user
2020-10-27 14:06:15 +09:00
Randy Mackay
2ab860b8b7 AP_Scripting: copter-wall-climber format and comment fixes
replaced tab with spaces
also fixed comment
2020-10-27 14:06:15 +09:00
Iampete1
8996c4cee0 AP_Scripting: NMEA example updated decoding 2020-10-27 11:24:49 +11:00
Michael du Breuil
1a1a5e69dd AP_Scripting: Add setmetatable back to the lua sandbox 2020-10-27 10:25:56 +11:00
Randy Mackay
8aba1655a2 AP_Scripting: add ahrs-print-variances example 2020-10-21 08:58:45 +09:00
Randy Mackay
5eae007d49 AP_Scripting: add binding for ahrs get_variances 2020-10-21 08:58:45 +09:00
Randy Mackay
b0363a01b0 AP_Scripting: add copter-wall-climber example script 2020-10-20 23:04:45 +09:00
Iampete1
de664ae6a8 AP_Scripting: bindings: add units and multipliers to logging 2020-10-13 10:34:42 +11:00
Iampete1
5cbbe656ba AP_Scripting: add units and multipliers to logging example 2020-10-13 10:34:42 +11:00
Iampete1
a09e15137e AP_Scripting: add logging to plane-wind-fs example 2020-10-13 10:34:42 +11:00
Randy Mackay
d31a00a6a1 AP_Scripting: replace prearm_healthy binding with healthy 2020-10-07 11:53:07 +11:00
Andy Piper
9fef5b1e94 AP_Scripting: remove compile errors and warnings 2020-09-22 09:37:02 +10:00
ashvath100
9665421a9c AP_Scripting: Walking robot naming fix and height control 2020-09-10 08:27:01 +09:00
Gone4Dirt
32de8d78ab AP_Scripting: Add Heli_IM_COL_TUNE applet and readme 2020-09-09 17:50:31 +10:00
Gone4Dirt
39788aa4f7 AP_Scripting: Add rc norm_input_ignore_trim binding 2020-09-09 17:50:31 +10:00
ashvath100
9e86355734 AP_Scripting: quadruped.lau fix after review 2020-09-01 09:33:24 +09:00
ashvath100
f344363404 AP_Scripting: quadruped.lua logic test fix 2020-09-01 09:33:24 +09:00
Randy Mackay
a4c7aa6386 AP_Scripting: quadruped.lua fixups after peer review
includes these changes:
add header to quadruped.lua example
quadruped.lua loses unnecessary pwm array
minor formatting fix
correct quadruped comments re servo connections
quadruped.lua replaces /2 with x0.5
quadruped.lua loses servo_estimate arguments
2020-09-01 09:33:24 +09:00
Randy Mackay
28026176f6 AP_Scripting: quadruped example formatting fixes 2020-09-01 09:33:24 +09:00
ashvath100
1a6a623295 AP_Scripting: quadruped example script 2020-09-01 09:33:24 +09: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
3638602d38 AP_Scripting: add rover-motor-driver example script 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
Henry Wurzburg
ec4bc71222 AP_Scripting: Setup of applets directory and first applet entry 2020-07-28 15:34:26 +10: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
Iampete1
0d9d593f05 AP_Scripting: add RC channel objects to example 2020-07-28 13:47:35 +10:00
Randy Mackay
e3d538e676 AP_Scripting: add ahrs-print-angle-and-rates example 2020-07-28 09:47:59 +10:00
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
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
17e258d347 AP_Scripting: Reenable file IO 2019-04-26 08:07:19 +10: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
f1d5269f9e AP_Scritping: remove more libraries from the sandbox 2019-04-11 23:03:20 -07:00
Michael du Breuil
d7e71f85b8 AP_Scripting: Add a debug level param 2019-04-11 23:03:20 -07:00
Michael du Breuil
e7d59514d9 AP_Scripting: Add an initial generator 2019-04-11 23:03:20 -07:00
Pierre Kancir
ad75b1e56f AP_Scripting: update locations_are_same to same_latlon_as 2019-04-08 08:05:05 -07:00
Pierre Kancir
3e122c19f3 AP_Scripting: move location_update to Location and rename to offset_bearing 2019-04-06 09:10:28 +11:00
Michael du Breuil
7183b504a7 AP_Scripting: Fix bad location changes 2019-03-05 08:45:54 +11:00
Dr.-Ing. Amilcar do Carmo Lucas
67bbc6962a AP_Scripting: replace location_offset() and get_distance() function calls with Location object member function calls
This allows removing duplicated code
2019-02-28 11:44:09 +11:00
Michael du Breuil
c3e11fd34d AP_Scripting: Reduce stack allocated buffer size to reduce warnings
about large frame size
2019-02-01 14:31:05 -07:00
Michael du Breuil
b45970fded AP_Scripting: Add location and ahrs user data 2019-02-01 14:31:05 -07:00
Michael du Breuil
9dd36ba511 AP_Scripting: Factor out common range constraints 2019-02-01 14:31:05 -07:00
Michael du Breuil
d38dde82fe Lua: revert including lmem 2018-12-31 19:25:23 -07:00
Michael du Breuil
c191789651 AP_Scripting: Use dedicated heap 2018-12-31 19:25:23 -07:00
Michael du Breuil
0ede7b7d39 AP_Scripting: Catch lua panics 2018-11-26 22:32:56 +00:00
Michael du Breuil
2afe72d79f AP_Scripting: Swap reschedule to be callback, delay 2018-11-14 01:41:35 +00:00
Michael du Breuil
ecb1a433b1 AP_Scripting: Add more runtime sanity checks 2018-11-14 01:41:35 +00:00
Michael du Breuil
40d5e233d4 AP_Scripting: Autostart all scripts in a given folder 2018-11-14 01:41:35 +00:00
Michael du Breuil
19a8c5a6ed AP_Scripting: Run multiple scripts at once 2018-11-14 01:41:35 +00:00
Michael du Breuil
b0a84ab7cf AP_Scripting: Enforce a time limit for a script 2018-11-14 01:41:35 +00:00
Michael du Breuil
a2a8ac15b3 AP_Scripting: Add access to SRV_Channels::set_output_pwm
This also provides a more intresting function, with range checking. We
could choose to ignore this range checking and leave the script author
responsible for managing this, but it's probably better to protect the
author from themselves as much as possible, even if it makes the API
binding harder to automate
2018-10-30 16:17:03 -07:00
Michael du Breuil
2c3fe0cbcf AP_Scripting: Load a sandbox enviorment 2018-10-30 16:17:03 -07:00
Michael du Breuil
beaa069082 AP_Scripting: Disable lua coroutines 2018-10-30 16:17:03 -07:00
Michael du Breuil
68576eff32 AP_Scripting: Initial test script 2018-10-09 10:08:52 +11:00
Michael du Breuil
e421599e4f AP_Scripting: Hide lua IO for now 2018-10-09 10:08:52 +11:00
Michael du Breuil
513e5946bb AP_Scripting: Add Lua 5.3.5 source 2018-10-09 10:08:52 +11:00
Michael du Breuil
8049c64a5b AP_Scripting: Create a thread and spin 2018-10-09 10:08:52 +11:00
Michael du Breuil
f2a31866aa AP_Scripting: Initial scripting framework 2018-10-09 10:08:52 +11:00