Improve MAVLink behavior with half-duplex links, update default SRs
[inav.git] / docs / Servo.md
blobd3322b02f0298f775f645aa409ccdc151718d25b
1 # Servo configuration
3 Servos can be configured from the graphical user interface's `Outputs` tab.
5 * MID: middle/neutral point of the servo
6 * MIN: the minimum value that can be sent to the servo is MIN * Rate
7 * MAX: the maximum value that can be sent to the servo is MAX * Rate
8 * Rate: servo command = servo rate * mixer output
9 * Reverse: if enabled the servo output is reversed
11 CLI commands to configure servos:
13 The `servo` command is used to list or modify servo's configuration. To list the current servo's configuration run the `servo` command without parameters.
15 To change the configuration of a servo use the `servo` command with the following syntax: `servo <n> <min> <max> <mid> <rate>`. `<n>` is representing the index of the servo output defined by a servo mixer (See (mixer documentation)[https://github.com/iNavFlight/inav/blob/master/docs/Mixer.md]). The other parameters must be positive integers apart from the rate wich valid range is [-125, 125].
17 ## Servo filtering
19 A low-pass filter can be enabled for the servos.  It may be useful for avoiding structural modes in the airframe, for example.
21 ### Configuration
23 Currently, it can only be configured via the CLI:
25 Use `set servo_lpf_hz=20` to enable filtering. This will set servo low pass filter to 20Hz.
27 ### Tuning
29 One method for tuning the filter cutoff is as follows:
31 1. Ensure your vehicle can move at least somewhat freely in the troublesome axis.  For example, if you are having yaw oscillations on a tricopter, ensure that the copter is supported in a way that allows it to rotate left and right to at least some degree.  Suspension near the CG is ideal.  Alternatively, you can just fly the vehicle and trigger the problematic condition you are trying to eliminate, although tuning will be more tedious.
33 2. Tap the vehicle at its end in the axis under evaluation.  Directly commanding the servo in question to move may also be used. In the tricopter example, tap the end of the tail boom from the side, or command a yaw using your transmitter.
35 3. If your vehicle oscillates for several seconds or even continues oscillating indefinitely, then the filter cutoff frequency should be reduced. Reduce the value of `servo_lowpass_freq` by half its current value and repeat the previous step.
37 4. If the oscillations are dampened within roughly a second or are no longer present, then you are done.  Be sure to run `save`.