1
0
mirror of https://bitbucket.org/librepilot/librepilot.git synced 2024-12-10 18:24:11 +01:00
Commit Graph

215 Commits

Author SHA1 Message Date
Corvus Corax
f1b7f339b6 OP-1371 setting to disable sanity checks for debugging and testing - will set config alarm to warning if set 2014-06-18 21:39:16 +02:00
Corvus Corax
b40a114a0a OP-1371 treat hitl as nav capable fusion algorithm if positionstate is set by sim 2014-06-18 21:29:55 +02:00
Corvus Corax
205edac762 Merge branch 'next' into corvuscorax/OP-1317_IMU_wind_estimation 2014-06-17 18:14:27 +02:00
Alessio Morale
6226aec2a7 OP-943 uses pios_mem API for heap allocation 2014-06-11 22:15:40 +02:00
Corvus Corax
f89557c045 OP-1287 improved deadband implementation to be jump-free 2014-06-10 09:59:37 +02:00
Corvus Corax
a19ebfec14 OP-1287 separate stick response setting for vertical and horizontal in PositionVario/AutoCruise modes 2014-06-07 23:06:11 +02:00
Alessio Morale
e8a3706351 OP-1365 Flight code instrumentation API: Fix wrapper not publishing last counter 2014-06-07 17:33:37 +02:00
Corvus Corax
c3d20e72b9 OP-1287 made velocity calculation implicit in pathfollower based on distance only 2014-06-07 16:30:39 +02:00
Corvus Corax
8f9b5b2282 OP-1287 fix to lower speed limit in autocruise do not allow absolute zero speed to not loose direction 2014-06-07 16:16:55 +02:00
Corvus Corax
090db92e8a OP-1287 removed waypoint start position from positionvario logic in favor of static variable 2014-06-07 16:07:20 +02:00
Alessio Morale
08e4ec7fd3 OP-1365 Flight code instrumentation API: Fix wrapper documentation/headers 2014-06-07 15:45:27 +02:00
Corvus Corax
ae8c22280b OP-1287 fixed handling of pitch and throttle channels from manualcontrolcommand 2014-06-07 15:31:38 +02:00
Alessio Morale
2396350f2f OP-1365 Flight code instrumentation API: Implementation of UAVObject wrapper layer 2014-06-06 22:19:27 +02:00
Corvus Corax
070672e0f0 OP-1287 changed deadband behaviour to be more consistent 2014-06-04 23:22:04 +02:00
Corvus Corax
89472196d1 OP-1287 implemented new flightmodes in plan.c 2014-06-04 16:52:39 +02:00
Corvus Corax
de7e0d0781 OP-1287 added handler definitions for new flightmodes 2014-06-04 10:29:45 +02:00
Corvus Corax
2260f5dacc OP-1287 added autocruise mode, too 2014-06-04 10:23:37 +02:00
Corvus Corax
86441169de OP-1287 added new flightmodes to sanity checks 2014-06-04 10:02:19 +02:00
Corvus Corax
f0c4b8f9c7 OP-1287 renamed VELOCITYCONTROL back to AltitudeVario for consistency 2014-06-03 18:42:54 +02:00
Corvus Corax
aa6c5f9d15 OP-1363 cleanups to sanitychecks 2014-06-01 20:28:38 +02:00
Corvus Corax
63b08ec129 OP-1363 check for navigation enabled (outdoor) fusion algorithm if any flightmode is configured to use a path follower 2014-06-01 12:17:42 +02:00
Corvus Corax
5bfb57e081 Merge branch 'next' into amorale/OP-1355_fix_mag_board_rotation_issue 2014-05-26 17:19:56 +02:00
Alessio Morale
3d67b7567e OP-1355 Fix Mag scaling being calculated after applying board rotation. 2014-05-25 11:28:43 +02:00
Andres
f273abf6c8 OP-1317 Merged with next 2014-05-22 17:01:38 +02:00
Alessio Morale
b2ecf23a07 OP-1350 simposix build fixes :( fix altitude calculation for RTB 2014-05-19 22:21:32 +02:00
Alessio Morale
3db6c3c86b OP-1350 fix build for revoproto and discoveryf4 2014-05-19 21:15:17 +02:00
Alessio Morale
92bf876654 OP-1350 refactor into a plans library all functions dealing with initialization and execution of PathFollower/pathplanner commands for manualcontrol 2014-05-19 18:35:18 +02:00
Andres
c5372dd0b4 OP-1317 Added better comments on the function of the partial calculation of the rotation matrix. And added a remark on the debuging variable in the airspeed object definition 2014-05-13 17:30:50 +02:00
Alessio Morale
3c5a41049b Merge branch 'amorale/OP-1302_updated_led_behaviour' into next 2014-05-11 12:01:53 +02:00
Andres
02e62f91ed OP-1317 Apadted airspeed calculation from ground speed and orientattion changes: applied extended IMU wind estimation, filtering takes place now with Holt-Winters double exponential smoothing on orientation vector and speed vector, matrix calculation replaced by a direct calculation of the fuselage vector, renamed gps_airspeed into imu_airspeed because estimation relies on imu results and a n estimate of ground speed and not directly a GPS signal 2014-05-10 14:50:24 +02:00
Bertrand Oresve
743cf4e4b5 OP-1308 Merge with next (conflict with stabilization) 2014-05-08 22:33:45 +02:00
Alessio Morale
94beebc3d0 OP-1302 Fixes for current next. Show flightmode everytime it changes when disarmed 2014-05-08 22:27:55 +02:00
Alessio Morale
e5d6726bb6 Merge remote-tracking branch 'origin/next' into amorale/OP-1302_updated_led_behaviour 2014-05-08 22:27:08 +02:00
Bertrand Oresve
fd1b786868 Merge branch 'next'
Conflicts:
	flight/libraries/sanitycheck.c
	flight/modules/Stabilization/stabilization.c
2014-05-08 21:36:54 +02:00
Corvus Corax
3a2b5d6332 OP-1332 fix problem in alarm handling where alarms are unable to reset on their own 2014-05-07 23:50:39 +02:00
Corvus Corax
2b00cb31a4 Merge branch 'next' into corvuscorax/OP-1259_Cruise_Control_Tweaks 2014-05-04 12:12:51 +02:00
Corvus Corax
942b53a66b OP-1309 removed unnecessary NUMELEM run time check from sanitychecks and put it into manualcontrol.h as a compile time static assert 2014-05-04 11:38:10 +02:00
Corvus Corax
80468fda0b OP-1309 Updated sanitycheck to reflect new modes for flight side config validation 2014-05-04 11:19:58 +02:00
Corvus Corax
0ea1ccf5c3 OP-1316 fix gravity constants 2014-05-01 15:50:02 +02:00
Bertrand Oresve
6d3ade4947 OP-1308 Set the same logic for alarms 2014-04-29 22:25:49 +02:00
Corvus Corax
66f2f8e840 OP-1309 more performant implementation of boundf() 2014-04-29 19:55:34 +02:00
Corvus Corax
2f572995ac OP-1309 turned boundf() static inline as requested 2014-04-29 18:36:53 +02:00
Corvus Corax
1632eeb58f OP-1309 some small fixes to Stabilization as result of simulator testing 2014-04-29 15:51:56 +02:00
Alessio Morale
d42debba50 OP-1302 Remove the special case for Telemetry in Alarm.c and shut up the telemetry warning in telemetry.c when disconnected 2014-04-26 20:48:30 +02:00
Corvus Corax
77f2444fa4 OP-1309 renamed stabilization mode NONE to MANUAL 2014-04-26 20:33:25 +02:00
Corvus Corax
e9d1a2af4b OP-1309 get rid of this horrible bound() function code duplication throughout entire flight code and put it into libraries/math 2014-04-26 17:48:54 +02:00
Corvus Corax
599661ba18 OP-1309 UAVObject changes, GCS changes and Makefile changes needed for Stabi refactoring 2014-04-26 15:14:40 +02:00
Alessio Morale
ee91207ede OP-1302 simplify the code adding some pattern "tables" 2014-04-16 07:57:15 +02:00
Alessio Morale
20508314f2 OP-1302 use pios_notify api to alert user of ongoing CF gyro calibration 2014-04-13 17:56:20 +02:00
Alessio Morale
299f388245 OP-1302 Add a stub pios_notify API for user interaction/notifications
right now all notifications produces the same output, the DRAW_ATTENTION sequence
2014-04-13 17:42:57 +02:00
Alessio Morale
5d637fab87 OP-1302 move stuffs away from systemmod 2014-04-13 11:54:25 +02:00
Alessio Morale
9ebb66fbce OP-1302 filter out telemetry alarms 2014-04-12 22:00:26 +02:00
Alessio Morale
82c81fef6e OP-1302 make leds more "readable"
Show alarm and arming/flightmode in sequence
Alarm:
Warning = rP
Error = rrP
Critical = R

Heartbeat/flightmode:
disarmed = B
armed/Stabilization1 = bbP
armed/Stabilization2 = bbbP
armed/Stabilization3 = bbbbP
armed/AH/AVario/Velocitycontrol = bvP
armed/PH/Pathplanner/POI = bbvP
armed/Land/RTB = bbvvP

note:
r/b/v = short red/blue/both blink
R/B/V = long red/blue/both blink
p/P = short/long pause
2014-04-12 22:00:02 +02:00
Corvus Corax
e18f2e6d7e OP1290 Systemalarms optimizations as suggested by OPReview-689 2014-04-06 12:46:27 +02:00
Corvus Corax
2d9fe95b08 OP-1290 added nicer #define for magic number 2014-04-06 12:37:57 +02:00
Corvus Corax
3018e73e91 OP-1290 saved some RAM by removing last alarm update time from UAVObject
(static allocated array instead, and smaller element size)
2014-04-06 12:24:42 +02:00
Corvus Corax
48876620fc OP-1290 fix event system issues caused by alarm flapping 2014-04-05 17:27:52 +02:00
Corvus Corax
b5a27d05e7 OP-1197 configurable failsafes OP-1219 thrust control OP-1217 separate manualcontrolsettings apart 2014-02-09 19:37:22 +01:00
m_thread
234626444e Merge remote-tracking branch 'origin/next' into thread/OP-1154_Cruise_Control_automatically_increase_copter_throttle_per 2014-01-17 13:16:15 +01:00
Corvus Corax
41202a0227 Merge branch 'corvuscorax/OP-1022_AH_improvements_amorale' into next 2014-01-15 22:47:42 +01:00
Corvus Corax
92beb54e2d OP-1022 some small cosmetic fixes for AltitudeHold as suggested by Alessio 2014-01-15 18:43:47 +01:00
Corvus Corax
76ee48bc44 OP-1122 safer sanity checks and arming prevention in case of invalid flight plan 2014-01-12 21:37:40 +01:00
Cliff Geerdes
ccc09721cd OP-1154 Initial version with UAVO's but no GCS GUI 2014-01-11 16:22:20 -05:00
Corvus Corax
981fc4321d removed requirement for non existing task 2013-12-08 10:32:24 +01:00
Corvus Corax
9dbac5d060 Enabled printf-stdarg on all targets, implemented vsnprintf() (needed for logging) 2013-11-17 18:49:50 +01:00
Corvus Corax
320bbcf434 Made printf-stdarg check maximum string length limit (supports snprintf now) 2013-11-17 02:47:58 +01:00
Alessio Morale
0db9a9bf8d OP-1058 Add xxxGet and xxxSet functions to handle multielement fields as struct
for example:
EKFStateVariancePSet(EKFStateVariancePData *NewP);
EKFStateVariancePGet(EKFStateVariancePData *NewP);
Also in this case array accessors are renamed as xxxArrayGet/Set:
EKFStateVariancePArraySet(float *NewP);
EKFStateVariancePArrayGet(float *NewP);

Nothing changes for anonymous items as default functions continues to deal with arrays

+review OPReview-552
2013-09-01 13:23:20 +02:00
Alessio Morale
e91bc28667 OP-1058 Get rid of Unions.
They caused stack usage increase with -fstrict-aliasing as stack slots are not reused when dealing with unions.
It has now been added the cast_struct_to_array macro in pios_struct_helper.h to handle such case where it is useful to access those homogeneous structs as arrays

+review OPReview-552
2013-09-01 12:10:55 +02:00
Alessio Morale
11b269f898 Merge remote-tracking branch 'origin/next' into amorale/OP-1058_uavo_named_accessors 2013-08-31 16:03:30 +02:00
Corvus Corax
0724fca32a refactored pid_apply_scaled back into pid_apply (rename only) 2013-08-11 15:12:17 +02:00
Alessio Morale
9e1acc3165 OP-1058: fix needed for fw_revolution code compilation 2013-07-31 15:24:26 +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
27eadc200b Merge branch 'corvuscorax/lla2nedfilter' into next
Conflicts:
	flight/modules/StateEstimation/stateestimation.c
2013-07-10 14:38:12 +02:00
Brian Webb
c2df59498b Merge remote-tracking branch 'origin/master' into next 2013-07-06 07:08:30 -07:00
Corvus Corax
51a4b16af5 New Filter to calculate NED from LLA as part of StateEstimation 2013-06-30 18:49:29 +02: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
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
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
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
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
dc68d7d94e changed insgps, removed unnecessary gain representation 2013-06-05 17:52:49 +02:00
David Ankers
d5eccea78f Comment and header renames, change PipX to OPLink Mini 2013-05-26 15:48:02 +10:00
Sexy Pony
900f643bbd Reformat source code with 'make uncrustify_all' run twice. NO CODE CHANGES 2013-05-19 17:37:30 +03:00
Corvus Corax
80caceb984 make uncrustify_all;make uncrustify_all; 2013-05-18 14:17:26 +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)
ed68fbe68d OP-951: Adds -Wshadow to flight CFLAGS and fixes resulting compilation breakage.
+review OPReview
2013-05-14 07:01:45 +09:30
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
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)
fbc8bc698f OP-936: Merges branch 'next' into hyper/OP-936_task-monitor-rework, fixes damage/conflicts,
and brings the callback scheduler into the fold.

+review OPReview-461
2013-05-06 19:11:14 +09:30
Brian Webb
ae8286e99a OP-932: Fixes a bug that was preventing setting of Tx power on remote modem. 2013-05-06 01:03:15 +01:00
Corvus Corax
39fe6beb4b Merge branch 'corvuscorax/Attitude-fixes' into next
Conflicts:
	flight/libraries/insgps13state.c
	flight/modules/Attitude/revolution/attitude.c
2013-05-05 23:09:07 +02:00
Corvus Corax
946105cbe3 Merge branch 'next' into corvuscorax/Attitude-fixes 2013-05-05 17:44:59 +02:00
Richard Flay (Hyper)
a2d8544931 OP-931: adds -Wextra compiler option for the flight code, and makes the bazillion code changes required
to make the flight code compile again. Needs careful review, particularly all the fixes for the
signed vs unsigned comparisons.

+review OPReview-459
2013-05-05 16:32:24 +09:30
Brian Webb
57552f4cc9 OP-932: Changed the clock syncronization to happen only on packts transmitted from the coordinator to the remote modem. The Tx finished time of the previous packet is now sent in the packet header. This is compared to the Rx complete time of that packet on the remote modem to calcualte the difference between two modems. This eliminates the need for ACKing, so ACKs were removed for PPM and status packet. 2013-05-04 16:50:08 +01:00
Richard Flay (Hyper)
5b61466259 OP-931: Adds -Wdouble-promotion compiler option and fixes problems that the compiler then identifies.
+review OPReview-459
2013-05-04 19:24:01 +09:30
Richard Flay (Hyper)
87fcf9fa8b Merge branch 'next' into hyper/OP-931_extra_compiler_warnings and update as necessary.
Hopefully properly fixes conflicts:
	flight/modules/Attitude/attitude.c
	flight/modules/ManualControl/manualcontrol.c
	flight/modules/Osd/WavPlayer/wavplayer.c
	flight/modules/Osd/osdgen/osdgen.c
	flight/modules/System/systemmod.c
	ground/uavobjgenerator/generators/flight/uavobjectgeneratorflight.cpp
2013-05-04 11:12:44 +09:30
Brian Webb
84a0f981e0 Merge branch 'next' of ssh://git.openpilot.org/OpenPilot into OP-932-Modularize_Radio_Driver 2013-05-03 14:08:40 +01:00
Corvus Corax
25c58ff074 Put all EKF initialisation values in a separate UAVObject EKFConfiguration,
adapted insgps13state.c/.h,
modules/Attitude/revolution,
configrevowidget.cpp,
accordingly.
2013-05-03 02:17:44 +02:00
Richard Flay (Hyper)
84e1a81f8b OP-936: Moves the task monitor code out of the flight library and into PiOS.
This move and rework also breaks the dependency of the task monitor on the UAVO subsystem,
and pushes the responsibility for updating the TaskInfo UAVO into the System module.

+review OPReview
2013-05-03 07:01:14 +09:30
Sambas
f7b9223827 Merge remote-tracking branch 'remotes/origin/next' into sambas/diffnext
Conflicts:
	flight/modules/System/systemmod.c
	shared/uavobjectdefinition/taskinfo.xml
2013-05-02 09:00:12 +03:00
Corvus Corax
d77c690fe3 Merge branch 'next' into corvuscorax/Attitude-fixes
Conflicts:
	flight/modules/Attitude/revolution/attitude.c
2013-05-01 17:51:05 +02:00
Brian Webb
8c763c8ed3 OP-932: Improves the timing of channel changes on the radio device. 2013-05-01 14:37:47 +01:00
Brian Webb
56a524ab9e OP-924: Completely turn off PPM output when it's not being refreshed. Also fixed testing of PPM input on the OPlink that was broken when the return values were changed to negative values. The PPM values were being stored in an unsigned datatype, which made detecting negative error returns impossible. 2013-05-01 02:48:45 +01:00
Richard Flay (Hyper)
7937ae6296 OP-931: Makes flight code compile with -Wfloat-equal and -Wunsuffixed-float-constants enabled.
Also fixes warnings (and bugs) in F4 STM32_USB_OTG_Driver code, allowing -Werror to be enabled for all flight code.
Fixes all other compiler warnings that would otherwise cause the flight code to not compile with -Werror enabled.
Along the way, this also adds some uses of isnan() to various places rather than questionable tests for x != x and
x == x to check for NaNs.

+review OPReview
2013-04-30 20:36:42 +09:30
Corvus Corax
6e2c9b3c46 New EKFStateVariance UAVObject with EKF state variance information 2013-04-28 19:38:37 +02:00
Corvus Corax
a47f092a9d added missing function in header file 2013-04-28 16:37:12 +02:00
Corvus Corax
63c4dc1ff0 Expose gyro bias process variance to settings UAVObject, code cleanup in revolution/attitude to make it more readable 2013-04-28 14:46:27 +02:00
Richard Flay (Hyper)
80c917591e Cherry-pick and hand-merge of Sami's math cleanup commit from branch sambas/diffnext: 5f3e0c3e1d 2013-04-28 10:45:28 +09:30
sambas
5f3e0c3e1d Math cleanup 2013-04-27 16:30:02 +03:00
Oleg Semyonov
e2fd821e97 Merge remote-tracking branch 'origin/next' into sambas/diffnext
Conflicts:
	make/common-defs.mk
2013-04-26 16:31:19 +03:00
Oleg Semyonov
66db978244 Rename Libraries->libraries, Modules->modules 2013-04-25 13:13:36 +03:00
dankers
cd4b0ae01a Case Change. Consistency across the project
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@90 ebee16cc-31ac-478f-84a7-5cbb03baadba
2009-12-21 21:50:57 +00:00
dankers
b7771e3ec7 Initial version ;-) Please check! Builds fine and links fine of course. Files have basic GPL header, need to add description and other details for each file.
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2 ebee16cc-31ac-478f-84a7-5cbb03baadba
2009-11-28 09:28:11 +00:00