Multiwii

編輯歷史

時間 作者 版本
2015-03-28 09:50 Yi-Fong Li r2653
顯示 diff
(diff 過大,略過)
2015-03-26 13:05 Yi-Fong Li r2652
顯示 diff
(diff 過大,略過)
2015-03-15 03:01 – 03:20 章國俊 r2619 – r2651
顯示 diff
(diff 過大,略過)
2015-03-14 16:52 – 16:53 柏翰 陳 r2598 – r2618
顯示 diff
(diff 過大,略過)
2015-01-21 14:53 – 15:15 Frank C.S. Wang r2417 – r2597
顯示 diff
(diff 過大,略過)
2015-01-15 02:02 – 02:41 Frank C.S. Wang r2254 – r2416
顯示 diff
(diff 過大,略過)
2014-12-19 03:05 – 03:06 鄭鴻旗 r2242 – r2253
顯示 diff
(diff 過大,略過)
2014-12-18 15:17 – 15:17 callmeericchen@gmail.com r2235 – r2241
顯示 diff
(diff 過大,略過)
2014-12-18 15:17 鄭鴻旗 r2234
顯示 diff
(diff 過大,略過)
2014-12-18 15:16 – 15:17 callmeericchen@gmail.com r2206 – r2233
顯示 diff
(diff 過大,略過)
2014-12-18 13:43 – 13:43 callmeericchen@gmail.com r2199 – r2205
顯示 diff
(diff 過大,略過)
2014-12-18 13:43 (unknown) r2198
顯示 diff
(diff 過大,略過)
2014-12-18 13:35 – 13:43 callmeericchen@gmail.com r2194 – r2197
顯示 diff
(diff 過大,略過)
2014-12-18 05:16 (unknown) r2193
顯示 diff
(diff 過大,略過)
2014-12-18 05:16 – 05:16 章國俊 r2191 – r2192
顯示 diff
(diff 過大,略過)
2014-12-18 02:32 – 02:32 鄭鴻旗 r2180 – r2190
顯示 diff
(diff 過大,略過)
2014-12-18 01:14 – 01:30 Mach Ma r1804 – r2179
顯示 diff
(diff 過大,略過)
2014-12-18 01:05 – 01:06 Frank C.S. Wang r1797 – r1803
顯示 diff
(diff 過大,略過)
2014-12-17 14:48 – 15:03 Frank C.S. Wang r1560 – r1796
顯示 diff
(diff 過大,略過)
2014-12-17 12:59 – 13:01 鄭鴻旗 r1551 – r1559
顯示 diff
(diff 過大,略過)
2014-12-12 05:03 – 05:03 Frank C.S. Wang r1549 – r1550
顯示 diff
(diff 過大,略過)
2014-12-11 15:51 – 16:04 Frank C.S. Wang r1543 – r1548
顯示 diff
(diff 過大,略過)
2014-12-11 10:21 – 10:21 Frank C.S. Wang r1540 – r1542
顯示 diff
(diff 過大,略過)
2014-12-11 10:16 – 10:21 Mach Ma r1454 – r1539
顯示 diff
(diff 過大,略過)
2014-12-11 08:43 – 08:43 Frank C.S. Wang r1452 – r1453
顯示 diff
(diff 過大,略過)
2014-12-11 05:28 – 05:33 章國俊 r1446 – r1451
顯示 diff
(diff 過大,略過)
2014-12-11 02:10 – 02:22 Frank C.S. Wang r1272 – r1445
顯示 diff
(diff 過大,略過)
2014-12-11 02:10 竑傑 丁 r1271
顯示 diff
(diff 過大,略過)
2014-12-11 02:10 – 02:10 Frank C.S. Wang r1262 – r1270
顯示 diff
(diff 過大,略過)
2014-12-11 02:10 竑傑 丁 r1261
顯示 diff
(diff 過大,略過)
2014-12-11 02:10 – 02:10 Frank C.S. Wang r1259 – r1260
顯示 diff
(diff 過大,略過)
2014-12-11 02:09 – 02:10 竑傑 丁 r1257 – r1258
顯示 diff
(diff 過大,略過)
2014-12-11 02:09 – 02:09 Frank C.S. Wang r1254 – r1256
顯示 diff
(diff 過大,略過)
2014-12-11 02:09 竑傑 丁 r1253
顯示 diff
(diff 過大,略過)
2014-12-11 02:09 – 02:09 Frank C.S. Wang r1247 – r1252
顯示 diff
(diff 過大,略過)
2014-12-11 02:09 竑傑 丁 r1246
顯示 diff
(diff 過大,略過)
2014-12-11 02:09 Frank C.S. Wang r1245
顯示 diff
(diff 過大,略過)
2014-12-11 02:09 竑傑 丁 r1244
顯示 diff
(diff 過大,略過)
2014-12-11 02:08 – 02:09 Frank C.S. Wang r1241 – r1243
顯示 diff
(diff 過大,略過)
2014-12-11 02:08 竑傑 丁 r1240
顯示 diff
(diff 過大,略過)
2014-12-11 02:08 Frank C.S. Wang r1239
顯示 diff
(diff 過大,略過)
2014-12-11 02:08 竑傑 丁 r1238
顯示 diff
(diff 過大,略過)
2014-12-11 02:07 – 02:08 Frank C.S. Wang r1230 – r1237
顯示 diff
(diff 過大,略過)
2014-12-11 02:07 竑傑 丁 r1229
顯示 diff
(diff 過大,略過)
2014-12-11 01:53 – 02:07 Frank C.S. Wang r1126 – r1228
顯示 diff
(diff 過大,略過)
2014-12-11 01:53 (unknown) r1125
顯示 diff
(diff 過大,略過)
2014-12-11 01:53 – 01:53 Frank C.S. Wang r1091 – r1124
顯示 diff
(diff 過大,略過)
2014-12-10 15:02 – 15:05 Frank C.S. Wang r1039 – r1090
顯示 diff
(diff 過大,略過)
2014-12-10 08:12 – 08:40 Frank C.S. Wang r1033 – r1038
顯示 diff
(diff 過大,略過)
2014-12-10 08:04 – 08:06 有迪 郭 r1026 – r1032
顯示 diff
(diff 過大,略過)
2014-12-10 05:34 – 05:34 ken-yong18@outlook.com r1021 – r1025
顯示 diff
(diff 過大,略過)
2014-12-10 03:17 – 03:26 Frank C.S. Wang r1005 – r1020
顯示 diff
(diff 過大,略過)
2014-12-10 03:11 Mu-Hua Lin r1004
顯示 diff
(diff 過大,略過)
2014-10-22 04:43 Sola Lu r1003
顯示 diff
(diff 過大,略過)
2014-10-16 04:53 – 04:54 Mach Ma r989 – r1002
顯示 diff
(67 行未修改)
https://github.com/multiwii/baseflight
https://code.google.com/p/afrodevices/downloads/list
+
+
+
+ MultiWii main version history
+
+ V2.3
+ ***Control mode***
+ - main PITCH/ROLL/YAW PID modification (r1474)
+ - the sticks scaling is no more affected by PID coefficients
+ - yaw rate (to the right of the PIDs in GUI) now works as stick scaling
+ - default yaw rate is increased (with yaw rate at 0)
+ - yaw PID principle is now different from PITCH&ROLL PID:
+ - yaw ITerm windup is very high, allowing an 'elastic' direction return after a manual perturbation
+ - yaw ITerm is also constrained with a windup independent limit
+ - yaw PTerm is constrained in order to counter the yaw jump effect.
+ use yaw DTerm to increase this constrain (r1573)
+ - yaw ITerm is canceled if the yaw stick is not centered
+ - Throttle angle correction (r1374)
+ - Advanced Headfree mode added (see config.h for instructions) (r1374)
+ - DYNBALANCE option, individual motor can be controled via GUI, to test individual vibration
+ - better gyro & acc calibration accuracy (r1546)
+ - cannot arm is baro mode is on (r1550)
+ - only one baro mode : vario around a throttle deadband (r1554)
+ - magHold is reset when arm is switched on
+ - ONLYARMWHENFLAT option (r1587)
+ ***receiver & UART***
+
+ - RCSERIAL is now deeply integrated. If a MSP_SET_RAW_RC comes,
+ it will just override legacy RX data. (r1420)
+ as a consequence, RCSERIAL is no more an option
+ - no RC averaging for Spektrum & SBUS (r1545)
+ - SBUS center define (r1568)
+ - FAILSAFE_DETECT_TRESHOLD configurable
+
+
+ ***GPS***
+ - Enables sonar altitude from i2c-gps-nav board (1424)
+ - navigation code will follow after 2.3
+
+
+ ***GUI***
+ - Gui with Servosettings. (r1441 & r1450)
+ All models with servo included.
+
+ - GUI globalsettings (for some settings previously only in config.h)
+ - do not display /dev/cu.* devices but only corresponding /dev/tty.* (r1442)
+ - GUI baudrate as configurable setting
+
+
+ ***IMU and baro***
+ - correct GYRO_SCALE for all gyro (r1428)
+ - no more small angles while shaking the board (r1579)
+ http://www.multiwii.com/forum/viewtopic.php?f=8&t=4112
+
+ - baro Alt based on ground temp compensation (r1570)
+ - not reset for FIXEDWING (r1590)
+
+ *** SERVO management ***
+
+ - add a generic way to configure servo settings : conf struct + MSP read/set messages (r1383)
+ - Added general servo handler (r1421 & r1429)
+ - allow preset of some servo stuff from config.h (r1432)
+ - Gui with Servosettings. (r1441)
+ We can get 180 degrees servo move without servo modification.
+
+ ***internal improvements***
+ - migration to a cpp/h code structure
+ - huge flash size optimization (around 1k)
+ - read at most one analog channel per MWii main loop cycle (r1375)
+ - smoothing of RX_RSSI (r1379)
+ - make faster analog reads an option with default off to increase accuracy (r1375)
+ - detangle vbat & buzzer dependancy (r1375)
+ - optimization : small approximation bit shift used instead of * or / number
+ for TPA, rates, dynP, dynD and expo curb (r1376)
+ - Added checking for flash content change, and reload config parameters in this case. (r1389)
+ - split Serial into Serial(core UART management) & Protocol (r1548)
+ - loop is globally faster
+
+ ***add-ons***
+ - no more than one MSP per port and per cycle
+ should smooth the delay while requesting MSP, especially for USB port on micro
+
+
+
+ V2.1
+
+ ***Control mode***
+ - introduction of HORIZON MODE.
+ We have now 3 modes:
+ ACRO mode.
+ This is the default one when none of the ANGLE & HORIZON BOX is activated.
+ The copter will continue rotating in the direction in which you tilt sticks.
+ When you let go of sticks it will maintain that angle and not return to level
+ ANGLE mode
+ The position of the stick indicates the angle at which the copter tries to maintain. Sticks off = level.
+ Full sticks in any direction and it will tilt at around 50 degrees. It's proportional in-between.
+ It maintains the angle set by the stick. Let go of sticks and it returns to level
+ HORIZON mode <- new
+ It's a proportional mix of the two. Sticks off = level. Full deflection = ACRO.
+ In between it gradually mixes from LEVEL mode to ACRO.
+ It's a fine mix to be able to do some ACRO with the safety of ANGLE mode when you release the sticks.
+ It allows also a more natural way of flying as the multi seems less constrained.
+
+
+ - failsafe code is more strict.
+ If activated, it takes into account all the main channels and it's important to stay strictly inside the [1000-2000] range.
+ For instance a throttle of 995 will activate the failsafe
+ failsafe is optional and can be activated via #define FAILSAFE
+
+ - Acrotrainer mode introduced
+ a kind of non proportional horizon mode
+ more info here: http://www.multiwii.com/forum/viewtopic.php?f=16&t=1944
+
+ ***add-ons***
+ - pilotlamp integration
+ via #define PILOTLAMP
+
+ - LEDRING pattern was refined
+
+ - variometer introduced
+ enable to get audio feedback upon rising/falling copter/plane
+ via #define VARIOMETER
+
+
+ ***GPS***
+
+ - UBLOX GPS: the baud configuration is autodetected and the UBLOX binary protocol is automaticly set
+ - MKT GPS can now be parsed in binary mode is possible thanks to EOSBandi
+ made for DIYDrones MTK firmware v1.6 and v1.9
+
+ - I2C GPS:
+ correct directionToHome (change it to the opposite direction)
+ there is still a problem remaining when your distance to home reaches 654m: it overflows.
+ a I2C code evolution is needed to correct this problem
+
+ - a forward predictive filter was ported from the Arducopter code by EOSBandi
+ optional and by default activated: #define GPS_LEAD_FILTER
+
+ - first implementation of MSP_SET_WP
+ with the help of Ezio app (EZ-GUI), we can now control the multi with a smartphone:
+ set a new position on a map / follow me / follow heading
+ see Multiwii EZ-GUI specific topic: http://www.multiwii.com/forum/viewtopic.php?f=8&t=2034
+ some video about this functionality:
+ *Multiwii main verion history
+
+ V2.3
+
+ ***Control mode***
+
+ - main PITCH/ROLL/YAW PID modification (r1474)
+ - the sticks scaling is no more affected by PID coefficients
+ - yaw rate (to the right of the PIDs in GUI) now works as stick scaling
+ - default yaw rate is increased (with yaw rate at 0)
+ - yaw PID principle is now different from PITCH&ROLL PID:
+ - yaw ITerm windup is very high, allowing an 'elastic' direction return after a manual perturbation
+ - yaw ITerm is also constrained with a windup independent limit
+ - yaw PTerm is constrained in order to counter the yaw jump effect.
+ use yaw DTerm to increase this constrain (r1573)
+ - yaw ITerm is canceled if the yaw stick is not centered
+ - Throttle angle correction (r1374)
+ - Advanced Headfree mode added (see config.h for instructions) (r1374)
+ - DYNBALANCE option, individual motor can be controled via GUI, to test individual vibration
+ - better gyro & acc calibration accuracy (r1546)
+ - cannot arm is baro mode is on (r1550)
+ - only one baro mode : vario around a throttle deadband (r1554)
+ - magHold is reset when arm is switched on
+ - ONLYARMWHENFLAT option (r1587)
+ ***receiver & UART***
+
+ - RCSERIAL is now deeply integrated. If a MSP_SET_RAW_RC comes,
+ it will just override legacy RX data. (r1420)
+ as a consequence, RCSERIAL is no more an option
+ - no RC averaging for Spektrum & SBUS (r1545)
+ - SBUS center define (r1568)
+ - FAILSAFE_DETECT_TRESHOLD configurable
+
+
+ ***GPS***
+ - Enables sonar altitude from i2c-gps-nav board (1424)
+ - navigation code will follow after 2.3
+
+
+ ***GUI***
+ - Gui with Servosettings. (r1441 & r1450)
+ All models with servo included.
+
+ - GUI globalsettings (for some settings previously only in config.h)
+ - do not display /dev/cu.* devices but only corresponding /dev/tty.* (r1442)
+ - GUI baudrate as configurable setting
+
+
+ ***IMU and baro***
+ - correct GYRO_SCALE for all gyro (r1428)
+ - no more small angles while shaking the board (r1579)
+ http://www.multiwii.com/forum/viewtopic.php?f=8&t=4112
+
+ - baro Alt based on ground temp compensation (r1570)
+ - not reset for FIXEDWING (r1590)
+
+ *** SERVO management ***
+
+ - add a generic way to configure servo settings : conf struct + MSP read/set messages (r1383)
+ - Added general servo handler (r1421 & r1429)
+ - allow preset of some servo stuff from config.h (r1432)
+ - Gui with Servosettings. (r1441)
+ We can get 180 degrees servo move without servo modification.
+
+ ***internal improvements***
+ - migration to a cpp/h code structure
+ - huge flash size optimization (around 1k)
+ - read at most one analog channel per MWii main loop cycle (r1375)
+ - smoothing of RX_RSSI (r1379)
+ - make faster analog reads an option with default off to increase accuracy (r1375)
+ - detangle vbat & buzzer dependancy (r1375)
+ - optimization : small approximation bit shift used instead of * or / number
+ for TPA, rates, dynP, dynD and expo curb (r1376)
+ - Added checking for flash content change, and reload config parameters in this case. (r1389)
+ - split Serial into Serial(core UART management) & Protocol (r1548)
+ - loop is globally faster
+
+ ***add-ons***
+ - no more than one MSP per port and per cycle
+ should smooth the delay while requesting MSP, especially for USB port on micro
+
+
+
+ V2.1
+
+ ***Control mode***
+ - introduction of HORIZON MODE.
+ We have now 3 modes:
+ ACRO mode.
+ This is the default one when none of the ANGLE & HORIZON BOX is activated.
+ The copter will continue rotating in the direction in which you tilt sticks.
+ When you let go of sticks it will maintain that angle and not return to level
+ ANGLE mode
+ The position of the stick indicates the angle at which the copter tries to maintain. Sticks off = level.
+ Full sticks in any direction and it will tilt at around 50 degrees. It's proportional in-between.
+ It maintains the angle set by the stick. Let go of sticks and it returns to level
+ HORIZON mode <- new
+ It's a proportional mix of the two. Sticks off = level. Full deflection = ACRO.
+ In between it gradually mixes from LEVEL mode to ACRO.
+ It's a fine mix to be able to do some ACRO with the safety of ANGLE mode when you release the sticks.
+ It allows also a more natural way of flying as the multi seems less constrained.
+
+
+ - failsafe code is more strict.
+ If activated, it takes into account all the main channels and it's important to stay strictly inside the [1000-2000] range.
+ For instance a throttle of 995 will activate the failsafe
+ failsafe is optional and can be activated via #define FAILSAFE
+
+ - Acrotrainer mode introduced
+ a kind of non proportional horizon mode
+ more info here: http://www.multiwii.com/forum/viewtopic.php?f=16&t=1944
+
+ ***add-ons***
+ - pilotlamp integration
+ via #define PILOTLAMP
+
+ - LEDRING pattern was refined
+
+ - variometer introduced
+ enable to get audio feedback upon rising/falling copter/plane
+ via #define VARIOMETER
+
+
+ ***GPS***
+
+ - UBLOX GPS: the baud configuration is autodetected and the UBLOX binary protocol is automaticly set
+ - MKT GPS can now be parsed in binary mode is possible thanks to EOSBandi
+ made for DIYDrones MTK firmware v1.6 and v1.9
+
+ - I2C GPS:
+ correct directionToHome (change it to the opposite direction)
+ there is still a problem remaining when your distance to home reaches 654m: it overflows.
+ a I2C code evolution is needed to correct this problem
+
+ - a forward predictive filter was ported from the Arducopter code by EOSBandi
+ optional and by default activated: #define GPS_LEAD_FILTER
+
+ - first implementation of MSP_SET_WP
+ with the help of Ezio app (EZ-GUI), we can now control the multi with a smartphone:
+ set a new position on a map / follow me / follow heading
+ see Multiwii EZ-GUI specific topic: http://www.multiwii.com/forum/viewtopic.php?f=8&t=2034
+ some video about this functionality:
+ *
+ http://www.youtube.com/watch?v=qpoPanmVa9Y
+ *
+ http://www.youtube.com/watch?v=hPj6WZex8j0
+ *
+ http://www.youtube.com/watch?v=nPICiiaDTnc
+
+
+ ***multiwii models***
+
+ - USE_THROTTLESERVO (for airplanes), COLLECTIVE_RANGE changed (second value not offset anymore)
+
+ ***IMU and baro***
+
+ - gyro calibration could be held until the MWC stops moving
+ introduced by MIS, and made optional after via a specific define:?define GYROCALIBRATIONFAILSAFE
+
+ - mag gain calibration is improved thanks to EOSBandi
+ based on Fabio FreeIMU code. We won't forget you Fabio...
+
+ - perfect euler angle computation in case of 9DOF (better heading)
+ no more gimbal lock in GUI representation with a 9DOF sensor
+
+ - force sensors orientation to override board specific defaults
+ optional in config.h
+
+ - default ACC LPF factor reduced from 16 (2^4), and is share with ACC LPF for alt hold
+
+ - gyro/acc complementary filter value increased from 400 to 600
+
+ - gyro/mag complementary filter now set to 250 instead of 200
+
+ - gyro scale factor changed from 2380 to 2279
+
+ - accelerometer now used below 1.15G and above 0.85G instead of previous 1.4G/0.6G settings
+
+ - option: SENSORS_TILT_45DEG_LEFT/RIGHT to change X/P configuration without changing board orientation
+
+ - baro calibration and calculation is improved
+ baro indicates now altitude 0 when it is powered. This is the reference altitude.
+
+ - calculation of barometric altitude changed to include temperature, faster update rate
+
+
+ ***internal improvements***
+
+ - some default PID were changed for optimization speed in PID copmputation.
+ The default PID should behave exactly as the previous ones.
+ To restore your old PID settings, just a proportion is needed.
+
+ - EEPROM settings secured by checksum (thanks to MIS)
+ - optional permanent logging to eeprom
+ setting: LOG_PERMANENT
+ - change LED blink frequency for acc-uncalibrated or tilt>25 from 50ms to 10ms
+
+ - allow override of motor/servo mixing from config.h - no need to edit Output.ino
+ experimental
+ - faster cycle time than with v2.1
+ - many many hidden optimizations in the code
+
+
+
+
+ V2.0 (全面用新架構 .ino 拿掉 .pde)
+ WMP and NUNCHUCK are no longer auto recognized.
+ You must explicitly declare them (or just WMP) in config.h
+
+ Pullups are now undefined by default
+
+ LCD is not activated by default
+ Failsafe is not activated by default
+ VBAT monitoring is not activted by default
+
+
+ Multiwii Serial Protocol
+ It's a new protocol to communicate with the FC
+
+ Compatible GUI:
+ open source code, compatible with the new serial protocol:
+ WinGUI from EOSBandi, which is fully equivalent with the original one,
+ with a better look
+ more info here: http://www.multiwii.com/forum/viewtopic.php?f=8&t=1229
+ mwGui from kos
+ more info here: http://www.multiwii.com/forum/viewtopic.php?f=8&t=1791
+ Android ones via serial bluetooth:
+ - adding a bluetooth module to multiwii
+ more info here: http://www.multiwii.com/forum/viewtopic.php?f=6&t=133
+ compatible apps:
+ https://play.google.com/store/apps/details?id=net.xrotor.andmultiwiiconf
+ https://play.google.com/store/apps/details?id=net.loide.games.bicopter
+ https://play.google.com/store/apps/details?id=com.naze32.configurator
+
+ Compatible OSD:
+ open source code, compatible with the new serial protocol
+ Rushduino:
+ more info here: http://www.multiwii.com/forum/viewtopic.php?f=8&t=922
+ mobiDrone:
+ more info here: http://www.multiwii.com/forum/viewtopic.php?f=8&t=1498
+
+ LCD config
+ OLED display
+ thanks to contributions of howardhb and Hamburger
+ more info here: http://www.multiwii.com/forum/viewtopic.php?f=7&t=1350
+
+ VT100 terminal type addition
+ thanks to contribution of Hamburger
+ more info here: http://www.multiwii.com/forum/viewtopic.php?f=7&t=1096
+
+ A multiline option is added to allow the configuration on more than 2 lines
+ useful for displays like OLED or VT100
+
+ We have now a lot of possibilities regarding LCD:
+ SERIAL3W : original 2x16 line from Sparkfun
+ TEXTSTAR : Cat's Whisker LCD_TEXTSTAR Module CW-LCD-02
+ VT100 : vt100 compatible terminal
+ ETPP : Eagle Tree Power Panel LCD
+ LCD03 : an i2c LCD
+ OLED_I2C_128x64
+
+ New proc: ATmega32U4
+
+ Servo:
+ Higher refresh rate:
+ Some servo (mostly digital ones) can work with a higher frequency than 50Hz.
+ The benefit to use a higher refresh rate is a sharper response.
+ Hardware PWM output:
+ On MEGA boards, it's now possible to drive the gimbal servos with
+ a 11-bit PWM servo resolution. Thanks to ronco.
+ The hardware PWM output ensures a jitter free response.
+
+ LED flasher
+ A way to set a flash LED sequence from Tommie
+ more info here: http://www.multiwii.com/forum/viewtopic.php?f=8&t=1505
+
+ Throttle expo
+ There is now another curve in the GUI to configure the Throttle expo.
+ It's a way to smooth the throttle stick response around the hover point.
+ In order to help the setting, there is a small cursor in the graph to show
+ where is the current throttle input.
+
+ ACC LEVEL improvement
+ The LEVE mode is improved since 2.0 thanks to new choice of
+ other complementary filter coefficients and a floating point low pass filter
+
+ Headfree checkbox:
+ It's possible to reset the headfree direction while flying via a checkbox.
+ thanks to Tommie
+
+ Internal code:
+ - the Serial part uses now less RAM (thanks to Tommie first mod)
+ RX/TX buffers are smaller than before.
+ - EEPROM parameters are stored in a struct, and are written in the
+ EEPROM in a single step.
+ - MAG declination was added by EOSBandi, to have more accurate orientation.
+ In some countries, it's really mandatory to set this variable right,
+ otherwise it's impossible to use GPS.
+ - Flag var was introduced for global boolean type variables.
+ - Hamburger introduced some "copter exemple" in order to check
+ if compilation is ok. (should be a way to remove some trivial bugs)
+ - code style (indentation, variable naming convention etc.) started
+ - GUI requires new ControlP5 library to compile
+ - interval variable activate[] is now 16 bit long
+ - new config.h structure
+
+ GUI:
+ - thanks to Danal, there is now the PIN number and the propeller direction
+ drawed in the graph representation
+ - thanks to kos, we can now load and save parameters into a file
+ - there is now a reset button to set all parameters to default
+ - there is now a GUI visual feedback on all states (checkbox items)
+
+
+ ESC calibration
+ experimental
+ It's a special #define which allows to calibrate all ESCs with exaclty
+ the same signal.
+ more info here: http://www.multiwii.com/forum/viewtopic.php?f=13&t=1517
+
+ Telemetry
+ new telemetry manual stepping mode
+
+ Arming option
+ configurable TX stick combos for arm/disarm
+ this way, it's possible to arm/disarm the multi via:
+ - one AUX switch like before
+ - YAW stick and/or ROLL stick
+
+ AIRPLANE mode
+ experimental
+
+ HELICOPTER mode
+ experimental
+
+ Dual & Single copter
+ experimental
+
+ VTAIL mode
+ motor rotation has changed:
+ Front Left & Rear Right: CCW, Front Right & Rear Left: CW , YAW_DIRECTION=1
+
+
+
+ V1.9 (進入穩定 1.0 IDE 環境)
+
+ A new processor
+ Coded by ronco based on ATMega 32U4, which can be seen
+ as an intermediate proc between 328 and 2560
+
+
+ STM32 porting
+ A nice initiative from dongs to port multiwii to a 32bit processor.
+ This code allows also to reuse some cheap FC boards and replace the
+ firmware by a multiwii one.
+ http://www.multiwii.com/forum/viewtopic.php?f=8&t=1193
+ http://code.google.com/p/afrodevices/
+
+
+ Stable mode
+ The term D of the PID LEVEL settings is now used to limit the effect
+ of the level correction thanks to the suggestion of Shikra
+ (see http://www.multiwii.com/forum/viewtopic.php?f=7&t=905 ).
+ By default (D=100), the behaviour of the stable mode is unchanged.
+ With a lower D, effects are:
+ - a smoothing level change
+ - should prevent some wobbles of death
+
+ HeadFree mode
+ Something similar to MK Carefree mode was added.
+ Firstly introduced by mahowik as a imple mode?
+ http://www.multiwii.com/forum/viewtopic.php?f=7&t=925
+ A specific check box was added in the GUI to activate this mode via a switch.
+ You need to have a magnetometer and accelerometer on the board
+ Principle: The head/front will be remembered when you turn on the engines.
+ So it means that you can turn on/off the mode during the flight.
+
+
+
+ Pass-through mode
+ It a checkbox in the GUI.
+ The purpose is to bypass the IMU for some configs like flying wings.
+
+
+
+ Beeper mode
+ It a checkbox in the GUI.
+ The purpose is to activate a beeper in case you have a buzzer
+ installed and you lost your multi in high grass for instance.
+
+
+
+ New stick combo
+ for magneto calibration (throttle=up yaw=right pitch=down)
+
+
+ Better magnetometer calibration
+ The calibration of the magnetometer is now more precise,
+ because it takes into account the relative strength of the magnitude
+ projection on each axis.
+ Based on a code suggested by EOSBandi:
+ http://www.multiwii.com/forum/viewtopic.php?f=8&t=1068
+
+ It should improve the GPS return to target point accuracy.
+
+
+ Gyro smoothing
+ There are 2 options to smooth the gyros: (mainly useful for fixed wings configs)
+ - per axis based on a LPF: #define GYRO_SMOOTHING {20, 20, 3}
+ // separate averaging ranges for roll, pitch, yaw
+ - for all axis, based on a moving average (from Magnetron)
+ #define MMGYRO
+ #define MMGYROVECTORLENGHT 10
+
+ Servo gimbal smoothing is also an option based on the same principle:
+ #define MMSERVOGIMBAL
+ #define MMSERVOGIMBALVECTORLENGHT 32
+
+
+
+ Inflight ACC-calibration:
+ It a way to calibrate the level via on flight tests.
+ Must be defined in config.h
+
+
+ Coding specific improvements:
+ Less RAM memory usage via the use of PROGMEM statement
+
+ No more Arduino Serial function => the new serial communication is more efficient
+
+
+ V1.8
+ - some factorizations between PPM sum receiver code & standard receiver code
+ - EXPERIMENTAL: integration of direct SBUS receiver thanks to the contribution of Captain IxI & Zaggo
+ - LEVEL drift problem:
+ the root of this problem was identified (at least partly).
+ Several options to try to solve it:
+ - adding a #define TRUSTED_ACCZ for those who have huge ACC Z variations when some throttle is applied
+ (it's a test you should do before tructing ACCZ)
+ //#define TRUSTED_ACCZ -> ACCZ is not taken into account in calculation for small angles
+ #define TRUSTED_ACCZ -> ACCZ is taken into account in calculation for small angles
+ - BMA180 init changes to another mode: should help to filter noisy setups
+ - adding a #define STAB_OLD_17 for those who still encounter problem with the stable code,
+ as the old 1.7 LEVEL code (less elaborated) doesn't seem to cause drift.
+ - some flying wing code upgrade (thanks to the suggestion of Hamburger)
+ - ACC added: LSM303DLx_ACC
+
+
+ MAIN SOFT: introduction of a deadband around the stick center
+ via a #define DEADBAND. (commented by default)
+ it might help to get some accuracy from RC TX with not accurate potentiometers
+ however, as it introduces a central deadband, the TX trims are not efficient as before.
+
+ MAIN SOFT: new altitude hold
+ there is now a working implementation :)
+ thanks to ziss_dm, the estimation of the altitude is more precise.
+ the Z ACC is integrated in the alt hold estimation and helps a lot to estimate short term variation
+ how-to:
+ the multi must be nearly altitude stable before the activation of altitude hold.
+ a dead band is then created around the throttle value.
+ at every moment, it's possible to still control the trhottle power when the throttle goes out of the deadband
+ this is not the best implemetation as the multi needs to be quite static before the activation, but it's a good start.
+
+ There are 2 PIDS which are separated ans which can be used separatly.
+ ALT PID: better results are obtained with a P only term (P=4.7 I=0 D=0 is the default value)
+ VEL PID: it stands for velocity PID, more info here: (P=I=D=0 is the default value)
+ it should help to smooth every altitude varation
+ http://www.multiwii.com/forum/viewtopic.php?f=7&t=363
+
+ GUI: altitude representation
+ there is an autoscale feature in the GUI to see better the altitude variation.
+
+
+
+ GUI: introduction of MAG 3 axis raw values
+
+ MAIN SOFT: the failsafe function of the PPM sum receiver was a little mofified and can handle better
+ unusual signal patterns with short pulses.
+
+
+
+ V1.7
+
+ ALL: BARO is more precise, but still not perfect (1m to 2m amplitude).
+ Note it's a code issue, not a baro component issue.
+
+ ALL: RC channels AUX2, CAM1 CAM2 added. only relevant for PPM SUM stream or MEGA boards.
+ On the 328p with a standard receiver, only the first 5 channels are recognized.
+ CAM1 and CAM2 controls are not yet implemented.
+
+ ALL: AUX1 and AUX2 switches are fully customizable via a 3 state position.
+ We can activate/deactivate individually level mode (ACC), baro or compass (mag).
+ It's a generic approach which lets other possibilities to control things in the future.
+ With this principle, it's possible to activate permanently the options you want even if you have only 4 channels
+ (replace the FORCE LEVEL option)
+
+ ALL: CAM triger option:
+ a servo can be connected on digital pin A2 (pro mini) to activate the trigger of a camera
+ the option can be activated or deactivated via the button configuration panel AUX1/AUX2
+ #define CAM_SERVO_HIGH 2000 // the position of HIGH state servo
+ #define CAM_SERVO_LOW 1020 // the position of LOW state servo
+ #define CAM_TIME_HIGH 1000 // the duration of HIGH state servo expressed in ms
+ #define CAM_TIME_LOW 1000 // the duration of LOW state servo expressed in ms
+ the PIN on arduino mega is also A2, but this is not the final PIN mapping
+
+ ALL CAM stab (servo tilt) button option:
+ the servo tilt option can be activated or deactivated via the button configuration panel AUX1/AUX2
+
+ ALL: BI COPTER is now a avatar style implementation.
+ on a pro mini: 9 motor left, 10 motor right, 11 servo left, 3 servo right
+ on mega: 3 motor left, 5 motor right, 6 servo left, 2 servo right
+
+ ALL: addition of Y4 (not tested)
+ on a pro mini: motors 9,10,11,3
+ on mega: motors 3,5,6,2
+ REAR1 , FRONT R , REAR2 , FRONT L
+
+ ALL: addition of HEX6X (not tested)
+ on a pro mini: motors 9,10,11,3,6,5
+ on mega: motors 3,5,6,2,7,8
+ REAR_R , FRONT_R , REAR_L , FRONT_L , RIGHT , LEFT
+
+ ALL: new level mode
+ The level mode is completely redesigned with a coherent independent trim
+ There a now a PI control loop for level mode based on angle estimation.
+ The old auto level strength value was a sort of P only control loop.
+ With the new code, the I term allows to refine the remaining angular error for a better angle positioning accuracy.
+ With an RC rate = 1, the angle at full stick is around 45deg => a flip should never happen in this mode.
+
+ MAIN SOFT: software trim for stable mode
+ It is now possible to adjust the trim of the level mode to match the same TX trim used for the acro mode.
+ 1) disarm the motors
+ 2) full throttle (must be >1900)
+ 3) full PITCH forward/backward and full ROLL left/right (2 axis possibilities) will trim the level mode according to
+ the neutral angle you want to change. The status LED will blink to confirm each ticks.
+
+ MAIN SOFT: new calibration procedure
+ The ACC calibration differs now from the gyro calibration.
+ gyro calibration: it's still done at each power on. It's also possible manually as before: min throttle+full pitch
+ backward+full yaw left.
+ acc calibration: motor disarmed, full throttle up, full pitch backward+full yaw left.
+
+ MAIN SOFT: it was in 1.6 but not mentioned. it's possible to arm/disarm motors
+ either via min throttle + full yaw stick or full roll stick.
+
+ MAIN SOFT: anti yaw jump modification for multi with 4 motors or more
+
+ MAIN SOFT: servo range for tricopter
+ #define TRI_YAW_CONSTRAINT_MIN 1020
+ #define TRI_YAW_CONSTRAINT_MAX 2000
+
+ MAIN SOFT: compass lock now works
+ the option can be activated or deactivated via the button configuration panel AUX1/AUX2
+ the lock is activated 1s after the stick release
+ the lock is maintained only if the YAW stick in centred +/- 50
+ In some case, especially with the 5883, the mag must be calibrated otherwise, the direction is not good.
+ The calibration procedure is not yet implemented.
+
+ GUI: 3D copter attitude visualization
+
+ GUI: ACC calibration. there is now a calibrate button to calibrate the ACC directly from the GUI
+ (it resets the soft trim)
+
+ GUI: thanks to Eberhard, better display of serial ports on Mac OS X and Linux
+
+ GUI: the memory leak bug GUI is corrected
+
+ GUI and LCD: D is now positive (to avoid confusion in explanations)
+
+
+ V1.6
+
+ PPM_SUM 19 (now separated from RC_THROTTLE assignment)
+ RC_THROTTLE 62 (=A8)
+ RC_ROLL 63 (=A9)
+ RC_PITCH 64 (=A10)
+ RC_YAW 65 (=A11)
+ RC_MODE 66 (=A12)
+ RC_AUX(not used) 67 (=A13)
+ RC_7(not used) 68 (=A14)
+ RC_8(not used) 69 (=A15)
+ I2C SDA 20
+ I2C SCL 21
+ FRONTMOTORPIN 2 (on 328p was 3) = servo for tricopter
+ REARMOTORPIN 3 (on 328p was 9)
+ RIGHTMOTORPIN 5 (on 328p was 10)
+ LEFTMOTORPIN 6 (on 328p was 11)
+ Y6RIGHT(HEXFRONT) 7 (on 328p was 6)
+ Y6LEFT(HEXREAR) 8 (on 328p was 5)
+ V_BAT_MONITOR A3
+ TILT&GIMBAL&WING A0/A1
+ POWERPIN 12
+
+
+ V1.4:
+ Serial PPM (PPM SUM):
+ more explanation on //#define SERIAL_SUM_PPM
+ only one line to comment/uncomment in order to activate it
+ a bug was corrected about the number of channel
+
+ new calibration approach
+ at each initialization:
+ the gyro calibration is done
+ the acc calibration is done only for a pure gimbal setup
+ for other setups, the acc is retrieved from the EEPROM
+ on demand (via full left yaw stick + full pitch low stick):
+ the gyro calibration is done
+ the acc calibration is done and store in the EERPOM
+ => the acc calibration must be done at least once on demand.
+
+
+ autolevel strength: the last range was [0;10]. The new range is [0;25]
+ with a reduction weight of 2.5 => more precision for tunning.
+
+
+ http://www.youtube.com/watch?v=qpoPanmVa9Y
+ *
+ http://www.youtube.com/watch?v=hPj6WZex8j0
+ *
+ http://www.youtube.com/watch?v=nPICiiaDTnc
+
+
+ ***multiwii models***
+
+ - USE_THROTTLESERVO (for airplanes), COLLECTIVE_RANGE changed (second value not offset anymore)
+
+ ***IMU and baro***
+
+ - gyro calibration could be held until the MWC stops moving
+ introduced by MIS, and made optional after via a specific define:?define GYROCALIBRATIONFAILSAFE
+
+ - mag gain calibration is improved thanks to EOSBandi
+ based on Fabio FreeIMU code. We won't forget you Fabio...
+
+ - perfect euler angle computation in case of 9DOF (better heading)
+ no more gimbal lock in GUI representation with a 9DOF sensor
+
+ - force sensors orientation to override board specific defaults
+ optional in config.h
+
+ - default ACC LPF factor reduced from 16 (2^4), and is share with ACC LPF for alt hold
+
+ - gyro/acc complementary filter value increased from 400 to 600
+
+ - gyro/mag complementary filter now set to 250 instead of 200
+
+ - gyro scale factor changed from 2380 to 2279
+
+ - accelerometer now used below 1.15G and above 0.85G instead of previous 1.4G/0.6G settings
+
+ - option: SENSORS_TILT_45DEG_LEFT/RIGHT to change X/P configuration without changing board orientation
+
+ - baro calibration and calculation is improved
+ baro indicates now altitude 0 when it is powered. This is the reference altitude.
+
+ - calculation of barometric altitude changed to include temperature, faster update rate
+
+
+ ***internal improvements***
+
+ - some default PID were changed for optimization speed in PID copmputation.
+ The default PID should behave exactly as the previous ones.
+ To restore your old PID settings, just a proportion is needed.
+
+ - EEPROM settings secured by checksum (thanks to MIS)
+ - optional permanent logging to eeprom
+ setting: LOG_PERMANENT
+ - change LED blink frequency for acc-uncalibrated or tilt>25 from 50ms to 10ms
+
+ - allow override of motor/servo mixing from config.h - no need to edit Output.ino
+ experimental
+ - faster cycle time than with v2.1
+ - many many hidden optimizations in the code
+
+
+
+
+ V2.0 (全面用新架構 .ino 拿掉 .pde)
+ WMP and NUNCHUCK are no longer auto recognized.
+ You must explicitly declare them (or just WMP) in config.h
+
+ Pullups are now undefined by default
+
+ LCD is not activated by default
+ Failsafe is not activated by default
+ VBAT monitoring is not activted by default
+
+
+ Multiwii Serial Protocol
+ It's a new protocol to communicate with the FC
+
+ Compatible GUI:
+ open source code, compatible with the new serial protocol:
+ WinGUI from EOSBandi, which is fully equivalent with the original one,
+ with a better look
+ more info here: http://www.multiwii.com/forum/viewtopic.php?f=8&t=1229
+ mwGui from kos
+ more info here: http://www.multiwii.com/forum/viewtopic.php?f=8&t=1791
+ Android ones via serial bluetooth:
+ - adding a bluetooth module to multiwii
+ more info here: http://www.multiwii.com/forum/viewtopic.php?f=6&t=133
+ compatible apps:
+ https://play.google.com/store/apps/details?id=net.xrotor.andmultiwiiconf
+ https://play.google.com/store/apps/details?id=net.loide.games.bicopter
+ https://play.google.com/store/apps/details?id=com.naze32.configurator
+
+ Compatible OSD:
+ open source code, compatible with the new serial protocol
+ Rushduino:
+ more info here: http://www.multiwii.com/forum/viewtopic.php?f=8&t=922
+ mobiDrone:
+ more info here: http://www.multiwii.com/forum/viewtopic.php?f=8&t=1498
+
+ LCD config
+ OLED display
+ thanks to contributions of howardhb and Hamburger
+ more info here: http://www.multiwii.com/forum/viewtopic.php?f=7&t=1350
+
+ VT100 terminal type addition
+ thanks to contribution of Hamburger
+ more info here: http://www.multiwii.com/forum/viewtopic.php?f=7&t=1096
+
+ A multiline option is added to allow the configuration on more than 2 lines
+ useful for displays like OLED or VT100
+
+ We have now a lot of possibilities regarding LCD:
+ SERIAL3W : original 2x16 line from Sparkfun
+ TEXTSTAR : Cat's Whisker LCD_TEXTSTAR Module CW-LCD-02
+ VT100 : vt100 compatible terminal
+ ETPP : Eagle Tree Power Panel LCD
+ LCD03 : an i2c LCD
+ OLED_I2C_128x64
+
+ New proc: ATmega32U4
+
+ Servo:
+ Higher refresh rate:
+ Some servo (mostly digital ones) can work with a higher frequency than 50Hz.
+ The benefit to use a higher refresh rate is a sharper response.
+ Hardware PWM output:
+ On MEGA boards, it's now possible to drive the gimbal servos with
+ a 11-bit PWM servo resolution. Thanks to ronco.
+ The hardware PWM output ensures a jitter free response.
+
+ LED flasher
+ A way to set a flash LED sequence from Tommie
+ more info here: http://www.multiwii.com/forum/viewtopic.php?f=8&t=1505
+
+ Throttle expo
+ There is now another curve in the GUI to configure the Throttle expo.
+ It's a way to smooth the throttle stick response around the hover point.
+ In order to help the setting, there is a small cursor in the graph to show
+ where is the current throttle input.
+
+ ACC LEVEL improvement
+ The LEVE mode is improved since 2.0 thanks to new choice of
+ other complementary filter coefficients and a floating point low pass filter
+
+ Headfree checkbox:
+ It's possible to reset the headfree direction while flying via a checkbox.
+ thanks to Tommie
+
+ Internal code:
+ - the Serial part uses now less RAM (thanks to Tommie first mod)
+ RX/TX buffers are smaller than before.
+ - EEPROM parameters are stored in a struct, and are written in the
+ EEPROM in a single step.
+ - MAG declination was added by EOSBandi, to have more accurate orientation.
+ In some countries, it's really mandatory to set this variable right,
+ otherwise it's impossible to use GPS.
+ - Flag var was introduced for global boolean type variables.
+ - Hamburger introduced some "copter exemple" in order to check
+ if compilation is ok. (should be a way to remove some trivial bugs)
+ - code style (indentation, variable naming convention etc.) started
+ - GUI requires new ControlP5 library to compile
+ - interval variable activate[] is now 16 bit long
+ - new config.h structure
+
+ GUI:
+ - thanks to Danal, there is now the PIN number and the propeller direction
+ drawed in the graph representation
+ - thanks to kos, we can now load and save parameters into a file
+ - there is now a reset button to set all parameters to default
+ - there is now a GUI visual feedback on all states (checkbox items)
+
+
+ ESC calibration
+ experimental
+ It's a special #define which allows to calibrate all ESCs with exaclty
+ the same signal.
+ more info here: http://www.multiwii.com/forum/viewtopic.php?f=13&t=1517
+
+ Telemetry
+ new telemetry manual stepping mode
+
+ Arming option
+ configurable TX stick combos for arm/disarm
+ this way, it's possible to arm/disarm the multi via:
+ - one AUX switch like before
+ - YAW stick and/or ROLL stick
+
+ AIRPLANE mode
+ experimental
+
+ HELICOPTER mode
+ experimental
+
+ Dual & Single copter
+ experimental
+
+ VTAIL mode
+ motor rotation has changed:
+ Front Left & Rear Right: CCW, Front Right & Rear Left: CW , YAW_DIRECTION=1
+
+
+
+ V1.9 (進入穩定 1.0 IDE 環境)
+
+ A new processor
+ Coded by ronco based on ATMega 32U4, which can be seen
+ as an intermediate proc between 328 and 2560
+
+
+ STM32 porting
+ A nice initiative from dongs to port multiwii to a 32bit processor.
+ This code allows also to reuse some cheap FC boards and replace the
+ firmware by a multiwii one.
+ http://www.multiwii.com/forum/viewtopic.php?f=8&t=1193
+ http://code.google.com/p/afrodevices/
+
+
+ Stable mode
+ The term D of the PID LEVEL settings is now used to limit the effect
+ of the level correction thanks to the suggestion of Shikra
+ (see http://www.multiwii.com/forum/viewtopic.php?f=7&t=905 ).
+ By default (D=100), the behaviour of the stable mode is unchanged.
+ With a lower D, effects are:
+ - a smoothing level change
+ - should prevent some wobbles of death
+
+ HeadFree mode
+ Something similar to MK Carefree mode was added.
+ Firstly introduced by mahowik as a imple mode?
+ http://www.multiwii.com/forum/viewtopic.php?f=7&t=925
+ A specific check box was added in the GUI to activate this mode via a switch.
+ You need to have a magnetometer and accelerometer on the board
+ Principle: The head/front will be remembered when you turn on the engines.
+ So it means that you can turn on/off the mode during the flight.
+
+
+
+ Pass-through mode
+ It a checkbox in the GUI.
+ The purpose is to bypass the IMU for some configs like flying wings.
+
+
+
+ Beeper mode
+ It a checkbox in the GUI.
+ The purpose is to activate a beeper in case you have a buzzer
+ installed and you lost your multi in high grass for instance.
+
+
+
+ New stick combo
+ for magneto calibration (throttle=up yaw=right pitch=down)
+
+
+ Better magnetometer calibration
+ The calibration of the magnetometer is now more precise,
+ because it takes into account the relative strength of the magnitude
+ projection on each axis.
+ Based on a code suggested by EOSBandi:
+ http://www.multiwii.com/forum/viewtopic.php?f=8&t=1068
+
+ It should improve the GPS return to target point accuracy.
+
+
+ Gyro smoothing
+ There are 2 options to smooth the gyros: (mainly useful for fixed wings configs)
+ - per axis based on a LPF: #define GYRO_SMOOTHING {20, 20, 3}
+ // separate averaging ranges for roll, pitch, yaw
+ - for all axis, based on a moving average (from Magnetron)
+ #define MMGYRO
+ #define MMGYROVECTORLENGHT 10
+
+ Servo gimbal smoothing is also an option based on the same principle:
+ #define MMSERVOGIMBAL
+ #define MMSERVOGIMBALVECTORLENGHT 32
+
+
+
+ Inflight ACC-calibration:
+ It a way to calibrate the level via on flight tests.
+ Must be defined in config.h
+
+
+ Coding specific improvements:
+ Less RAM memory usage via the use of PROGMEM statement
+
+ No more Arduino Serial function => the new serial communication is more efficient
+
+
+ V1.8
+ - some factorizations between PPM sum receiver code & standard receiver code
+ - EXPERIMENTAL: integration of direct SBUS receiver thanks to the contribution of Captain IxI & Zaggo
+ - LEVEL drift problem:
+ the root of this problem was identified (at least partly).
+ Several options to try to solve it:
+ - adding a #define TRUSTED_ACCZ for those who have huge ACC Z variations when some throttle is applied
+ (it's a test you should do before tructing ACCZ)
+ //#define TRUSTED_ACCZ -> ACCZ is not taken into account in calculation for small angles
+ #define TRUSTED_ACCZ -> ACCZ is taken into account in calculation for small angles
+ - BMA180 init changes to another mode: should help to filter noisy setups
+ - adding a #define STAB_OLD_17 for those who still encounter problem with the stable code,
+ as the old 1.7 LEVEL code (less elaborated) doesn't seem to cause drift.
+ - some flying wing code upgrade (thanks to the suggestion of Hamburger)
+ - ACC added: LSM303DLx_ACC
+
+
+ MAIN SOFT: introduction of a deadband around the stick center
+ via a #define DEADBAND. (commented by default)
+ it might help to get some accuracy from RC TX with not accurate potentiometers
+ however, as it introduces a central deadband, the TX trims are not efficient as before.
+
+ MAIN SOFT: new altitude hold
+ there is now a working implementation :)
+ thanks to ziss_dm, the estimation of the altitude is more precise.
+ the Z ACC is integrated in the alt hold estimation and helps a lot to estimate short term variation
+ how-to:
+ the multi must be nearly altitude stable before the activation of altitude hold.
+ a dead band is then created around the throttle value.
+ at every moment, it's possible to still control the trhottle power when the throttle goes out of the deadband
+ this is not the best implemetation as the multi needs to be quite static before the activation, but it's a good start.
+
+ There are 2 PIDS which are separated ans which can be used separatly.
+ ALT PID: better results are obtained with a P only term (P=4.7 I=0 D=0 is the default value)
+ VEL PID: it stands for velocity PID, more info here: (P=I=D=0 is the default value)
+ it should help to smooth every altitude varation
+ http://www.multiwii.com/forum/viewtopic.php?f=7&t=363
+
+ GUI: altitude representation
+ there is an autoscale feature in the GUI to see better the altitude variation.
+
+
+
+ GUI: introduction of MAG 3 axis raw values
+
+ MAIN SOFT: the failsafe function of the PPM sum receiver was a little mofified and can handle better
+ unusual signal patterns with short pulses.
+
+
+
+ V1.7
+
+ ALL: BARO is more precise, but still not perfect (1m to 2m amplitude).
+ Note it's a code issue, not a baro component issue.
+
+ ALL: RC channels AUX2, CAM1 CAM2 added. only relevant for PPM SUM stream or MEGA boards.
+ On the 328p with a standard receiver, only the first 5 channels are recognized.
+ CAM1 and CAM2 controls are not yet implemented.
+
+ ALL: AUX1 and AUX2 switches are fully customizable via a 3 state position.
+ We can activate/deactivate individually level mode (ACC), baro or compass (mag).
+ It's a generic approach which lets other possibilities to control things in the future.
+ With this principle, it's possible to activate permanently the options you want even if you have only 4 channels
+ (replace the FORCE LEVEL option)
+
+ ALL: CAM triger option:
+ a servo can be connected on digital pin A2 (pro mini) to activate the trigger of a camera
+ the option can be activated or deactivated via the button configuration panel AUX1/AUX2
+ #define CAM_SERVO_HIGH 2000 // the position of HIGH state servo
+ #define CAM_SERVO_LOW 1020 // the position of LOW state servo
+ #define CAM_TIME_HIGH 1000 // the duration of HIGH state servo expressed in ms
+ #define CAM_TIME_LOW 1000 // the duration of LOW state servo expressed in ms
+ the PIN on arduino mega is also A2, but this is not the final PIN mapping
+
+ ALL CAM stab (servo tilt) button option:
+ the servo tilt option can be activated or deactivated via the button configuration panel AUX1/AUX2
+
+ ALL: BI COPTER is now a avatar style implementation.
+ on a pro mini: 9 motor left, 10 motor right, 11 servo left, 3 servo right
+ on mega: 3 motor left, 5 motor right, 6 servo left, 2 servo right
+
+ ALL: addition of Y4 (not tested)
+ on a pro mini: motors 9,10,11,3
+ on mega: motors 3,5,6,2
+ REAR1 , FRONT R , REAR2 , FRONT L
+
+ ALL: addition of HEX6X (not tested)
+ on a pro mini: motors 9,10,11,3,6,5
+ on mega: motors 3,5,6,2,7,8
+ REAR_R , FRONT_R , REAR_L , FRONT_L , RIGHT , LEFT
+
+ ALL: new level mode
+ The level mode is completely redesigned with a coherent independent trim
+ There a now a PI control loop for level mode based on angle estimation.
+ The old auto level strength value was a sort of P only control loop.
+ With the new code, the I term allows to refine the remaining angular error for a better angle positioning accuracy.
+ With an RC rate = 1, the angle at full stick is around 45deg => a flip should never happen in this mode.
+
+ MAIN SOFT: software trim for stable mode
+ It is now possible to adjust the trim of the level mode to match the same TX trim used for the acro mode.
+ 1) disarm the motors
+ 2) full throttle (must be >1900)
+ 3) full PITCH forward/backward and full ROLL left/right (2 axis possibilities) will trim the level mode according to
+ the neutral angle you want to change. The status LED will blink to confirm each ticks.
+
+ MAIN SOFT: new calibration procedure
+ The ACC calibration differs now from the gyro calibration.
+ gyro calibration: it's still done at each power on. It's also possible manually as before: min throttle+full pitch
+ backward+full yaw left.
+ acc calibration: motor disarmed, full throttle up, full pitch backward+full yaw left.
+
+ MAIN SOFT: it was in 1.6 but not mentioned. it's possible to arm/disarm motors
+ either via min throttle + full yaw stick or full roll stick.
+
+ MAIN SOFT: anti yaw jump modification for multi with 4 motors or more
+
+ MAIN SOFT: servo range for tricopter
+ #define TRI_YAW_CONSTRAINT_MIN 1020
+ #define TRI_YAW_CONSTRAINT_MAX 2000
+
+ MAIN SOFT: compass lock now works
+ the option can be activated or deactivated via the button configuration panel AUX1/AUX2
+ the lock is activated 1s after the stick release
+ the lock is maintained only if the YAW stick in centred +/- 50
+ In some case, especially with the 5883, the mag must be calibrated otherwise, the direction is not good.
+ The calibration procedure is not yet implemented.
+
+ GUI: 3D copter attitude visualization
+
+ GUI: ACC calibration. there is now a calibrate button to calibrate the ACC directly from the GUI
+ (it resets the soft trim)
+
+ GUI: thanks to Eberhard, better display of serial ports on Mac OS X and Linux
+
+ GUI: the memory leak bug GUI is corrected
+
+ GUI and LCD: D is now positive (to avoid confusion in explanations)
+
+
+ V1.6
+
+ PPM_SUM 19 (now separated from RC_THROTTLE assignment)
+ RC_THROTTLE 62 (=A8)
+ RC_ROLL 63 (=A9)
+ RC_PITCH 64 (=A10)
+ RC_YAW 65 (=A11)
+ RC_MODE 66 (=A12)
+ RC_AUX(not used) 67 (=A13)
+ RC_7(not used) 68 (=A14)
+ RC_8(not used) 69 (=A15)
+ I2C SDA 20
+ I2C SCL 21
+ FRONTMOTORPIN 2 (on 328p was 3) = servo for tricopter
+ REARMOTORPIN 3 (on 328p was 9)
+ RIGHTMOTORPIN 5 (on 328p was 10)
+ LEFTMOTORPIN 6 (on 328p was 11)
+ Y6RIGHT(HEXFRONT) 7 (on 328p was 6)
+ Y6LEFT(HEXREAR) 8 (on 328p was 5)
+ V_BAT_MONITOR A3
+ TILT&GIMBAL&WING A0/A1
+ POWERPIN 12
+
+
+ V1.4:
+ Serial PPM (PPM SUM):
+ more explanation on //#define SERIAL_SUM_PPM
+ only one line to comment/uncomment in order to activate it
+ a bug was corrected about the number of channel
+
+ new calibration approach
+ at each initialization:
+ the gyro calibration is done
+ the acc calibration is done only for a pure gimbal setup
+ for other setups, the acc is retrieved from the EEPROM
+ on demand (via full left yaw stick + full pitch low stick):
+ the gyro calibration is done
+ the acc calibration is done and store in the EERPOM
+ => the acc calibration must be done at least once on demand.
+
+
+ autolevel strength: the last range was [0;10]. The new range is [0;25]
+ with a reduction weight of 2.5 => more precision for tunning.
2014-10-16 03:17 – 03:39 Mach Ma r907 – r988
顯示 diff
Multiwii
+
+ MultiWii is NOT a product, NOR a plug and play solution.
+ Don't expect to buy a compatible board and run it without a minimum knowledge.
+
介紹
(57 行未修改)
L
+ e另一Porting 到 STM32 MCU 的 MultiWii 變種分支
+ https://github.com/multiwii/baseflight
+ https://code.google.com/p/afrodevices/downloads/list
2014-10-16 03:17 (unknown) r906
顯示 diff
(62 行未修改)
2014-10-16 03:16 – 03:17 Mach Ma r904 – r905
顯示 diff
(58 行未修改)
跟 Y3 一樣, 前進運動時後面的槳不會吃到前面槳風尾流擾動 .... Y3 比 Y4 的 Yaw 靈敏, Y4尾側面機積大, 比Y3, X4 不耐側風.. 而V尾4 更抗側風, 航道飛行很有優勢.
+
+ L
2014-10-15 07:57 – 08:02 Mach Ma r760 – r903
顯示 diff
(48 行未修改)
*
*油門最高值:1898
- *
+ *Y4 Multiwii 調整別篇:
+ 1. Servo PWM Glitch
+ 2.I2C speed
+ 3.Servo refresh rate
+ 4.ACC LPF (Especially for MPU605
+ )
+ 幾種不同多軸機架的比較 :
+ +4 跟 X4 比, +4的 Pitch or Roll 都只需動對向的兩顆, 在 飛控板 Timer/PWM 控制上有更簡單的優勢, 翻起特技又猛又簡潔... 只是後來的 FPV 或空拍機種上, 因為前面擋著一根軸, 所以比較不採用了!
+
+ 跟 Y3 一樣, 前進運動時後面的槳不會吃到前面槳風尾流擾動 .... Y3 比 Y4 的 Yaw 靈敏, Y4尾側面機積大, 比Y3, X4 不耐側風.. 而V尾4 更抗側風, 航道飛行很有優勢.
2014-09-25 08:41 – 09:01 有迪 郭 r467 – r759
顯示 diff
(6 行未修改)
不錯的中文網站:http://oaione.blogspot.tw/2014/02/multiwii-i.html
- 我以這個板子為主介紹:
- MWC MultiWii Lite
+ 2我14以925 eastWillow實習生日誌
+ 個配置為主介紹:
+ 控制板:MWC MultiWii Lite
*露天網址:http://goods.ruten.com.tw/item/show?21307201368003
*價格:500
(3 行未修改)
*燒錄器選用:使用一般的USB 轉 TTL (RS232)即可(100 元而已喔)
*在Config.h 的Combined IMU Boards 設定下選擇:CRIUS_LITE
+ 遙控器:DEVO7
+ 遙控器接收器:DEVO RX1002
+
韌體設定(config.h):
*決定飛行狀態(The type of multicopter):根據你的板子上面的箭頭是指著馬達還是兩顆馬達中央,來決定十字飛行(QUADP)還是X字飛行(QUADX)。(我是指著馬達,所以決定為十字飛行)
(12 行未修改)
*解決方法參考:
*http://www.multiwii.com/forum/viewtopic.php?f=8&t=3940#p40677
- *改變#define MINCHECK 1110
+ *改變#define MINCHECK 後面的數字
+ *由於遙控器最低訊號輸出會低於:111
+ ,所以數字更改為1110
+ *改變#define MAXCHECK 後面的數字
+ *由於遙控無法超過預設值:1900,所以數字更改為1810
+ *結論:MINCHECK > 遙控器的最低值, MAXCHECK <遙控器的最高值一點點
+ *在燒錄前,首先把Arduino 內建的EPPROM 清除
+ *開啟Arduino→File→Examples→EPPROM→epprom_clear
+ *修改for 迴圈的:i < 512,修改為 1024,因為ATMEGA328P 是1Kbytes(1024 Bytes)
+ *最後再把MultiWii.ino 燒錄進去即可。
+ *油門最低值:1098
+ *
+ *油門最高值:1898
*
2014-09-25 08:41 (unknown) r466
顯示 diff
(35 行未修改)
2014-09-25 08:35 – 08:41 有迪 郭 r394 – r465
顯示 diff
(25 行未修改)
*把這一行:#define I2C_SPEED 100000L 註解
*把這一行://#define I2C_SPEED 400000L 取消註解
+ *設定板子(boards and sensor definitions)
+ *我的板子是採用CRIUS_LITE 的相容版,所以把他的那一行註解取消
+ 韌體設定2(MultiWii.h):
+ 由於我的遙控器(DEVO7)和接收器(DEVO RX1002)買回來後就直接插上去,但是久久都沒辦法解除鎖定
+ *解決方法參考:
+ *http://www.multiwii.com/forum/viewtopic.php?f=8&t=3940#p40677
+ *改變#define MINCHECK 1110
+ *
2014-09-25 08:35 (unknown) r393
顯示 diff
(27 行未修改)
2014-09-25 08:25 – 08:35 有迪 郭 r199 – r392
顯示 diff
(13 行未修改)
*Gyro:ITG3205
*Accel :ADXL345
+ *燒錄器選用:使用一般的USB 轉 TTL (RS232)即可(100 元而已喔)
*在Config.h 的Combined IMU Boards 設定下選擇:CRIUS_LITE
-
- *
+ 韌體設定(config.h):
+ *決定飛行狀態(The type of multicopter):根據你的板子上面的箭頭是指著馬達還是兩顆馬達中央,來決定十字飛行(QUADP)還是X字飛行(QUADX)。(我是指著馬達,所以決定為十字飛行)
+ *把這一行 取消註解#define QUADP
+ *設定馬達最低油門(Motor minthrottle):我的電變是SkyWalker 20A
+ *把這行#define MINTHROTTLE 1150 取消註解,後面數字可以更改
+ *設定電變最低指令,就是ESC 沒有反應的數值(Mincommand)
+ *設定I2C 速度(I2C speed)
+ *我打算使用高速的I2C 經度感覺比較高
+ *把這一行:#define I2C_SPEED 100000L 註解
+ *把這一行://#define I2C_SPEED 400000L 取消註解
2014-09-25 08:25 (unknown) r198
顯示 diff
(18 行未修改)
2014-09-25 08:24 – 08:25 有迪 郭 r193 – r197
顯示 diff
(14 行未修改)
*Accel :ADXL345
*在Config.h 的Combined IMU Boards 設定下選擇:CRIUS_LITE
- 燒錄韌體設定:
+
*
2014-09-25 08:24 (unknown) r192
顯示 diff
(18 行未修改)
2014-09-25 08:23 – 08:24 有迪 郭 r178 – r191
顯示 diff
(14 行未修改)
*Accel :ADXL345
*在Config.h 的Combined IMU Boards 設定下選擇:CRIUS_LITE
+ 燒錄韌體設定:
*
2014-09-25 08:23 (unknown) r177
顯示 diff
(17 行未修改)
2014-09-25 08:22 – 08:23 有迪 郭 r173 – r176
顯示 diff
(17 行未修改)
2014-09-25 08:22 (unknown) r172
顯示 diff
(17 行未修改)
2014-09-25 08:22 有迪 郭 r171
顯示 diff
(17 行未修改)
2014-09-25 08:22 (unknown) r170
顯示 diff
(17 行未修改)
2014-09-25 08:20 – 08:22 有迪 郭 r156 – r169
顯示 diff
(13 行未修改)
*Gyro:ITG3205
*Accel :ADXL345
- *MultiWii Config.h 同樣的名字:CRIUS_LITE
+ *在Config.h 的Combined IMU Boards 設定下選擇:CRIUS_LITE
+ *
2014-09-25 08:20 (unknown) r155
顯示 diff
(16 行未修改)
2014-09-25 08:20 – 08:20 有迪 郭 r152 – r154
顯示 diff
(14 行未修改)
*Accel :ADXL345
*MultiWii Config.h 同樣的名字:CRIUS_LITE
- *
2014-09-25 08:20 (unknown) r151
顯示 diff
(17 行未修改)
2014-09-25 08:12 – 08:20 有迪 郭 r75 – r150
顯示 diff
(3 行未修改)
http://www.multiwii.com/
- jhi
+
+ 不錯的中文網站:http://oaione.blogspot.tw/2014/02/multiwii-i.html
+
+ 我以這個板子為主介紹:
+ MWC MultiWii Lite
+ *露天網址:http://goods.ruten.com.tw/item/show?21307201368003
+ *價格:500
+ *主核心:ATMEGA328P
+ *Gyro:ITG3205
+ *Accel :ADXL345
+ *MultiWii Config.h 同樣的名字:CRIUS_LITE
+ *
2014-09-25 08:12 (unknown) r74
顯示 diff
(6 行未修改)
2014-09-25 08:12 – 08:12 有迪 郭 r71 – r73
顯示 diff
(3 行未修改)
http://www.multiwii.com/
- 我現在也剛好在使用這個飛控板,只要5
-
- 元,我可以提供一些經驗
+ jhi
2014-09-25 05:00 – 05:00 鄭鴻旗 r66 – r70
顯示 diff
Multiwii
介紹
-
(4 行未修改)
2014-09-25 02:20 – 02:21 有迪 郭 r31 – r65
顯示 diff
(4 行未修改)
http://www.multiwii.com/
+ 我現在也剛好在使用這個飛控板,只要5
+
+ 元,我可以提供一些經驗
2014-09-24 13:51 – 13:52 鄭鴻旗 r1 – r30
顯示 diff
- Untitled
+ Multiwii
+ 介紹
- This pad text is synchronized as you type, so that everyone viewing this page sees the same text. This allows you to collaborate seamlessly on documents!
+
+
+ http://www.multiwii.com/
2014-09-24 13:50 (unknown) r0
顯示 diff
+ Untitled
+ This pad text is synchronized as you type, so that everyone viewing this page sees the same text. This allows you to collaborate seamlessly on documents!