pre 2.4 version r1729
Posted: Mon Dec 01, 2014 11:53 pm
It's been a long time since a new version is not released.
So, let's try to prepare the 2.4.
Here is a draft for the release note:
GPS:
IMU computation:
ACC:
Baro MS561101:
I2C:
Brushed motor option:
RX receiver:
MSP:
Sonar:
Heli:
Voltage:
As google code do not allow anymore to upload download files, I will try here a new way to share multiwii binaries: bittorrent.
The torrent file is attached to this post.
I think it could be a good way for such a project. We will see if it's good enough or not.
Please use this post to relate feedbacks. What works well, what does not work.
Please don't use this post as a whishlist.
So, let's try to prepare the 2.4.
Here is a draft for the release note:
GPS:
- The main change in this version is for sure the code brought by EOSBandi regarding navigation (supported long time as a standolone MultiWii 2.3navi B7) . Thanks to this major contribution, MultiWii can now navigate trought multiple WPs in an autonomous way.
For the moment, at least 2 GUI can support this code to program a mission: WinGui from EOSBandi / EZ-GUI from Ezio. No support in java GUI MultiWiiConf.
The overall code without GPS is much shorter. However due to the change on GPS code, it is no more compatible with a 32u4 proc.
The GPS code without nav might still work on 328p proc.
A mega proc is mandatory to benefit from all the GPS functionalities.
- dissociate frame parsing & frame computation
- I2C GPS is no more used as an extension with nav computation. It is now supported as a simple GPS device, and all computations stay in the FC, exactly like Serial GPS device.
- GPS Serial frame parsing is now part of generic Serial decoding code
- UBLOX GPS frame parsing improvement
IMU computation:
- mostly optimization on computation time not visible for end users: less float and more 16bit integer where it's possible / some specific avr asm multiplication.
- better accuracy InvSqrt
- heading is computed even with no mag
- hungry tasks has been reduced or divided in order to minimize the jitter of loop time. With this improvement, a constant loop time is set a little bit higher than the average and default to 2.8ms.
ACC:
- Nunchuk is no more suported
Baro MS561101:
- a little bit paradoxal regarding other portion of code approach in multiwii, but float computation tooked from APM appears to be shorter and faster with a minimal approximation.
- computation time smoothed thanks to a task split
I2C:
- no more speed change on the fly: all sensors are default to 400kHz.
The only exception is when a legacy WMP is still used with a 100kHz speed. So no need to bother any longer about this speed if you don't own a genuine WMP.
- In case of I2C errors at the init stage, initialization occurs up to 5 times. This should prevent some remaining I2C errors.
Brushed motor option:
- brushed motors option on 32u4 proc at 8/16/32 kHz
- brushed motors option on 328p proc at 1/4/32 kHz
(viewtopic.php?f=8&t=3635&p=36883#p36877)
RX receiver:
- SUMD RX type introduction
- SBUS improvement / SBUS signal scaling to match other receiver range
- code factorization for all Serial type RX (Spektrum/SUMD/SBUS)
- adjustable averaging sample (AVERAGING_ARRAY_LENGTH) for non Serial RX. For Serial RX, the averaging code is removed because the signal is already natively digital.
- Serial RX should now be usable with no glitch during LCD conf
- RSSI injection on a rc channel
MSP:
- MSP message for ACC TRIM (not used in java MultiWiiConf)
- MSP message for cells voltage
- MSP messages for GPS navigation
- remove MSP ack for MSP_SET_RAW_RC
Sonar:
- fix Devantech SRFxx code that was broken some time ago. But still no code integrated for alt lock using sonar.
Heli:
- experimental : piro compensation
- experimental : better tail lock tacking intoo account collective pitch
Voltage:
- compute watts
As google code do not allow anymore to upload download files, I will try here a new way to share multiwii binaries: bittorrent.
The torrent file is attached to this post.
I think it could be a good way for such a project. We will see if it's good enough or not.
Please use this post to relate feedbacks. What works well, what does not work.
Please don't use this post as a whishlist.