Corvus Corax
0db395b4a2
uncrustify
2013-08-11 15:33:59 +02:00
Corvus Corax
0f31368c64
Merge branch 'corvuscorax/OP-1036_fixed-wing-improvements' into next
2013-08-11 15:13:23 +02:00
Corvus Corax
0724fca32a
refactored pid_apply_scaled back into pid_apply (rename only)
2013-08-11 15:12:17 +02:00
Mathieu Rondonneau
114e353acb
OP-1067 Invalid value for "LinkState"
...
Do not retrieve status from rfm22b if not initialized.
2013-08-09 20:14:13 -07:00
Mathieu Rondonneau
40b0682048
OP-667: This is not an issue since the 2 callers already check for NULL pointer but for consistency, this should be done in the function itself.
2013-08-03 09:39:44 -07:00
Brian Webb
5ac1f33c47
Adds missing pios_gpio_priv.h
2013-08-02 22:01:44 -07:00
Brian Webb
831aa2e213
Merge remote-tracking branch 'origin/next' into brian/GPIO_update
2013-08-02 17:45:06 -07:00
Alessio Morale
99dbecdd7d
Merge remote-tracking branch 'origin/brian/OP-1050_Fix_OPLink_Erase_Settings' into rel-13.06.03
2013-08-01 21:28:37 +02:00
Alessio Morale
8dd3c45ccf
OP-1058 change some missing occurrencies to .field.XXX notation
...
+review OPReview-552
2013-08-01 11:44:12 +02:00
Alessio Morale
01d963affd
OP-1058 uncrustify
2013-08-01 01:28:50 +02:00
Alessio Morale
f226b23c24
OP-1058: fix needed for fw_osd code compilation
2013-08-01 01:19:02 +02:00
Alessio Morale
8351e97faa
OP-1058: fix needed for fw_revoproto code compilation
2013-08-01 01:18:53 +02:00
Alessio Morale
df90a13558
OP-1058: fix needed for fw_coptercontrol code compilation
2013-08-01 01:18:26 +02:00
Alessio Morale
9e1acc3165
OP-1058: fix needed for fw_revolution code compilation
2013-07-31 15:24:26 +02:00
Alessio Morale
d99790be71
OP-1058: Implement explicit item accessor for MultiElement fields.
...
This implementation uses a union containing the Array implementing the MultiElement field data and a struct made from element names.
it allow to replace the following sintax:
settings.PitchRatePID[STABILIZATIONSETTINGS_PITCHRATEPID_KP]
with a more concise and less error prone
settings.PitchRatePID.fields.Kp
while allowing the direct array access using the notation
settings.PitchRatePID.data[n]
2013-07-31 15:23:43 +02:00
Oleg Semyonov
77a6db3007
Merge remote-tracking branch 'origin/os/baro-offset-lpf' into next
2013-07-30 23:41:37 +02:00
Alessio Morale
b4d2423680
OP-1048 fix CF stateestimation bug using AccelTau.
...
move *_filtered to stateestimator data struct and initialize them at init.
they were previously used uninitialized thus causing estimation to fail validations, restarting the filter continously
+review OPReview
2013-07-30 23:41:21 +02:00
Corvus Corax
5206c1f195
uncrustification
2013-07-30 22:14:36 +02:00
Brian Webb
2340f4f0d9
OP-1050: Moves LED configuration above settings erase in OPLink pios_board.c to prevent crashing when settings are erased.
2013-07-29 20:37:00 -07:00
Corvus Corax
4d9f7a72db
Start CallbackScheduler last (after other modules) to reduce risk of race conditions during bootup
2013-07-28 20:31:31 +02:00
Corvus Corax
9537cac701
Merge branch 'next' into corvuscorax/callbackeventdispatcher2
2013-07-28 17:10:20 +02:00
Brian Webb
e246ecf536
Moves pios_led functionality to pios_gpio and makes pios_led a thin layer over pios_gpio. Supports configuring multiple sets of GPIOs.
2013-07-28 07:01:08 -07:00
Richard Flay (Hyper)
c3e3521001
OP-1049: Hotfix to 13.06.02 for MPU6000 FIFO overflow on CC3D when board initialisation takes
...
longer than 150ms.
2013-07-28 01:16:22 +09:30
Oleg Semyonov
1bfa66c2b6
Change settings for baro altitude offset correction
2013-07-26 21:14:44 +02:00
Corvus Corax
ae1db5058e
uncrustification
2013-07-20 16:59:00 +02:00
Corvus Corax
4f6c3c98e3
some small fixes to airspeed compensation in Stabilization
2013-07-20 14:52:22 +02:00
Corvus Corax
2ecbf4a846
add code to scale stabilization PID coefficients by 1/airspeed^2 if the user wishes to do so
2013-07-20 13:52:45 +02:00
Corvus Corax
b3cbb57a2b
made low pass filter alpha a setting
2013-07-20 10:40:29 +02:00
Corvus Corax
1049f483a5
added low pass filter and a few safety checks to gps airspeed estimation
2013-07-20 09:09:44 +02:00
Corvus Corax
72e33a11e4
uncrustification, changed ekf glitch recognition to warning, since its now benign
2013-07-19 15:40:57 +02:00
Corvus Corax
b9ae8844a1
return error if ekf has not inited to prevent arming without proper state estimation
2013-07-19 15:37:50 +02:00
Corvus Corax
be583dd8bf
fixes to gps airspeed sensor
2013-07-19 15:30:33 +02:00
Corvus Corax
842b4e361b
moved airspeed sensor code to correct location
2013-07-19 15:29:04 +02:00
Alessio Morale
6b27ff1e27
OP-1022 add position lowpass, rework setting uavo, cleanup
2013-07-19 11:28:48 +00:00
Alessio Morale
e2a7c6cb25
OP-1022 Reset altitude and velocity when stick goes to deadband
2013-07-19 07:57:24 +00:00
Oleg Semyonov
aa560653d4
Make baro altitude offset (relative to GPS alt) filter configurable
2013-07-19 09:53:44 +03:00
Corvus Corax
ea8373b0f7
re-enabled wind estimation absed on groundspeed
2013-07-18 20:01:02 +02:00
Corvus Corax
2ab92f09a5
fix for the fix
2013-07-18 14:15:23 +02:00
Corvus Corax
9ba1fbdccc
fixed safety check for throttle low, needed for arming on switch, too, but not for disarming
2013-07-18 14:10:33 +02:00
Corvus Corax
7b5bf53200
fixed channel reversals
2013-07-18 13:46:58 +02:00
Corvus Corax
50561bfb5f
made arming/disarming sequence time configurable - useful for heli pilots that like almost-instant disarm
2013-07-18 13:13:23 +02:00
Corvus Corax
114e25ff5d
cleaned up code for armin/disarming and got rid of a bunch of assumptions
2013-07-18 13:05:37 +02:00
Corvus Corax
658b2fc804
cherry-pick of Sambas Arm-On-A-Switch capability implementation
2013-07-18 10:45:36 +02:00
Corvus Corax
6c88184b32
Merge branch 'corvuscorax/OP-1036_fixed-wing-improvements' into next
2013-07-18 09:46:23 +02:00
Corvus Corax
bffe119214
made safety checks in fixed wing path follower configurable
2013-07-17 14:50:23 +02:00
Alessio Morale
005a68826d
OP-1022 Converted to a plain Altitude PID + Velocity PI implementation
2013-07-17 08:38:44 +00:00
Alessio Morale
8c70e64544
OP-1022 reset velocity when changing flight mode
2013-07-17 08:37:56 +00:00
Werner Backes
45cebda628
Add a configurable lowpass filter to smooth throttle commands in
...
AltitudeHold mode.
Conflicts:
flight/modules/AltitudeHold/altitudehold.c
shared/uavobjectdefinition/altitudeholdsettings.xml
2013-07-16 21:21:21 +00:00
Werner Backes
7708aab313
Added vertical velocity as a control loop input to improve dynamics during
...
commanded ascend/decent.
Conflicts:
flight/modules/AltitudeHold/altitudehold.c
flight/modules/ManualControl/manualcontrol.c
shared/uavobjectdefinition/altitudeholdsettings.xml
2013-07-16 21:17:32 +00:00
Alessio Morale
ed233efde2
OP-1022 Uncrustify
2013-07-16 20:02:03 +00:00
Alessio Morale
0203e2c6e2
OP-1022 Adding a proportional term on the square of the altitude error.
2013-07-16 20:01:16 +00:00
Alessio Morale
5b4d46819e
OP-1022 Fix problem with EventSystem due to too high update rate
2013-07-16 12:25:58 +00:00
Alessio Morale
e975e4d9b7
OP-1022: replace old KF in alitude hold with status from filters
2013-07-16 12:25:57 +00:00
Alessio Morale
a57f8913ba
OP-1022: replace old KF in alitude hold with status from filters
2013-07-16 12:25:57 +00:00
Alessio Morale
133ad414f8
OP-1022: Added a velocity loop in AH module, used when throttle is not in central position.
2013-07-16 12:25:57 +00:00
Werner Backes
23b5b37480
Scale down initial throttle when AH is engaged based on roll/pitch angle.
...
This improves AH behaviour when switching to AH while being in fast
forward flight.
2013-07-16 12:25:57 +00:00
Werner Backes
513d509865
Initialize altitude before switching to "running". Not doing this could
...
cause glitches during the very first switch to AH.
2013-07-16 12:25:57 +00:00
Werner Backes
1da68cda9a
Scale up desired throttle in AH mode to compensate for roll/pitch
2013-07-16 12:25:57 +00:00
Werner Backes
73aa4df431
Missing "
2013-07-16 12:25:57 +00:00
Werner Backes
723f308ac7
Removed obsolete (unused) code
2013-07-16 12:25:57 +00:00
Werner Backes
45ed66414f
Changed AH to work with absolute instead of relative altitude
2013-07-16 12:25:56 +00:00
Werner Backes
aecc8543a5
Corrected throttle stick exponentional function in AH mode
2013-07-16 12:25:56 +00:00
Alessio Morale
11bc7804d0
Merge branch 'amorale/OP-994_adc_cleanup' into next
2013-07-16 12:23:25 +00:00
Corvus Corax
81e691f2d6
fixed stack size for manualcontrol, fixed acking behaviour for waypoints
2013-07-16 10:12:16 +02:00
Alessio Morale
104bae01e8
OP-994 Exclude alarm for estimated flight time if Capacity setting is 0
...
+review OPReview-506
2013-07-15 20:35:26 +00:00
Corvus Corax
8b6510da4f
Made AltitudeOffset for ReturnToHome configurable, Made Failsafe-FlightMode configurable.
2013-07-15 09:14:09 +02:00
Alessio Morale
402c84c003
OP-994 Added zero calibration settings
...
+review OPReview-506
2013-07-14 20:26:07 +00:00
Corvus Corax
4d28052dd8
update configuration check prior to arming control, just in case. Allthough the configuration didn't change, other parameters like the list of running tasks can, which alters the alarms.
2013-07-14 06:20:22 +02:00
Corvus Corax
f3a96e5620
Bugfixed in fixed wing path follower, high wind situation now succesfully detected
2013-07-11 16:22:24 +02:00
Corvus Corax
0ffb2dee02
bugfix in pathplanner - 3d distance not calculated correctly
2013-07-11 14:35:37 +02:00
Corvus Corax
c1f32e9beb
OP-1036: rename some settings and move them in the right place
...
tags: de-kenzification
2013-07-10 15:55:12 +02:00
Corvus Corax
27eadc200b
Merge branch 'corvuscorax/lla2nedfilter' into next
...
Conflicts:
flight/modules/StateEstimation/stateestimation.c
2013-07-10 14:38:12 +02:00
Corvus Corax
551780c74b
Merge branch 'corvuscorax/complementary_altitude_filter' into next
...
Conflicts:
flight/targets/boards/revolution/firmware/UAVObjects.inc
2013-07-10 14:27:25 +02:00
Brian Webb
c2df59498b
Merge remote-tracking branch 'origin/master' into next
2013-07-06 07:08:30 -07:00
Brian Webb
0d02df4d02
Uncrustified OPLink code.
2013-07-05 18:49:26 -07:00
Brian Webb
6dbecca7a5
OP-932 Fixes erasing settings on OPLink and blocks OPLinkSettings objects from being transmitted over the radio.
2013-07-05 18:25:52 -07:00
Brian Webb
d0d8a0aadd
OP-932 Adds PWM outputs to OPLinkMini. Both gpio pins on the main and/or flexi port can be configured to output PWM for a total of up to 4 PWM outputs.
2013-07-03 18:58:34 -07:00
Corvus Corax
0107432e45
Added a low pass filter for accels to the altitude filter
2013-07-02 23:17:08 +02:00
Alessio Morale
89cb294218
OP-994 Move pios_architecture,h include in pios,h
...
+review OPReview-506
2013-07-02 19:26:39 +02:00
Brian Webb
c76ee7de9d
OP-932 Fixes the failsafe that detects when the Rx modem loses sync with the Tx modem. This was not working on one-way mode.
2013-06-30 16:08:50 -07:00
Corvus Corax
ba87f32812
typo fix
2013-06-30 19:46:28 +02:00
Corvus Corax
51a4b16af5
New Filter to calculate NED from LLA as part of StateEstimation
2013-06-30 18:49:29 +02:00
Corvus Corax
2a16c0dbd7
removed GPS module ability to calculate NED coordinate (not its job)
2013-06-30 16:31:19 +02:00
Brian Webb
491e5fe685
Adds a failsafe on PPM output on OPLink that kicks in when the link goes down. Also updates all air datarate settings and adds new 64 and 100 kbps modes.
2013-06-29 15:00:38 -07:00
Corvus Corax
7745f93935
changed default coefficients and exposed them to a settings uavobject as they should be
2013-06-29 01:16:02 +02:00
Corvus Corax
2621b087a2
fixed filter in first bench test tries, works surprisingly well...
2013-06-28 21:27:05 +02:00
Corvus Corax
2fb0c0a3ce
some uncrustification
2013-06-28 19:52:09 +02:00
Corvus Corax
b19a74613a
uncrustification
2013-06-28 19:20:39 +02:00
Corvus Corax
360e58abde
eventdispatcher, limit event callback count fired in one go
2013-06-28 19:04:11 +02:00
Corvus Corax
b9038e5ed6
new simple complementary filter to calculate current altitude and vertical speed
2013-06-28 17:22:16 +02:00
Brian Webb
bab69401b9
OP-932 Allows configuring the Revo as coordinator.
2013-06-27 19:55:01 -07:00
Brian Webb
6386b12026
OP-932 Fixes raw serial on UART and USB VCP.
2013-06-27 19:16:01 -07:00
Corvus Corax
f5b3318726
correct calculation of next scheduling
2013-06-27 20:37:37 +02:00
Corvus Corax
cd2cc821d6
made event dispatcher a callback
2013-06-27 18:51:35 +02:00
Brian Webb
d5f16faaec
OP-932 Fixes the datarate used on PPM only mode, and fixes failsafe on PPM output on OPLM.
2013-06-26 20:11:39 -07:00
Brian Webb
caa8d3e70e
OP-932 Forces one-way to be set when PPM only is configured.
2013-06-26 18:02:08 -07:00
Brian Webb
2aea2342ab
OP-932 Adds a direct PPM channel on each Tx packet when in PPM mode, and adds a PPM only mode that uses a 9600 bps air datarate. Also updates the OPLink configuration tab and moves all OPLink configuration to the OPLink configuration tab on the Revo, and customizes the OPLink configuration tab for the Revo.
2013-06-26 18:01:54 -07:00
Brian Webb
b25ba75fd9
OP-932 Removed obsolete include of pios_rfm22b_rcvr from pios.h.
2013-06-26 18:00:22 -07:00
Brian Webb
44a0266e41
OP-932 Adds claiming of the SPI bus in the OPLink channel change function.
2013-06-26 18:00:02 -07:00
Brian Webb
56a60f2983
OP-932 Updates the 19.2 kbps datarate using the spreadsheet.
2013-06-26 17:59:49 -07:00
Brian Webb
61c453f6ff
Removes several of the air datarate settings, and fine tunes the calculation of the max packet length from the datarate and packet time. 9600, 19200, 36400, and 57600 modes tested. Tested 19200 in one-way mode for PPM only.
2013-06-26 17:59:33 -07:00
Brian Webb
f8d60e6dee
OP-932 Adds additional thread and UAVTalk connection to the telemetry module that reads from the uart/radio link on the Revo. This allows the Revo to read OAVObjects over both the uart/radio link and the USB link at the same time. Unfortunately, there's no way to know which link to send UAVObjects out on, so all UAVObjects go to the USB port if USB is connected. This allows UAVObjects to be received from the OPLink radio, even when USB is connected.
2013-06-26 17:58:02 -07:00
Brian Webb
cdd51537f1
Fixes the 9600 bps air datarate for the RFM33B modem.
2013-06-26 17:57:46 -07:00
Brian Webb
fc0328a3cd
OP-932 Adds working one-way mode to the OPLink radio connection. In this mode, packets will only flow from the ground side (coordinator modem) to the flight side modem.
2013-06-26 17:57:32 -07:00
Brian Webb
774a74884a
OP-932 Replaces the RFM22B PPM/receiver code with an OPLinkReceiver UAVObject. This object is generated on a coordinator OPLink, and is used by both the OPLink to generate PPM output, and the OPLinkReceiver on the Revo.
2013-06-26 17:57:11 -07:00
Brian Webb
8c370df319
OP-932 A significant re-work of the OPLink and configuration of the OPLink. Auto-configuration is removed, and remote modems are bound the coordinator, rather than the other way around. Timing of the radio link is also significantly changed. The rfm22b code is also simplified so that it only sends packet, and has no notion about what those packets are, so the rfm22b is converteded to simply a com type device.
2013-06-26 17:56:56 -07:00
Brian Webb
12c8ef2e3a
OP-932 Changes the UAVTalkRelayInputStream function to UAVTalkRelayPacket to allow for not relaying a packet on error, etc. Also adds a function to get the object ID out of the current packet (UAVTalkGetPacketObjId). These functions are used by the OPLink.
2013-06-26 17:56:40 -07:00
Brian Webb
08efc8d152
OP-932: Adds an oplink receiver device, which is based on the gcs receiver device, but uses the OPLinkReceiver UAVObject. The OPLinkReceiver packets are generated on the OPLink modem.
2013-06-26 17:56:20 -07:00
Brian Webb
7c10623615
OP-932 Adds a semaphore to PPM input to signal when a new frame has been received. This can be used to process a new frame with as low a latency as possible.
2013-06-26 17:56:10 -07:00
Brian Webb
ac75af55c1
OP-932 Moves the PIOS_PPM_OUT_Set function from pios_ppm_out_priv.h to pios_ppm_out.h
2013-06-26 17:55:56 -07:00
Corvus Corax
0c43346292
Merge branch 'corvuscorax/OP-947_stateestimator-module' into next
...
Thanks everyone for helping getting this together, especially Alessio
and DLite :-)
2013-06-25 23:48:12 +02:00
Corvus Corax
ed592bd6ab
Merge remote-tracking branch 'origin/rel-13.06.01' into next
2013-06-25 22:32:14 +02:00
Corvus Corax
f2abe1f5c7
StateEstimation: removed (not yet implemented) 16 state EKF support for now
2013-06-25 19:30:21 +02:00
Alessio Morale
0b8d18ae49
OP-994 Move common defines to architecture specific header
...
+review OPReview-506
2013-06-24 18:50:44 +02:00
Corvus Corax
5bdfad4bdb
removed redundant check as suggested in review
2013-06-23 19:39:00 +02:00
Corvus Corax
e916902c9e
changed alarm return states, so cf initialisation will cause visible LED blinks...
2013-06-23 19:26:17 +02:00
Corvus Corax
407817f959
backport of complementary filter bugfix
2013-06-23 18:37:43 +02:00
Corvus Corax
4bf934ae69
prevent positionSensor updates if GPS lock is low quality. Sometimes bad updates are worse than no updates.
2013-06-22 23:15:10 +02:00
Corvus Corax
3392622d2b
backporting change on next to modified Attitude module
2013-06-22 23:07:53 +02:00
Corvus Corax
6163c5f53a
Merge branch 'next' into corvuscorax/OP-947_stateestimator-module
...
Conflicts:
flight/modules/AltitudeHold/altitudehold.c
ground/openpilotgcs/share/openpilotgcs/pfd/default/AltitudeScale.qml
ground/openpilotgcs/share/openpilotgcs/pfd/default/PfdIndicators.qml
ground/openpilotgcs/share/openpilotgcs/pfd/default/SpeedScale.qml
ground/openpilotgcs/src/plugins/pfd/pfdgadgetwidget.cpp
2013-06-22 18:44:03 +02:00
Oleg Semyonov
7f84307714
OP-997: fix release notes. This change was reverted but not documented
2013-06-22 18:29:40 +02:00
Corvus Corax
ee1465fd9a
OP-1018: Fix ETASv3 Airspeed sensor autocalibration
2013-06-22 12:53:23 +02:00
Alessio Morale
57c8cd7872
Merge branch 'amorale/OP-1019_simple_altitudehold' into next
2013-06-21 17:16:24 +02:00
Alessio Morale
d2893fd32b
OP-1019 fix sanitychecks and other uavo definition sanity checks for the newly defined altitudevario mode
2013-06-20 19:39:19 +02:00
Werner Backes
e5b68382e0
Keep TODO comment.
2013-06-20 14:35:40 +02:00
Werner Backes
0f5e354f99
Removed first occurance of accel_err scaling. We don't want to do this
...
twice.
2013-06-20 12:42:22 +02:00
Alessio Morale
5318c20de6
OP-1019 add a simple altitude hold
2013-06-20 11:27:45 +02:00
Alessio Morale
f41f7ade66
Merge remote-tracking branch 'origin/amorale/OP-1009_reset_gyrobias' into next
2013-06-18 20:39:55 +02:00
Alessio Morale
5cc3645b96
Uncrustify
2013-06-18 20:23:46 +02:00
Alessio Morale
54af41765e
OP-1009 missing initialization on a previously static variable.
...
+review OPReview-516
2013-06-17 21:42:30 +02:00
Alessio Morale
b012d55f26
OP-1009 fix comments and fixes review
...
+review OPReview-516
2013-06-17 21:01:24 +02:00
Alessio Morale
2b232ae155
Fix bootloader usb issues caused by USB reconnection fixes.
...
Issues were related to missing usb detection and broken communication while updloading fw.
They are now skipped in NON FreeRTOS mode (aka bootloader).
+review OPReview
2013-06-17 20:24:07 +02:00
Alessio Morale
840e6aa4f7
OP-994 Move temp calculation to a macro defined in pios_board.h as it is achitecture dependant
...
+review OPReview-506
2013-06-15 18:47:33 +02:00
Alessio Morale
d5a77fb525
OP-1009 prevent gyro zeroing from raise an alarm when arming
2013-06-15 17:28:30 +02:00
Alessio Morale
517c331dd4
OP-1012 fixed speeds to make easy to distinguish flash rates
2013-06-15 17:27:48 +02:00
Alessio Morale
f2431b2868
GPS module is builtin so there is no way to shut the gps alarm when gps is not used.
...
This change does remove any alarm when no port is configured for gps.
Things depending on GPS will continue to raise their own alarm when no gps data are feed.
2013-06-15 16:39:29 +02:00
Alessio Morale
354fdf4bdf
OP-1012 implement several messages for alarm led
2013-06-15 16:38:53 +02:00
Alessio Morale
49da1aca86
OP-1009 Redo gyro zero in Complementary after calibration parameters changes
2013-06-15 16:22:24 +02:00
Corvus Corax
1d17d08cca
Merge branch 'next' into corvuscorax/OP-947_stateestimator-module
2013-06-12 18:32:01 +02:00
Alessio Morale
3c39b049d6
Fixed wrong deadband range for AH
2013-06-11 21:17:17 +02:00
Alessio Morale
04326e2386
Merge remote-tracking branch 'origin/amorale/OP-999_ah_failsafe' into next
2013-06-11 15:39:43 +02:00
Alessio Morale
ad123a2761
Merge remote-tracking branch 'origin/amorale/OP-980_connection_reliability_issue' into next
2013-06-11 15:39:34 +02:00
Alessio Morale
2c0f7794a9
Merge remote-tracking branch 'origin/amorale/OP-997_revolution_settings_to_ext_flash' into next
2013-06-11 15:39:13 +02:00
Alessio Morale
f767d64f0c
OP-980 Remove the timeout logic as it causing troubles with windows
...
platform
2013-06-11 10:27:32 +02:00
Alessio Morale
c1a1c04ad8
OP-999 trigger a failsafe condition in AH module when throttle is below 0 for more than 200ms
...
+review OPReview
2013-06-10 23:48:08 +02:00
Brian Webb
789930db45
Moved PIOS_TASK_MONITOR_Initialize to before EventDispatcherInitialize. The event dispatcher creates a task that registers itself with the task monitor. It is unlikely that the task will start before the task monitor is initialized, but not impossible (at least on the F4 targets, I don't think).
2013-06-09 20:16:40 -07:00
Corvus Corax
88071b1078
Merge remote-tracking branch 'next' into corvuscorax/OP-947_stateestimator-module
2013-06-09 22:43:25 +02:00
Corvus Corax
47523bfe15
update PositionSensor whenever there is a 3d fix position update, even if its not good quality...
2013-06-09 22:42:14 +02:00
Corvus Corax
6f59c49506
just uncrustification
2013-06-09 22:09:04 +02:00
Corvus Corax
d8f9f839f2
startup grace time for filter initialisation
2013-06-09 21:49:04 +02:00
Alessio Morale
e9b3ee52f3
OP-997: add fields to SystemStatsUavo to monitor storage status
2013-06-09 19:20:00 +02:00
Alessio Morale
1cb69e6a0e
OP-997: Revert Revolution settings storage to external flash to prevent freezes during sector erase/garbage collection
2013-06-09 19:17:12 +02:00
Corvus Corax
218e15ce61
Merge branch 'next' into corvuscorax/OP-947_stateestimator-module
2013-06-09 17:24:08 +02:00
Alessio Morale
87db5d30b0
OP-980 change how the semaphore is used on PIOS_USB_CheckAvailable to prevent deadlocks
2013-06-09 16:14:44 +02:00
Corvus Corax
a99255a36a
allow smaller nonzero variances during runtime
2013-06-09 13:57:36 +02:00
Corvus Corax
022f1a1ac0
Merge branch 'next' into corvuscorax/OP-947_stateestimator-module
...
Conflicts:
flight/modules/Attitude/revolution/attitude.c
2013-06-09 13:49:52 +02:00
Alessio Morale
6d71d92860
Merge remote-tracking branch 'origin/amorale/OP-990_revo_bias_with_shaken_startup' into next
2013-06-09 09:10:33 +02:00
Alessio Morale
0f28920e5f
Merge remote-tracking branch 'origin/amorale/OP-988_gps_not_configured_alarm' into next
2013-06-09 09:09:44 +02:00
Alessio Morale
107b930573
Merge remote-tracking branch 'origin/amorale/OP-980_revolution_usb_reconnect' into next
2013-06-09 09:07:24 +02:00
Alessio Morale
59eaf01089
OP-990 Change initial delay before calibration to 4 seconds to allow to put the craft on the ground after battery connection
...
+review OPReview-505
2013-06-09 08:59:35 +02:00
Alessio Morale
cea6496866
OP-995: Cleanup of Battery Module
2013-06-08 13:53:19 +02:00
Alessio Morale
bdd80a63c9
OP-994: Refactor/Cleanup of cpu temp measurement: fixed declarations for Voltage Scale constants
2013-06-08 13:46:57 +02:00
Alessio Morale
ab1c9c157f
OP-995: Fixes for correct battery monitor readout
2013-06-08 13:40:01 +02:00
Alessio Morale
51a7f27b99
OP-994 Add an API to PIOS_ADC to get directly the Voltage value
2013-06-08 13:36:54 +02:00
Alessio Morale
6671a404ca
OP-994 Refactor/Cleanup of cpu temp measurement
2013-06-08 13:36:18 +02:00
Alessio Morale
7a6b5c5681
OP-990 Fixed the main cause of wrong bias calculation:
...
The initial bias calculation done between 1 and 7 seconds
since power on was completely skipped due to a wrong condition.
2013-06-08 13:10:23 +02:00
Alessio Morale
3ad123718e
Revert "OP-990 zeroed the rollpitch bias rate at startup and incremented at arming."
...
This reverts commit c0b926a2d5
.
2013-06-08 13:10:23 +02:00
Corvus Corax
f79c227def
Merge branch 'corvuscorax/uavobjmanagerfix' into corvuscorax/OP-947_stateestimator-module
2013-06-06 22:41:31 +02:00
Corvus Corax
115b991f86
Bugfix in UAVObjectmanager. LoadFromFile() is not allowed to use GetByID since its called from Register, where the uavobject is not registered yet.
2013-06-06 21:22:17 +02:00
Corvus Corax
6fdf554d4a
Merge branch 'next' into corvuscorax/OP-947_stateestimator-module
...
Conflicts:
flight/modules/Attitude/revolution/attitude.c
ground/openpilotgcs/src/plugins/opmap/opmapgadgetwidget.cpp
shared/uavobjectdefinition/attitudesettings.xml
2013-06-06 19:25:54 +02:00
Corvus Corax
fcc3f519d8
filterekf: Remember critical divergence and set error flag to prevent (re)arming so the user will notice
2013-06-06 17:59:27 +02:00
Corvus Corax
b0db191703
Divide mag variance by Be squared to cope with normalization correctly
2013-06-06 17:54:59 +02:00
Alessio Morale
ee7887c406
OP-980 Extended the memory barrier macros and fixed barrier kind in pios_usb_hid
...
+review OPReview-501
2013-06-06 10:26:41 +02:00
Mathieu Rondonneau
45391abd55
OP-976: RE-run uncrustify
2013-06-05 19:48:56 -07:00
Mathieu Rondonneau
a8c946dcb2
OP-976: Fix uncrustify changes that put a space before the ";" in the macro
2013-06-05 19:46:55 -07:00
Mathieu Rondonneau
89273146df
Merge branch 'next' into Mathieu/OP-976_module_macro
2013-06-05 19:17:54 -07:00
Mathieu Rondonneau
d2fae1abed
OP-976: fixing function name in the macro although don't have any effect since the linker directives are local.
2013-06-05 19:15:47 -07:00
Alessio Morale
c340bfc294
OP-980 Insert locking while checking status in PIOS_USB_CheckAvailable
...
+review OPReview-501
2013-06-06 01:42:26 +02:00
Alessio Morale
5fa73624da
OP-980 Added memory barrier to preserve sequence to ensure callback validation
...
+review OPReview-501
2013-06-06 01:39:45 +02:00
Corvus Corax
bab95e7ca8
check variances for validity and reinitialize if invalid
2013-06-06 00:07:11 +02:00
Corvus Corax
f22a0d299e
EKF: Averaging term for dT
...
- prevent scheduling jitter from screwing with the filter while keeping dT accurate
2013-06-06 00:06:12 +02:00
Alessio Morale
c0b926a2d5
OP-990 zeroed the rollpitch bias rate at startup and incremented at arming.
2013-06-05 22:19:20 +02:00
Corvus Corax
6f6ca2481e
Changed CoordinateConversion to use doubles for LLA2NED conversion, so coordinates can be represented in ECEF with sufficient resolution
2013-06-05 20:40:49 +02:00
Corvus Corax
5e306250a5
Enabled simulated sensors in SimPosix for debugging of EKF behaviour including:
...
- SimPosix again stores and reads UAVObjects to disk (was disabled by someone)
- simulated sensors moved to allow automated module initialisation in simposix
- fixed a categorization bug in a uavobject
2013-06-05 19:34:48 +02:00
Alessio Morale
b4f8b02a42
Revert "some optimizations, use real rx and tx buffer size instead of max buffer leghts"
...
It does not work in Windows so need further investigation prior to undo this revert
This reverts commit 901db6f828
.
+review OPReview-501
2013-06-05 19:01:01 +02:00
Corvus Corax
dc68d7d94e
changed insgps, removed unnecessary gain representation
2013-06-05 17:52:49 +02:00
Brian Webb
f9706132f7
Fixed setting of timestampLength in UAVTalk parsing when the UAVObject is not initialize in the firmware. This mostly affects the OPLink, which doesn't initialize most of the UAVObjects, but does need to parse them.
2013-06-04 20:37:51 -07:00
Alessio Morale
8fb81ae17b
OP-980 uncrustify
...
+review OPReview-501
2013-06-05 01:02:37 +02:00
Alessio Morale
f1f48b0ec6
OP-980 Fix usb reconnection issue for Revolution target.
...
step 3: add a timeout on rx_active to prevent rx locks
2013-06-05 00:54:08 +02:00
Alessio Morale
901db6f828
some optimizations, use real rx and tx buffer size instead of max buffer leghts
2013-06-05 00:53:50 +02:00
Alessio Morale
ce2bce353f
OP-980 Fix usb reconnection issue for Revolution target.
...
step 2: check for cable disconnection (vbus) and issue a SW reconnection
2013-06-05 00:04:26 +02:00
Mathieu Rondonneau
23b2907d08
OP-976: Add the ';' back
...
This compile successfuly with make all_flight
2013-06-03 20:37:40 -07:00
Alessio Morale
14b87383b9
OP-980 Fix usb reconnection issue for Revolution target.
...
step 1: reset tx/rx_active flags on disconnection/reconnection
2013-06-04 01:52:44 +02:00
Alessio Morale
cfe057c573
OP-988 Raise SYSTEMALARMS_ALARM_CRITICAL when no gps port is configured, the same alarm as no gps case.
...
+review OPReview
2013-06-03 20:30:41 +02:00
Oleg Semyonov
65c463bf03
Update Windows USB driver file
2013-06-03 16:39:41 +03:00
Richard Flay (Hyper)
8c494dce00
OP-982: Further updates to Strings in response to review feedback.
...
+review OPReview-493
2013-06-02 18:43:37 +09:30
Richard Flay (Hyper)
3e6389d9b6
OP-982: Updates to spacing and Strings in response to review feedback.
...
+review OPReview-493
2013-06-02 18:11:04 +09:30
Richard Flay (Hyper)
35b580a34e
OP-982: Adds Revolution related entries to OpenPilot-CDC.inf for Windows.
...
+review OPReview
2013-06-02 08:44:54 +09:30
Corvus Corax
6435604182
some fixes and corrections as suggested in review
2013-05-29 22:18:08 +02:00
Corvus Corax
e82a52e8ff
filterekf: changed mag variance to 1/1000000 to compensate for normalization, as it was done on old AHRS
2013-05-29 22:02:39 +02:00
Alessio Morale
6b2218d1df
Merge remote-tracking branch 'origin/amorale/OP-925_Cyr_patches_for_revo_cf' into next
2013-05-28 18:39:42 +02:00
Alessio Morale
a286a20cb0
OP-925 Changed dT to comply with revo sensor rate
...
+review OPReview-484
2013-05-27 21:05:39 +02:00
Fredrik Arvidsson
d9d2b7d167
Merge remote-tracking branch 'origin/os/OP-770_version_info_stuff' into thread/OP-770_UAV_Export_Version_Info_Fix
2013-05-27 19:30:18 +02:00
Brian Webb
50162333d8
Merge remote-tracking branch 'origin/dankers/minor-modem-renames' into next
2013-05-27 09:44:17 -07:00
Brian Webb
16b787179c
Merge branch 'next' of ssh://git.openpilot.org/OpenPilot into next
2013-05-26 08:37:05 -07:00
Brian Webb
e9f83bcc80
Fixes a bug in the rfm22b driver that was reading past the end of the bindings list when receiving a status message. Also adds some formatting changes that came about after doing a make uncrustify_all.
2013-05-26 08:36:38 -07:00
Alessio Morale
9bfce1bcd6
Merge remote-tracking branch 'origin/amorale/OP-925_Cyr_patches_for_revo_cf' into next
2013-05-26 16:18:05 +02:00
David Ankers
69ede538c9
Update date bu just an easy ay to start review +review OPReview-485
2013-05-26 17:50:44 +10:00
David Ankers
2f9c9df736
Increase the size of the USB Descriptor array to take extra char
2013-05-26 17:03:48 +10:00
David Ankers
7a9466bbf9
State in the header which board this is for
2013-05-26 16:12:35 +10:00
David Ankers
f7a9f94a36
Missing file header
2013-05-26 16:09:55 +10:00
David Ankers
a5b856d1bc
Change board description name to OPLink Mini
2013-05-26 16:04:55 +10:00
David Ankers
d5eccea78f
Comment and header renames, change PipX to OPLink Mini
2013-05-26 15:48:02 +10:00
Oleg Semyonov
444431579e
OP-770: add/rename some version-info.py template variables
2013-05-25 23:02:29 +02:00
Corvus Corax
7bf58f09c5
filterekf gyro bias adjustment bugfix
2013-05-25 16:18:18 +02:00
Brian Webb
4036e95bd5
Merge remote-tracking branch 'origin/next' into OP-932-Modularize_Radio_Driver
2013-05-25 06:56:13 -07:00
Corvus Corax
6c25e82633
fixed bugs in GPS, corrected zeroing of updated flags in stateestimation
2013-05-25 12:28:32 +02:00
Richard Flay (Hyper)
bd538703ea
OP-962: Tweaked C2U_STACK_SIZE_BYTES to be a multiple of 4.
...
+review OPReview-480
2013-05-25 17:10:41 +09:30
Corvus Corax
87b1b4873c
bugfix in baro alt filter plugin
2013-05-25 02:02:53 +02:00
Corvus Corax
902bf29c92
some small bugfixes to filterekf
2013-05-25 00:05:06 +02:00
Corvus Corax
b916df5448
ported cyr's patch to new CF
2013-05-24 23:59:12 +02:00
Corvus Corax
259eeecbbc
Put Macros in StateEstimation into the file header after request in review.
...
Author expresses concernes about the code readability in this layout
(Commit message edited, was: "HATE THIS")
2013-05-24 19:19:40 +02:00
Corvus Corax
40864b2d3b
some cleanups
2013-05-23 21:21:14 +02:00
Alessio Morale
711f1ad35b
Fix indentation
2013-05-23 00:47:38 +02:00
Corvus Corax
53ba3f4b74
removed GPS check from ekf and put into GPS
2013-05-22 23:20:31 +02:00
Alessio Morale
697874b315
Port of OP-754 On Revo. Fixed signs on bias calculation. Added rate zeroing at startup to yaw
2013-05-22 23:17:09 +02:00
Corvus Corax
843db63cf6
some last issues from review
2013-05-22 23:08:48 +02:00
Corvus Corax
9b95af2006
refaktored GPS Sensor UAVObjects
2013-05-22 22:36:23 +02:00
Corvus Corax
b56de3b66b
filterchain rework
2013-05-22 21:26:18 +02:00
Corvus Corax
8fe159c457
some changes...
2013-05-22 19:05:28 +02:00
Brian Webb
ac4847c8ac
OP-932 Moves the configuration of the com ports on the coordinator OPLink to startup.
2013-05-21 19:48:21 -07:00
Brian Webb
dbce08a151
OP-932 Changes the radio task loop to loop every 1ms, and reduces the tx transmit period back down to 8ms. Also reduces the Tx windows to 1ms for each modem, and reserves the latter half of the Tx window for channel changing.
2013-05-21 17:40:05 -07:00
Alessio Morale
294a295510
Port CF patch from Cyr that filters accel to reduce attitude drift due to vibrations
2013-05-22 00:55:10 +02:00
Alessio Morale
0b5a28f19e
Port OP-754 to Revolution attitude estimation module: subtract GyroBIAS to work on raw value
...
Added MagKp and MagKi to AttitudeSetting UAVO
2013-05-21 23:44:12 +02:00
a*morale
464d2be9f7
Port OP-754 to Revolution attitude estimation module
2013-05-21 22:40:35 +02:00
Corvus Corax
ecc4a529a3
some fixes to filtercf and stateestimation and filterekf - Thanks Werner for help :-)
2013-05-21 20:06:33 +02:00
Brian Webb
d4a4588011
OP-932 Changes the RFM22 frequency hopping to change channels every Tx period. Also increases the Tx clock period from 8ms to 16ms, and adds a check on calculation the the time delta that it doesn't change the previous estimated time delta by too much. If the delta between the current time delta and the previously estimated time delta is too large it could indicate that there was a delay somewhere that makes the calculated time delta inaccurate.
...
Rearanges the packet send priority in the rfm22b driver so that PPM packets are top priority.
2013-05-20 20:49:24 -07:00
Alessio Morale
8e7e7e052a
OP-962 Fix Stack size for ComUSBBridge
...
+review OPReview
2013-05-21 00:45:45 +02:00
Corvus Corax
3dda543608
Merge branch 'corvuscorax/OP-946_refaktor_sensor_and_state' into corvuscorax/OP-947_stateestimator-module
2013-05-20 20:53:46 +02:00
Corvus Corax
fb433a97d7
Bugfix: add gyro bias to correct axis
2013-05-20 20:52:45 +02:00
Corvus Corax
3cb4f59c94
failsafe, fallback to attitude for now until StateEstimation works reliably
2013-05-20 20:49:34 +02:00
Corvus Corax
a04b76f836
some bugfixes to make it boot on revo
2013-05-20 20:25:20 +02:00
Corvus Corax
8a36959d39
OP-945: Filter refaktoring - last fixes to make it compile
2013-05-20 17:04:52 +02:00
Corvus Corax
e7c35a94f6
added EKF filter
2013-05-20 16:31:10 +02:00
Corvus Corax
a286cc6b24
update settings during initialisation only
2013-05-20 15:28:18 +02:00
Corvus Corax
a03f87efb5
Complementary filter added
2013-05-20 15:04:36 +02:00
Corvus Corax
741c70cda4
barometric bias filter added
2013-05-20 12:56:40 +02:00
Corvus Corax
7ea258a895
airspeed filter added
2013-05-20 12:45:39 +02:00
Corvus Corax
2f082dbf87
added filter for magnetometer bias drift compensation
2013-05-20 11:24:57 +02:00
Corvus Corax
1bd9cdafab
added missing attitude state variable ;)
2013-05-20 10:43:40 +02:00
Corvus Corax
34294d2635
Magneto to Mag fix
2013-05-20 10:35:54 +02:00
Corvus Corax
d258caad3f
Merge branch 'corvuscorax/OP-946_refaktor_sensor_and_state' into corvuscorax/OP-947_stateestimator-module
2013-05-20 10:34:40 +02:00
Corvus Corax
1236bf3ed9
renamed Magneto to Mag
2013-05-20 10:33:02 +02:00
Corvus Corax
49b8e0d699
Merge branch 'next' into corvuscorax/OP-946_refaktor_sensor_and_state
2013-05-20 10:07:55 +02:00
Oleg Semyonov
0798d8e330
OP-891: move firmware_info template under flight directory
2013-05-20 01:12:45 +03:00
Corvus Corax
46e7d2121f
fake filter for stationary position data added
2013-05-19 22:49:11 +02:00
Corvus Corax
bf80b3f103
readded missing header
2013-05-19 22:40:50 +02:00
Corvus Corax
bc6f06e943
first filter implemented and some bugs fixed
2013-05-19 22:24:12 +02:00
Corvus Corax
b62c758831
statefilter main file almost complete, time to start work on filter classes
2013-05-19 22:24:12 +02:00
Corvus Corax
2ab9f938c9
ongoing dev work, incomplete
2013-05-19 22:24:12 +02:00
Corvus Corax
d97934cf86
Merge branch 'next' into corvuscorax/OP-946_refaktor_sensor_and_state
2013-05-19 22:05:48 +02:00
Brian Webb
649667d338
Addes ifdef PIOS_INCLUDE_WDG around several calls to the wathdog functions for the Revolution firmware (allows you to turn off the watchdog).
2013-05-19 12:56:23 -07:00
Sexy Pony
900f643bbd
Reformat source code with 'make uncrustify_all' run twice. NO CODE CHANGES
2013-05-19 17:37:30 +03:00
Alessio Morale
ab7af16be3
Merge branch 'amorale/OP-901_lib_udates-usb_fixes' into HEAD
...
Conflicts:
flight/pios/stm32f10x/library.mk
flight/targets/boards/revoproto/firmware/pios_board.c
2013-05-19 15:01:08 +02:00
Corvus Corax
f630351c75
Merge branch 'next' ...
2013-05-19 12:17:40 +02:00
Alessio Morale
37eabb0931
Pointed type is explicitly used with sizeof when dealing with struct pointers.
...
+review OPReview-474
2013-05-19 12:00:16 +02:00
Corvus Corax
daf329d8f5
uncrustification (again)
2013-05-19 11:38:18 +02:00
Alessio Morale
88a39a81d8
Enable ComUsbBridge Optional Module and fix CDC support for RevoProto
2013-05-19 10:07:01 +02:00
Corvus Corax
39cde8947c
removed forgotten commented out code
2013-05-18 22:19:22 +02:00
Corvus Corax
9c3a8369cd
OP-946: State And Sensor Refaktoring: Moved Filtering for Magnetometers, Gyros and Accels into Attitude
2013-05-18 21:55:47 +02:00
Alessio Morale
2e458b5652
OP-901 USB OTG/Device Drivers are not targeted for f103 (they are targeted at f105) so move again to F4 library folder instead of common
2013-05-18 20:53:28 +02:00
Alessio Morale
3ec9447fdc
OP-901 Update CMSIS to r3p2-00rel1
2013-05-18 20:29:06 +02:00
Corvus Corax
5284195c29
Refaktored sensor and state UAVObjects consistently into XXYSensor and XXYState
2013-05-18 19:36:45 +02:00
Alessio Morale
e8dc7509f9
Merge branch 'next' of ssh://git.openpilot.org/OpenPilot into next
2013-05-18 17:18:48 +02:00
Oleg Semyonov
80ce4fc995
Fix weird error of running python script with extra --verbose option as a part of script name
...
This error of building any EF targets was found on Windows if used with
make V=1 verbose output option. The '--verbose' python script option was
used by the Windows make as a part of python script file name with
'file not found' error. Now it works. Still can't get the cause of that
error, though...
2013-05-18 17:25:26 +03:00
Alessio Morale
c1f767b12d
Merge remote-tracking branch 'origin/amorale/OP-954_logfs_settings_in_internal_flash' into next
...
Conflicts:
flight/pios/common/pios_flashfs_logfs.c
2013-05-18 15:53:25 +02:00
Alessio Morale
66da2796e0
Merge remote-tracking branch 'origin/amorale/OP-905_revolution_watchdog_next' into next
2013-05-18 15:00:50 +02:00
Alessio Morale
aba64689a6
OP-901 removed stale core_cm3.c file
2013-05-18 14:25:37 +02:00
Corvus Corax
80caceb984
make uncrustify_all;make uncrustify_all;
2013-05-18 14:17:26 +02:00
Alessio Morale
976ad90211
OP-901 Updated F4 CMSIS startup files, Moved USB OTG and USB Device library to common
2013-05-18 14:03:03 +02:00
Alessio Morale
f0c01d0eff
OP-901 Updated F4 StdPeriph Driver Library to V1.1.0
2013-05-18 13:57:45 +02:00
Alessio Morale
448e98b336
OP-901 Updated F1 StdPeriph Driver Library to v3.5.0
2013-05-18 13:55:43 +02:00
Brian Webb
bc4f615c25
Adds setting HSE_VALUE on all F1 targets (should only be necessary if the HSE clock is not 8MHz).
...
Moves the CMSIS system_stm3210x.c from library.mk to the individual Makefiles for the F1 targets. This allows for custom SystemInit functions where necessary.
2013-05-17 22:01:48 -07:00
Alessio Morale
09e241e8bd
OP-901 removed old stale files in PiOS folder
2013-05-18 00:25:07 +02:00
Alessio Morale
67e41c34fc
Merge remote-tracking branch 'origin/next' into amorale/usb_fixes
2013-05-17 22:46:42 +02:00
Alessio Morale
2735f8a620
OP-901 Updated common CMSIS files
2013-05-17 22:41:34 +02:00
Alessio Morale
13ee42a42a
OP-901 Fixed errors due to unused parameter
2013-05-17 22:39:16 +02:00
Alessio Morale
a7460bfd3c
OP-954 Fixes for UT
...
+review OPReview-470
2013-05-17 21:51:12 +02:00
Corvus Corax
e0de2083af
Merge branch 'next' into corvuscorax/OP-944_EKF-improvements
...
Conflicts:
flight/libraries/insgps13state.c
2013-05-16 23:29:15 +02:00
Corvus Corax
667f46ceb1
removed non ASCII characters in comment line
2013-05-16 23:21:32 +02:00
Richard Flay (Hyper)
a6aedee9fa
Merge branch 'next' into brian/support_inverted_USB_vsense
2013-05-17 05:54:42 +09:30
Richard Flay (Hyper)
031ea3e069
Merge branch 'next' into brian/code_cleanup_130514
2013-05-17 05:49:38 +09:30
Alessio Morale
6ba15ebc53
OP-954 Fixes from review:
...
- CopterControl target fix
- tabs in Nakefiles
- Removed duplicate stale settings and clean empty lines in osd Makefile
+review OPReview-470
2013-05-15 23:18:50 +02:00
Alessio Morale
c80f01dff9
OP-954 Rename the legacy PIOS_INCLUDE_FLASH_SECTOR_SETTINGS to PIOS_INCLUDE_FLASH_LOGFS_SETTINGS
...
+review OPReview-470
2013-05-15 23:16:34 +02:00
Richard Flay (Hyper)
ae14c13195
Merge branch 'next' into hyper/OP-951_add--Wshadow-to-flight-CFLAGS
...
Conflicts:
flight/modules/ManualControl/manualcontrol.c
2013-05-16 06:28:56 +09:30
Richard Flay (Hyper)
9572a156ce
Merge branch 'next' into corvuscorax/o3fixes
2013-05-16 05:56:45 +09:30
Richard Flay (Hyper)
ef5bb6f6fe
Merge branch 'next' into OP-950_spi_fixes_FreeRTOS
2013-05-16 05:41:09 +09:30
Brian Webb
156109bb88
Added support for an active low USB vsense line.
2013-05-14 20:37:13 -07:00
Brian Webb
1608d11416
Cleans up some compiler warnings/erros and adds missing ifdefs around some e.g. WDG calls.
2013-05-14 20:22:54 -07:00
Alessio Morale
71cae382ae
OP-954 Update OPLink to support the "UAVObject on a specific LogFS instance" updates
2013-05-14 23:54:50 +02:00
Stacey Sheldon
280f537644
f4 usb: ensure that we NAK on unused OUT endpoints
...
The ST USB code will automatically receive on any
endpoint that is opened but not in the NAK state.
Make sure we set OUT endpoints to NAK initially.
It also happily writes via a NULL pointer in ep->xfer_buff
which writes to address 0x0000_0000. Since address
0x0 is aliased onto the internal flash by the BOOT0/1 pins
and the internal flash is (normally) in the LOCKED state,
this write puts the internal flash into an errored state.
This errored state means that writes to internal flash
are no longer allowed and all further writes fail.
2013-05-14 23:50:17 +02:00
Alessio Morale
07af6b5c80
Added LogFS support for OPLinkMini with internal flash
2013-05-14 23:00:45 +02:00
Alessio Morale
8d57d8ff76
Internal flash settings for F1
...
Conflicts:
flight/pios/stm32f10x/pios_flash_internal.c
2013-05-14 22:58:05 +02:00
sambas
da23fd6784
Added F1 internal flash driver
...
Conflicts:
flight/pios/stm32f10x/pios_flash_internal.c
Conflicts:
flight/pios/stm32f10x/pios_flash_internal.c
2013-05-14 22:56:12 +02:00
Alessio Morale
707e648457
OP-905: Fixes. Prevent LogFS from triggering watchdog
2013-05-14 18:43:39 +02:00
Alessio Morale
742ea6f6b8
Merge branch 'amorale/OP-905_revolution_watchdog' into next
...
Conflicts:
flight/targets/RevoMini/System/pios_board.c
2013-05-14 18:42:02 +02:00
Richard Flay (Hyper)
ed68fbe68d
OP-951: Adds -Wshadow to flight CFLAGS and fixes resulting compilation breakage.
...
+review OPReview
2013-05-14 07:01:45 +09:30
Alessio Morale
ff16dd03e7
Merge branch 'amorale/OP-938_ah_improvements' into next
...
Conflicts:
flight/modules/AltitudeHold/altitudehold.c
flight/modules/ManualControl/manualcontrol.c
2013-05-13 23:30:46 +02:00
Oleg Semyonov
e5970ed25d
logfs: fix unit tests (requires MIN declaration from pios_math.h)
2013-05-12 03:51:00 +03:00
Alessio Morale
30b755b7aa
OP-901 fixed errors due to unused parameter and applied fix against fifo empty bug on usb_dcd_int.c
2013-05-11 23:49:52 +02:00
Alessio Morale
95a3e99b7c
OP-901 updated STM32 USB OTG Driver (updated configuration)
2013-05-11 23:12:14 +02:00
Alessio Morale
24fcea168c
OP-901 Updated STM32F4 USB Device Library
2013-05-11 23:12:13 +02:00
Alessio Morale
ccc24d844a
OP-901 updated STM32 USB OTG Driver
2013-05-11 23:10:47 +02:00
lilvinz
1016b08b70
f4 usb: removed DCD_EP_Flush on endpoint TX
...
This has probably caused the problem that prevented tx after
a bus reconnection.
2013-05-11 22:41:05 +02:00
Alessio Morale
535b53cb1c
Raised priority for USB interrupt to high, changed subriority to 0 (PriorityGroup is 0)
2013-05-11 22:41:05 +02:00
Stacey Sheldon
441e9e7b84
f4 usb: always init HID and CDC devices
...
This is required so that we can always respond to HID and
CDC requests via the control endpoint (ep0). The F1/F3
implementation gets away with disabling these interfaces
because all of the ep0 handling is in the usbhook code
rather than (properly) split out into class-specific
drivers like it is done on the F4 implementation.
Conflicts:
flight/targets/DiscoveryF4/System/pios_board.c
flight/targets/FlyingF4/System/pios_board.c
flight/targets/Freedom/System/pios_board.c
flight/targets/Quanton/System/pios_board.c
2013-05-11 22:41:04 +02:00
Stacey Sheldon
0d8fe83dca
usb cdc: advertise support for line coding and serial state
...
The CDC descriptor was not advertising support the the line
coding and serial state messages. This was preventing Mac
from sending the SetControlLineState message to indicate
that a DTE (ie terminal program) was present and reading
from the serial port.
We support (and depend on) the DTE indication now so this
was making CDC not work on Mac.
Linux seems to provide the indication regardless of whether
it is advertised in the descriptor or not.
2013-05-11 22:41:03 +02:00
Stacey Sheldon
0e0571149b
f4 usb: ensure that we NAK on unused OUT endpoints
...
The ST USB code will automatically receive on any
endpoint that is opened but not in the NAK state.
Make sure we set OUT endpoints to NAK initially.
It also happily writes via a NULL pointer in ep->xfer_buff
which writes to address 0x0000_0000. Since address
0x0 is aliased onto the internal flash by the BOOT0/1 pins
and the internal flash is (normally) in the LOCKED state,
this write puts the internal flash into an errored state.
This errored state means that writes to internal flash
are no longer allowed and all further writes fail.
2013-05-11 22:41:03 +02:00
Stacey Sheldon
565de5fd4e
f4 usb: ensure correct interface numbers for BL and FW
...
The interface numbers differ for the HID interface between
the BL and FW. This is required to keep windows happy.
In HID+CDC, the CDC interfaces must come first with HID last
which makes it #2 . In HID only mode, we can't use #2 for HID
since windows doesn't like the first/only interface to be
anything other than #0 .
Conflicts:
flight/targets/board_hw_defs/discoveryf4/board_hw_defs.c
flight/targets/board_hw_defs/flyingf4/board_hw_defs.c
flight/targets/board_hw_defs/freedom/board_hw_defs.c
flight/targets/board_hw_defs/quanton/board_hw_defs.c
2013-05-11 22:41:02 +02:00
Stacey Sheldon
2165a5afe1
f4 usb hid: handle SET_IDLE request
...
The code doesn't do anything useful with the SET_IDLE
but this helps to keep the wireshark USB traces clean
so that the real errors stand out better.
2013-05-11 22:41:02 +02:00
Stacey Sheldon
c22daec1b0
usb cdc: avoid need for ZLP by using tx buffers smaller than max
...
USB CDC uses BULK endpoints to send/receive data. Typically,
a USB host will enqueue large buffers on its IN (device-to-host)
URBs. These buffers are larger than the max packet size for the
bulk endpoint.
The USB standard requires that an IN transfer ends when one of
these is true:
* a short packet (ie. less than max packet size) is sent by the
device
* a zero length packet (ZLP)
* enough packets that the entire host buffer is filled
Our device implementation never sends ZLPs. We sometimes send
packets that are exactly max-packet-size bytes long. This would
result in partially filling a host buffer without signalling (via
ZLP) that the transmission had finished. The host would then wait
until the next transfer had taken place before processing the first
data, thus delaying the first data.
This change simply forces all of our transfers to be short packets
and avoids the need to worry about zero length packets. This is
at the cost of some efficiency on the host side since its large
buffers will only ever be partially filled.
Conflicts:
flight/PiOS/STM32F30x/pios_usb_cdc.c
2013-05-11 22:41:01 +02:00
Stacey Sheldon
366c573bab
f4 usb hid: send correct report ID in dummy report
...
The desired report ID is in the LSB of the wValue field,
not the MSB. This will now send the correct report ID
back to the host.
2013-05-11 22:41:01 +02:00
Stacey Sheldon
232f9b2f8f
f4 usb hid: use static data for dummy report Tx
...
This code was previously passing a pointer to stack
data into PIOS_USBHOOK_CtrlTx() which may be sending
this data asynchronously. Now pass a pointer to
static data so that the asynchronous send doesn't
tx random stack contents.
2013-05-11 22:41:00 +02:00
Stacey Sheldon
859734af98
f4 usb: fix tracking of OUT requests with data stages
...
This code was mistakenly tracking the IN (device-to-host)
requests with data stages. It should have been tracking
the OUT (host-to-device) requests with data stages.
This tracking data is important now that CDC is supported.
CDC actually uses OUT requests with data stages whereas HID
does not. This bug only triggered once CDC was enabled.
2013-05-11 22:41:00 +02:00
Stacey Sheldon
b56f5206bd
com/usart/cdc: ensure that device structs are memset before use
...
CDC and USART device drivers were not all clearing their
device structs before using them.
This specifically caused crashes in the case where the upper
COM layer was binding only a Tx path. The Rx path callback
in the lower driver was uninitialized random data and would
result in the lower driver faulting when it tried to call the
callback.
Conflicts:
flight/PiOS/STM32F30x/pios_usart.c
flight/PiOS/STM32F30x/pios_usb_cdc.c
flight/PiOS/STM32F30x/pios_usb_hid.c
2013-05-11 22:40:59 +02:00
Stacey Sheldon
e16be98224
usb cdc: ensure com buffer is drained when no DTE is attached
...
The CDC layer on F1, F3 and F4 now always acts like an
infinte data sink whenever *either* there is no DTE present
(ie. no terminal program listening) *or* the USB cable is
disconnected.
F1 and F4 were previously checking the cable but not the DTE.
F3 didn't check anything. The COM layer didn't even ask the
lower layers.
All of this used to mean that any time a caller did a blocking
send to a CDC device without a DTE, it would eventually block
for up to a 5s timeout waiting for space in the Tx buffer.
Conflicts:
flight/PiOS/STM32F30x/pios_usb_cdc.c
2013-05-11 22:40:58 +02:00
Stacey Sheldon
c702ca0f1b
usbhook: fix up indentation
...
No functional changes.
2013-05-11 22:40:57 +02:00
Stacey Sheldon
cb6f4a474e
f4 usb: ensure data buffers are 4-byte aligned
...
4-byte alignment is required for DMA.
2013-05-11 22:40:56 +02:00
Stacey Sheldon
9cc70695d7
f4 usb cdc: add support for USB CDC to RevoMini
...
Conflicts:
flight/targets/RevoMini/System/inc/pios_config.h
flight/targets/RevoMini/System/pios_board.c
2013-05-11 22:40:56 +02:00
Stacey Sheldon
c6e893e1e5
usb: fix interfaces in USB HW defs for OSD
2013-05-11 22:38:28 +02:00
Stacey Sheldon
207bd671ac
usb: fix interfaces in USB HW defs for RevoMini
2013-05-11 22:38:27 +02:00
Stacey Sheldon
f4bed187f4
f4 usb cdc: implement CDC class driver for STM32 F4 SoCs
2013-05-11 22:38:26 +02:00
Stacey Sheldon
19714d2316
f4 usb: allocate TX FIFO RAM for endpoints 2 and 3
...
This is required to support USB CDC mgmt and data
endpoints.
2013-05-11 22:38:25 +02:00
Stacey Sheldon
02addaf4a0
usbhook: make ctrl endpoint OUT treat request as const
...
The req parameter is passed to the OUT stage as a convenience.
Since the OUT callback is called *after* the transfer has occurred,
modifying the req would have absolutely no effect. Marking this
as const makes this expectation clear.
2013-05-11 22:38:25 +02:00
Stacey Sheldon
590feefd9b
f1 usb cdc: ensure uart state is transmitted on control endpoint
...
Previously, the IN stage on the CTRL interface would write (and
send) its data via the buffer owned by the DATA endpoint. This
would probably have overwritten any data being sent at that
moment. This may have caused data corruption from FC -> GCS.
2013-05-11 22:35:19 +02:00
Alessio Morale
d555bd0673
Uses Internal flash for system settings storage repourposing external flash for "User" storage
2013-05-11 22:06:30 +02:00
Alessio Morale
511283c608
Flash internal: writes optimization using 4 bytes parallelism
2013-05-11 22:04:47 +02:00
Alessio Morale
687e75b2e2
Changes to board specific files to support UAVObject on a specific LogFS instance
2013-05-11 17:15:07 +02:00
Alessio Morale
aefda3b560
Changes to UAVObjectManager to explicitly specify the logfs instance to be used
2013-05-11 17:13:11 +02:00
Richard Flay (Hyper)
04f59d5910
OP-950: Adds "higher priority task woken" logic to SPI and SPI bus resident
...
sensor device drivers. Based partly on code contributed by lilvinz.
+review OPReview
2013-05-11 16:18:34 +09:30
Corvus Corax
336a50f7e4
dynamic is better than static
2013-05-11 02:02:04 +02:00
Corvus Corax
92d73e0e73
keep on stack for now
2013-05-11 01:56:57 +02:00
Corvus Corax
e3147eed1a
some changes as suggested in review
2013-05-11 01:33:56 +02:00
Corvus Corax
0a3b59ddea
ManualControl: Initialize scaledChannel to 0, - required to not fail compilation with -O3 (GCC claims about potentially uninitialized use)
2013-05-10 20:23:16 +02:00
Corvus Corax
b76df471ee
bugfix on revo proto. STM32F4 A revision has a hardware bug and cannot do flash prefetching properly
2013-05-10 19:53:51 +02:00
Werner Backes
7c9d2ce9a5
Merge branch 'D-Lite/OP-934_rfm22b_rcvr_timeout_handling_next' into next
2013-05-10 09:59:30 +02:00
Corvus Corax
c5cbbf1c19
OP-944 : Improve Extended Kalman Filter generic formula to work roughly as fast as the auto generated code, remove autogenerated code.
2013-05-09 21:26:35 +02:00
Richard Flay (Hyper)
cf14608ebe
Merge branch 'next' into hyper/OP-936_task-monitor-rework
2013-05-09 19:25:02 +09:30
Stacey Sheldon
c6485a134c
logfs: load/save UAVOs to specific logfs partition
...
Now that multiple filesystem partitions are supported,
the UAVO manager needs to be specific about which partition
to load/save its objects to.
Conflicts:
flight/targets/CopterControl/System/pios_board.c
flight/targets/DiscoveryF4/System/pios_board.c
flight/targets/FlyingF3/System/pios_board.c
flight/targets/FlyingF4/System/pios_board.c
flight/targets/Freedom/System/pios_board.c
flight/targets/Quanton/System/pios_board.c
flight/targets/RevoMini/System/pios_board.c
flight/targets/Revolution/System/pios_board.c
flight/uavobjects/uavobjectmanager.c
2013-05-08 20:06:32 +02:00
Stacey Sheldon
4f9ce60930
ut logfs: add support for testing a 2nd partition
2013-05-08 19:42:12 +02:00