Use shorter command names (mmix and smix) instead of longer ones
(motormix) and (mmix).
Decrease verbosity of dump command by only outputting commands to
reverse servos for servos that are reversed.
* optimize for code size.
* consolidate error message handling.
* replace similar error messages with identical ones.
* shorten all strings where possible.
* made less verbose.
This was required for the CC3D OPBL build.
Main rule logic and MSP commands ported from baseflight.
Gimbal mixer updated to use rules. This allows us to remove more
conditional logic. Operation of gimbal servos is now different.
pterm_cut_hz added
Let's play with this as well to get more noise filtered
Code Cleanup
Make filter more flexible for reuse
rewrite correction pterm
Define static delta in filter
Fix array count
ident
return function for filter
Filter Function enhanced
Full software filtering (DTerm, PTerm, Gyro, Acc)
Normalize Variables
Revert Back gyro settings
Bugfix gyro/acc filter // (MPU60xx equalize lpf settings)
Moved filtering to mw.c
This has been done to prevent reusing old cycletime for filter function.
acc_cut_hz removed (not needed)
Harakiri zero fix
Newlib's strtok() allocates memory and causes malloc() to be linked
in. Use the reentrant version instead.
Saves 336 bytes.
Signed-off-by: Michael Hope <mlhx@google.com>
This is done to make it clearer in configuration dumps which ports are
enabled and configured.
There is a nice code size reduction due to less strings being needed.
Serial documentation updated.
Closes#966.
...and apply them after a soft reset (which also required an additional
write to flash), it is now such that features and settings are modified
and stored in flash as before.
After initialisation completes, the active features are latched and are
not to be modified until the next startup. This guarantees that all
saved modifications are persistent even when power is switched of
(without a reset in between).
When a soft reset is required, the active features and the currently
configured features are used to detect if the oneshot feature has
changed state, in which case motor PWM outputs are stopped and soft
reset is done after a 1.5 second delay.
During normal operation the active features will not change and all
changes to features ordered via MSP commands or the CLI are applied to
the configuration that gets saved to flash.
The required effect of modifying features without changing the actions
in the running mainloop is achieved. The user needs to be aware that
changes to features are not applied immidiatly.
sensible/fix min/max settings for those settings.
This fixes erratic flight behaviour before failsafe kicks in on SBus
receivers.
An X8R SBus RX in failsafe mode outputs 880 on all channels.
See #918 and #919
Maximum value of 500 is now removing the limit (same as for
yaw_jump_prevention_limit)
Moving defines for PID controllers to headerfiles.
Some general code cleanup.
Documentation update
Prepended the version string with a # to avoid the CLI from interpreting
the version string as a command when pasting a dump file back (restore
in CLI).
Strip comments starting with `# comment` from lines. This is to allow
adding comments to CLI dumped backup files. For this i have an automated
addition of comments and/or manual comments by the user in mind.
Pull request #802 has by default disabled yaw jump. That is fine on the
most of the configurations, but one of my multirotors had an angled
motor due to crash and this was causing weird behaviour.
It is also possible to configure very low values, which can even cause a
craft to not be able to stop after yaw and I am talking about the values
below 100 like 1.
Anyway this fix provides only valid configurable values what can't cause
any danger. Also default parameter is not unlimited anymore and is
configured to 200, which is a safe value to anybody who does the
upgrade.
cli.md is also edited
configurations
The hardcoded limit in the mixer and PID controllers 3-5 would be
removed
by default and will be configurable by CLI variables:
yaw_jump_prevention_limit, global setting (original fixed value was 100)
yaw_p_limit, per profile setting (fixed value was 300)
* fixes issue where indicators would flash when SBus RX entered failsafe
mode.
* fixes bug where turning off a TX for an SBus RX would instantly disarm
when using a switch to arm when the channel went outside the arming
range.
* introduces failsafe phases to make the system more understandable.
* allows the system to ask if rxSignalIsBeing received for all RX
systems: PPM/PWM/SerialRX/MSP. Also works when a serial data signal is
still being received but the data stream indicates a failsafe condition
- e.g. SBus failsafe flags.
* failsafe settings are no-longer per-profile.
Untested: Sumd/Sumh/XBus/MSP (!)
Tested: SBus X8R, Lemon RX Sat, X8R in PWM, Spektrum PPM.
Previously it was possible to set roll/pitch rate > 1.0 using MSP, but
not using the CLI. Roll/pitch rate > 1.0 is meaningless.
TPA is also limited to 1.0.
# The first commit's message is:
Previously, at minimum throttle, the quad would do absolutely no self-leveling
and simply run the motors at constant minthrottle. This allowed the chance
for the quad to lose control during flight if the throttle was set to minimum,
say, to drop from a high altitude to a lower one.
With this edit, the quad will still self-level at minimum throttle when armed,
allowing for safe decents from altitude. To prevent motors spinning when
arming/disarming, the yaw input is ignored if the throttle is at minimum and
we're using the sticks to arm/disarm.
Conflicts:
src/main/flight/mixer.c
# This is the 2nd commit message:
added cli command disable_pid_at_min_throttle
Added frsky_hiprec_vfas configuration option that selects how VFAS is sent
Better arithmetics for FrSky CELL voltages, VFAS battery voltage send with other ID that allows 0.1V resolution