1
0
Fork 0
mirror of https://github.com/iNavFlight/inav.git synced 2025-07-13 11:29:56 +03:00

docs/ipf: Fix typos and clarify wording

This commit is contained in:
Ray Morris 2023-09-17 11:10:53 -05:00
parent abca7e21e3
commit 0ab67ab9ea
2 changed files with 27 additions and 5 deletions

View file

@ -1,17 +1,28 @@
# INAV Programming Framework # INAV Programming Framework
INAV Programming Framework (abbr. IPF) is a mechanism that allows to evaluate cenrtain flight parameters (RC channels, switches, altitude, distance, timers, other logic conditions) and use the value of evaluated expression in different places of INAV. Currently, the result of LCs can be used in: INAV Programming Framework (IPF) is a mechanism that allows you to to create
custom functionality in INAV. You can choose for certain actions to be done,
based on custom conditions you select.
Logic conditions can be based on things such as RC channel values, switches, altitude,
distance, timers, etc. The conditions you create can also make use of other conditions
you've entered previously.
The results can be used in:
* [Servo mixer](Mixer.md) to activate/deactivate certain servo mix rulers * [Servo mixer](Mixer.md) to activate/deactivate certain servo mix rulers
* To activate/deactivate system overrides * To activate/deactivate system overrides
INAV Programming Framework coinsists of: INAV Programming Framework consists of:
* Logic Conditions - each Logic Condition can be understood as a single command, a single line of code * Logic Conditions - each Logic Condition can be understood as a single command, a single line of code. Each logic condition consists of:
* Global Variables - variables that can store values from and for LogiC Conditions and servo mixer * an operator (action), such as "plus" or "set vtx power"
* one or two operands (nouns), which the action acts upon. Operands are often numbers, such as a channel value or the distance to home.
* "activator" condition - optional. This condition is only active when another condition is true
* Global Variables - variables that can store values from and for Logic Conditions and servo mixer
* Programming PID - general purpose, user configurable PID controllers * Programming PID - general purpose, user configurable PID controllers
IPF can be edited using INAV Configurator user interface, or via CLI IPF can be edited using INAV Configurator user interface, or via CLI. To use COnfigurator, click the tab labeled
"Programming". The various options shown in Configurator are described below.
## Logic Conditions ## Logic Conditions
@ -310,3 +321,14 @@ Steps:
2. Scale range [0:1000] to [0:3] 2. Scale range [0:1000] to [0:3]
3. Increase range by `1` to have the range of [1:4] 3. Increase range by `1` to have the range of [1:4]
4. Assign LC#2 to VTX power function 4. Assign LC#2 to VTX power function
## Common issues / questions about IPF
One common mistake involves setting RC channel values. To override (set) the
value of a specific RC channel, choose "Override RC value", then for operand A
choose *value* and enter the channel number. Choosing "get RC value" is a common mistake,
which does something other than what you probably want.
![screenshot of override an RC channel with a value](./assets/images/ipf_set_get_rc_channel.png)

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB