intermediate checkin
- new mix modes
- removed stick rotate vhigh
- removed nanowii build
- cfg ver to 5
= WIP checkin for DELTA DUAL-AIL
- implemented mixes for the 3 modes
LINKED_SLOW: dual ail == flaps function only
LINKED_NORMAL: dual ail == flaps + ail functions
LINKED_AGGRESSIVE: dual ail == flaps + ail + ele functions

ail = roll (control and stabilization)
ele = pitch (control and stabilization)
Optimizations to reduce abit more flash space in the programmer.
WIP new config and space optimization on the programmer

- added 3 new types of configuration parameters
1. serialrx order, each of the 8 channels can be individually configured
2. spektrum 1024 vs 2048 levels for serialrx_spektrum
3. servo frame interval minimum. can be set to 0ms for digital servos and say 22ms for analog servos. ensures that servos will not be updated faster than prescribed frame period.

starting a new branch for the new mix modes as well.
updated serialrx channel ordering handling, and config processing.

single rx_chan array to map channel number to *_in var address.
rx_chan_map map the canonical order. which is RETA1a2F, to the var address.

aquastar cleanups

process the new config parameters:
- spektrum_level in SerialRX.ino, default = _1024
- servo frame rate, default = 1/20ms = 50hz
- serialrx_order = default depending on SERIALRX_* defined.
rename/create wing mode definitions.

enum WING_MODE {WING_USE_DIPSW=1,
  WING_RUDELE_1AIL, WING_DELTA_1AIL, WING_VTAIL_1AIL,
  WING_RUDELE_2AIL, WING_DELTA_2AIL, WING_VTAIL_2AIL,
  WING_DUCKERON};
WIP checkin
= CPPM_PROFILE, LED_PROFILE and OW_PROFILE to define parameter sets
= new PPM output code (PWM_CHAN_PIN[]). preallocate 8 slots. simplified device definitions for pins.
= more const array size definitions for serialrx_order_*
= replaced digitalRead() in boot_check() to reduce flash
= i2c pullup based on cpu type, not in device definitions
= each per-device init in setup() split into SERIALRX_ENABLED and non-SERIALRX_ENABLED sections. rx_portb/rx_portd only needed with non-SERIALRX_ENABLED

next steps
= better separate SERIALRX_ENABLED and non-SERIALRX_ENABLED handling for RX input.
rearranged RX input handling

= split between SERIALRX_ENABLED cppm input (pb0-icp, pd2, pe6) and regular RX input (rx_portb, rx_portd, pe6-aux2_in)
added first draft of WING_DELTA_2AIL and WING_DUCKERON mixing

= WING_DELTA_2AIL to follow https://docs.google.com/document/d/1ce6ycZvVQqASUfMCXF-DWfdcNEBW4pxo4W-hJh_nYSs
= revised pin mapping to follow https://docs.google.com/document/d/1CDCazz5TjRhke3KpJ8k2ALZma8m43GH7lJiSICRqUfc
Merge branch 'master' of https://github.com/noobee/FlightStab
Merge branch 'master' into new_mix
fixed conflict resolution error (rx_port_size definition and use).
another minor followup fix due to conflict resolution for rx_port_size use.
debugged duckeron mix mode
duckeron and delta-2ail

- fix duckeron to allow for yaw even at max braking.
- added RUD VR to control gain and direction of pitch on ailerons in FLAPPERONEVATOR mode.
minor fixes

- slightly simpler lock-free test and assignments
- renamed duckeron surfaces to LEFT1/2 and RIGHT1/2
Merge remote-tracking branch 'remotes/origin/master' into new_mix

added RX3S_V2_AILR_IN_ON_RUD_IN.hex image
fix bug in subpage limit value for PID parameters in the program box.
pin mapping, duckeron

- updated a3pro pwm pin mapping to match comment block
- updated nanowii pin mapping PE6 == ailr_in instead of aux2_in
- duckeron brake starts from 1100us instead of 1000us
- minor cleanups with wing_mode setting, added catchall incase it is still invalid after all the per-device checks.
oops, fixed error in a3pro for spektrum/sbus and wing_modes