Siddharth Purohit
1d2985e967
AP_Param: add method to find key of top level group variable by pointer
5 years ago
Peter Hall
5164eacc4a
AP_Param: add get and set functions
5 years ago
Peter Hall
623c1aa3cd
AP_Param: add singleton
5 years ago
Peter Hall
1ee14ffa75
AP_Param: use thread safe object buffer
5 years ago
Andrew Tridgell
aa3642d9de
AP_Param: save 7k flash for HAL_MINIMIZE_FEATURES boards
5 years ago
Michael du Breuil
1f20cc10f8
AP_Param: Fix failing to invalidate the cached parameter count
...
This would cause a GCS to download fewer then the requested number of
parameters
5 years ago
Andrew Tridgell
7ef86c9bb1
AP_Param: added convert_parameter_width()
...
this allows for easy conversion of the width of a parameter without
changing indexes
5 years ago
Mark Whitehorn
f8d4cba667
AP_Param: rename sensor_config_error to config_error
5 years ago
Andrew Tridgell
31b0663115
AP_Param: use strtof instead of atof
...
we don't need double precision
5 years ago
Andrew Tridgell
6573857a90
AP_Param: support @READONLY marker in param files
...
allows for read-only parameters embedded in firmware
5 years ago
Peter Barker
ca5ee2bfbc
AP_Param: correct fetching of flags for parameters
...
This was sending through the flags for the group the parameter was in,
rather than the parameter itself.
6 years ago
Peter Barker
b493805fb4
AP_Param: methods to provide amount of parameter space used
...
AP_Param: provide method for storage size
6 years ago
Andrew Tridgell
f897eae89d
AP_Param: enable reduced size support for AP_Periph
6 years ago
Peter Barker
2049e86dda
AP_Param: optionally return parameter flags in AP_Param::find(...)
6 years ago
Peter Barker
70daf0010b
AP_Param: add param flag bit indicating internal-use-only
6 years ago
Andrew Tridgell
2572885159
AP_Param: flush() after converting parameters
...
this prevents a race in sub where a set_default_by_name() directly
follows a parameter conversion for ARMING_CHECK. Without the flush the
default is written to storage by the IO queue draining after the set()
6 years ago
Michael du Breuil
f06251a07f
AP_Param: Delay param dumps to avoid running out of buffer space
6 years ago
murata
88c681586f
AP_Param: Match output type and variable type
6 years ago
Michael du Breuil
40753ab14e
AP_Param: Remove non functional AP_Param ignore flags
6 years ago
Peter Barker
0d1b7b90b9
AP_Param: avoid allocating 0 bytes if no defaults
...
This stopped CUAVv5 from booting.
Also add some protection against having different parsers for the same
file format used for counting parameters and actually using them.
6 years ago
Randy Mackay
94ee157575
AP_Param: set_defaults_from_table reports failure with sensor_config_error
...
replace panic and send_text with call to AP_BoardConfig::sensor_config_error to make it easier for users or developers to find the issue
6 years ago
Randy Mackay
2ccb9061d9
AP_Param: minor format fixes
6 years ago
Randy Mackay
98cd300885
AP_Param: add set_defaults_from_table
6 years ago
Michael du Breuil
effdc436f2
AP_Param: Fix a mixture of new/free
6 years ago
Andrew Tridgell
4d662a913a
AP_Param: use background parameter save
...
this moves both the storage scan and the save code out of the main
thread and into the IO thread. It means that if we have more than 30
parameters saves in very rapid succession while armed that we can lose
parameter changes, but that is extremely unlikely.
This fixes an issue where parameter saves in flight can cause
considerable scheduling problems, sometimes several milliseconds
7 years ago
Andrew Tridgell
a9c570702c
AP_Param: fixed build warning
7 years ago
Lucas De Marchi
1a45aa12f5
AP_Param: warn on last pass only about unknown parameters
...
Do not warn about unknown parameters on the first pass, i.e. when
AP_Param:load_all() is called. This is because we may still not know
about dynamically loaded parameters. When we call the second (last)
time, we expect to already know all possible parameters, so print a
warning to both console and the debug terminal.
7 years ago
Lucas De Marchi
7f0d5ddf21
AP_Param: stop panic()'ing on unknown parameters
...
Our track record on keeping parameters up to date with master is not
great and panic()'ing when loading them apparently is not helping
because every and each vehicle has a different file.
On aerofc load_defaults_file() is used in the same way as
load_embedded_param_defaults() is in which the panic() behavior has been
previously removed.
This finishes the removal of the panic param and add warnings to the
debug console when reading the parameters (rather than when counting
them).
7 years ago
Peter Barker
83b918f1c3
AP_Param: make send_parameter_value_all a GCS method rather than static
7 years ago
Peter Barker
32795f0a8f
AP_Param: correct possible use of nullptr during param count
...
::first can return nullptr
7 years ago
Andrew Tridgell
c6c5603382
AP_Param: added back key dumping code
...
this is essential for working out conversion tables.
7 years ago
Michael du Breuil
a1a5665213
AP_Param: Support marking a param group as ignoring the enable flag
7 years ago
Andrew Tridgell
51512ed7c0
AP_Param: don't panic on bad embedded parameters
...
this makes life much easier for vendors
7 years ago
Andrew Tridgell
d0d6040b3e
AP_Param: use wider range of sentinal values
...
this copes better with power off while writing parameters
7 years ago
Andrew Tridgell
4ac49483c8
AP_Param: added support for embedded parameters
...
use a block of flash to hold embedded parameters that can be changed
using apj_tool.py
7 years ago
Jacob Walser
d5896287b7
AP_Param: Add set_by_name and set_and_save_by_name helpers
7 years ago
Peter Barker
e3599ab4f9
AP_Param: remove CLI
8 years ago
Michael du Breuil
8de96ee4a1
AP_Param: Check for duplicate group id's before handling groups
8 years ago
Andrew Tridgell
7e24be95c9
AP_Param: added macro for var table extension in object
8 years ago
Andrew Tridgell
60e4c0eb98
AP_Param: make count_parameters() thread safe
8 years ago
Andrew Tridgell
47803e73e4
AP_Param: allow for dynamic var_info tables
...
this allows the var_info entry in a table to be a constant pointer,
allowing the selection of a type for a parameter class at runtime.
8 years ago
Peter Barker
c93942695f
AP_Param: load parameters from a comma-separated-list
...
This patch will break things for anyone who is using
a comma in their filenames for their ardupilot defaults
files.
8 years ago
Peter Barker
fe189fefbc
AP_Param: Factor load_defaults_file (NFC)
8 years ago
Andrew Tridgell
79b0c856b2
AP_Param: added support for frame specific parameters
...
this allows for libraries that have parameters that are only activated
on particular frame types
8 years ago
Lucas De Marchi
85eadca7ad
AP_Param: shut up float comparison warning
...
We want to compare the value previously set in memory.
8 years ago
murata
59454b0c6f
AP_Param: Unify from print or println to printf.
8 years ago
Andrew Tridgell
4687785185
AP_Param: fixed a bug in default file handling
...
this fixes a bug in how default file values are handled that affects
any common sub-objects. When we had a default value for something like
SERVO12_FUNCTION then configured_in_defaults_file() would return true
for SERVO1_FUNCTION as it shares a common default value pointer
this changes the implementation to use the object pointer instead
8 years ago
Peter Barker
a481e52861
AP_Param: make configured() const
8 years ago
Pierre Kancir
5aa4bc4368
AP_Params: fix seg fault in debug function
...
otherwise at start, when loading paramter is could fail at AP_Param.cpp:611, Debug("scan past end of eeprom")"
8 years ago
Andrew Tridgell
d005cbffd8
AP_Param: added convert_parent_class()
8 years ago