A script uses something this 4.7 firmware does not offer
What ArduPilot says:
- Warning: userdata creation does not take arguments, will be fatal in future
- … not supported on this firmware
- …:N Warning: … does not take arguments, will be fatal in future
Two messages new in 4.7. “NAME not supported on this firmware”: the script called a function that belongs to a feature left out of this build; the script stops with that error. “FILE:LINE Warning: NAME does not take arguments, will be fatal in future”: the script creates an object such as Location() or Vector3f() with values between the brackets. Those values were always ignored; 4.7 now says so. Because the warning is stored as the last script error, it also blocks arming as “Scripting: …” until it is fixed.
What to do, most likely first
The script is older than the firmware.
CheckThe file name and the line number are in the message.
FixTake the 4.7 version of the applet from the Lua Applet Catalog. In your own script, create the object with empty brackets and set its fields on the following lines.
The firmware for your board was built without the feature the script needs.
CheckThe Firmware Inspector shows what a firmware file was built with.
FixBuild a firmware that includes the feature with the Firmware Builder, or do without that script.
Parameters to look at
| Parameter | What it is |
|---|---|
SCR_ENABLE | Enable Scripting |
Where to do it:Lua Applet CatalogFirmware InspectorFirmware Builder
The code that sends it
Warning: userdata creation does not take arguments, will be fatal in future
libraries/AP_Scripting/generator/gen/generated_cpp_deps.h userdata_zero_arg_check() · Open in ArduPilot Copter-4.7.1
… not supported on this firmware
libraries/AP_Scripting/generator/gen/generated_cpp_deps.h not_supported_error() · Open in ArduPilot Copter-4.7.1
…:N Warning: … does not take arguments, will be fatal in future
libraries/AP_Scripting/generator/gen/generated_cpp_deps.h userdata_zero_arg_check() · Open in ArduPilot Copter-4.7.1