1
0
mirror of https://bitbucket.org/librepilot/librepilot.git synced 2024-12-13 20:48:42 +01:00
Commit Graph

4872 Commits

Author SHA1 Message Date
Corvus Corax
4c078f3dd8 Merge branch 'next' into corvuscorax/OP-1022_AH_improvements_amorale 2014-01-11 09:40:34 +01:00
Les Newell
2e030419ca OP-984 Fixed bad merge of stabilization.c 2014-01-10 22:16:50 +00:00
Les Newell
49cf33ee59 Merge branch 'next' into LesNewell/OP-984_PID_banks
Conflicts:
	flight/modules/Stabilization/stabilization.c
2014-01-10 19:32:44 +00:00
Les Newell
8eb2eefec7 Merge branch 'LesNewell/OP-984_PID_banks' into next 2014-01-10 15:24:28 +00:00
Philippe Renon
bcb59a3dca OP-1122 OP-1120 Added missing FligthPlanInfo uavobject to revoproto/firmware/UAVObjects.inc 2014-01-09 21:46:50 +01:00
Philippe Renon
8c7792b6e5 OP-1122 OP-1120 Added a new FligthPlanInfo uavobject
- FligthPlanInfo contains the number of waypoints and action pathes
- FligthPlanInfo contains a CRC of all waypoints and action pathes
- The CRC is not yet implemented
- These informations will be used to check the consistency of a flight plan
2014-01-09 01:06:00 +01:00
Philippe Renon
03b3dca76c OP-1122 OP-1145 flight telemetry improvement
- create periodic queue events only for periodically updated uavobjects
- made error handling more robust
- added a FIXME concerning FlighTelemetryStats as it is updated peridocally using two separate mechanisms
2014-01-06 21:48:34 +01:00
Philippe Renon
fe4fe46e34 OP-1122 OP-1145 flight uavtalk minor typo fix and minor error handling improvment 2014-01-06 21:45:01 +01:00
Philippe Renon
772c395e67 OP-1122 OP-1145 fixed handling of ground messages done by OPLM
- OPLM used to receive and relay all messages
- OPLM will now reveice only specific messages and relay others as required (needs to be reviewed...)
- add RadioComBridgeStats uavobject to collect and report tx/rx statistics
- made error handling more robust
- added a few FIXMEs
2014-01-06 21:35:00 +01:00
Alessio Morale
adde6b2f34 OP-1153 Fix for simposix 2014-01-05 23:32:20 +01:00
Alessio Morale
fff060ed9d OP-1153 Add a way to monitor SystemMod stack usage without DIAG_TASKS=y
SystemStats.SystemModStackRemaining field does contains the relevant information.
2014-01-05 23:28:31 +01:00
Alessio Morale
3aa7a1d352 OP-1152 change stack size to accomodate recent changes in dispatcher, telemetry for former CC (hw rev 1)
+review OPReview
2014-01-05 23:13:06 +01:00
Cliff Geerdes
a48b9cc242 OP-1117 reduced CPU for CC/3D coded log2f() / powf() 2014-01-04 04:22:54 -05:00
Mikael Blomqvist
b1d2c1b83e Adding R7008SB end byte as a possible end of frame check for S.Bus 2014-01-03 18:25:44 +01:00
Cliff Geerdes
54ac7da2e8 OP-1117 bugfix for refactoring, would keep Ki from working at full stick 2014-01-02 00:56:55 -05:00
Alessio Morale
bd1442437f OP-1139: fix wrong sign for bias and some optimizations
+review OPReview-598
2014-01-01 19:13:26 +01:00
Corvus Corax
f5dbe29896 Merge remote-tracking branch 'origin/amorale/OP-1139_baro_2nd_order_compensation' into corvuscorax/OP-1022_AH_improvements_amorale 2013-12-31 16:38:15 +01:00
Philippe Renon
fca840397e Merge remote-tracking branch 'origin/next' into filnet/OP-1122_gcs_waypoint_editor_stabilization 2013-12-30 22:18:52 +01:00
Corvus Corax
1cb402ff22 bugfix to eventdispatcher to fix uavtalk issue on coptercontrol 2013-12-30 01:42:46 +01:00
Corvus Corax
b786cec832 bugfix to eventdispatcher to fix uavtalk issue on coptercontrol 2013-12-30 01:40:27 +01:00
Corvus Corax
cefcb9881a Altitude Hold - compensation for tilt 2013-12-29 19:09:54 +01:00
Alessio Morale
e04cef2fa4 OP-1149 Uncrustify 2013-12-29 18:45:44 +01:00
Alessio Morale
ac3d7b8d11 OP-1149 Implements thermal accel/gyro bias correction for CC3D 2013-12-29 14:23:46 +01:00
Alessio Morale
260db3446c OP-1149 changes in CC/CC3D code to use AccelGyroSettings for bias/scale instead of AttitudeSettings.
Bias units of measure are now normalized between CC/CC3D/Revo.
2013-12-29 14:08:53 +01:00
Corvus Corax
505d334c4b simplified altitude hold control loop 2013-12-27 18:37:27 +01:00
Corvus Corax
1cccd152bd added AltitudeHold to simposix 2013-12-27 16:50:30 +01:00
Alessio Morale
7ac2f9f87f OP-1149 Move accel/gyro calibration setting to a separate object, to be reused also for CC3D 2013-12-26 16:55:57 +01:00
Alessio Morale
558e2e1437 OP-1149 introduce a first order temperature calibration for gyro and accel.
gyro Z is instead using a 2nd degree polinomial for better accuracy as
its drift is harder to be corrected as with the other twos.
2013-12-25 18:11:53 +01:00
Cliff Geerdes
14aa1f83de OP-1117 make anti windup insensitive to Ki changes, include dT in calcs, linearize config spinner 2013-12-19 03:21:30 -05:00
Philippe Renon
5f33fadb1b OP-1122 OP-1145 flight side uavtalk and telemetry enhancements
- added more stats (bytes, sync errors, crc errors)
- made error handling more robust
- added some optional PIOS_DEBUGLOG calls
- fixed a timestamp handling bug
2013-12-19 00:17:08 +01:00
Cliff Geerdes
56b4d8647f OP-1117 Rename Horizon to Rattitude, Anti Windup and dT additions 2013-12-18 05:01:16 -05:00
Philippe Renon
c2e8d25319 OP-1145 made MetaObjectId define publicly available 2013-12-18 08:52:52 +01:00
Cliff Geerdes
35f6caa360 OP-1117 create a second set of rate PIDs so MWH can run rate and attitude separately 2013-12-16 13:42:24 -05:00
Cliff Geerdes
150dbebc63 OP-1117 MultiWiiHorizon flight mode only (not cliffs H1 or H2) 2013-12-15 22:02:06 -05:00
Philippe Renon
d668153b6d OP-1122 OP-1125 fixed copy/paste error in rfm22b flight code 2013-12-14 16:03:42 +01:00
Philippe Renon
2d1a17e267 OP-1122 OP-1125 minor uavtalk cleanups
- removed some magic numbers
- improved some error messages
- minor error handling improvments
2013-12-14 16:02:14 +01:00
Alessio Morale
f95a86eaed OP-1139: missing uncrustification 2013-12-13 17:10:39 +01:00
Alessio Morale
29df9d6dad OP-1139: Add some more descriptive names and comments for compensation variables 2013-12-13 17:10:11 +01:00
Les Newell
faa1b61bf6 OP-984 txpid not using the selected pid bank 2013-12-12 12:11:00 +00:00
Philippe Renon
625d7d53fc OP-1122 OP-1125 reworked uavtalk encoding/decoding to fix issues found during OPLM testing
Packet sizes are now again properly calculated and sent by GCS
Made the ground and flight side more symmetric and robust
Fixed few error handling issues
Replaced UAVTALK_QXTLOG_DEBUG define with qWarning() calls
Known issue : GCS sometimes reports bad CRC on messages received over USB connection
2013-12-12 00:05:58 +01:00
Philippe Renon
ff14b8d28c OP-1122 OP-1125 renamed method autoUpdated to instanceAutoUpdated
also fixed some method help comments
2013-12-11 22:24:38 +01:00
Les Newell
0afe6afd11 OP-984 Fixed insufficient stack for stabilization 2013-12-11 19:24:13 +00:00
Les Newell
024d74c0df OP-984 stabilization.c - commented out code that mirrors change to the current bank data object back to the selected bank. This is left in just in case later modules want to be able to modify the currently selected bank. 2013-12-11 17:09:17 +00:00
Les Newell
63ecf6ad73 OP-984 txpid can now select which bank it operates on, rather than using the flight mode selected bank. 2013-12-11 17:09:12 +00:00
Les Newell
68b8586c6b OP-984 Changed stabilization.c to handle multiple pid bank objects 2013-12-11 17:09:08 +00:00
Les Newell
641cf474eb OP-984 Fixed missing include in manualcontrol.c 2013-12-11 17:09:04 +00:00
Les Newell
b7cfc503ea OP-984 Updated makefiles and inc files for multiple pid bank objects 2013-12-11 17:09:00 +00:00
Les Newell
084e3ccd5d OP-984 Modified manualcontrol to handle pid bank 2013-12-11 17:08:47 +00:00
Les Newell
d625242a45 OP-984 Updated vtolpathfollower to handle PID banks 2013-12-11 17:08:39 +00:00
Les Newell
e4bcd87ddd OP-984 Added stabilizationbank to inc files 2013-12-11 17:08:35 +00:00
Les Newell
b550e67056 OP-984 Updated txpid to handle pid banks 2013-12-11 17:08:31 +00:00
Les Newell
f523ba949d OP-984 Modified manualcontrol to use PID bank data object 2013-12-11 17:08:27 +00:00
Les Newell
fddf61377e OP-984 More changes to stabilization.c for bank switching 2013-12-11 17:08:22 +00:00
Les Newell
114c0ac561 OP-984 Added multiple banks code to stabilization.c 2013-12-11 17:08:18 +00:00
Les Newell
ec713be3ea OP-984 Added data UAV object for current stabilization bank 2013-12-11 17:08:10 +00:00
Alessio Morale
44269b6762 OP-1139: export corrected pressure value to uavobject 2013-12-10 02:02:30 +01:00
Alessio Morale
634ba79dcb OP-1141: allow to input a barometer bias model.
It uses a 3rd degree polynomial to model pressure bias as a function of temperature.
2013-12-10 01:46:28 +01:00
Alessio Morale
13b45b2b78 OP.1139: uncrustify 2013-12-10 01:44:13 +01:00
Alessio Morale
75842cb648 OP-1139: perform second order low temperature compensation.
It follows the procedure described in MS5611 datasheet(http://www.meas-spec.com/downloads/MS5611-01BA03.pdf, page 8)
to perform low(20°) and very low(-15°C) temperature compensation.
2013-12-10 01:21:05 +01:00
Philippe Renon
617924e64d Merge remote-tracking branch 'origin/next' into filnet/OP-1122_gcs_waypoint_editor_stabilization
Conflicts:
	flight/uavobjects/uavobjectmanager.c
	ground/openpilotgcs/src/plugins/uavtalk/telemetrymanager.cpp
	ground/openpilotgcs/src/plugins/uavtalk/uavtalk.pro
	shared/uavobjectdefinition/pathaction.xml
	shared/uavobjectdefinition/waypoint.xml
2013-12-08 14:58:01 +01:00
Philippe Renon
95b5f38556 OP-1122 OP-1125 flight side UAVObjectManager was wrongly emitting EV_UPDATED_MANUAL events when new uavobject instances were created. Now properly emits EV_UPDATED. 2013-12-08 14:34:11 +01:00
Corvus Corax
95d52c6b08 fixed signs in control loop 2013-12-08 14:00:18 +01:00
Corvus Corax
84af4b7651 fixes to barofilter 2013-12-08 14:00:09 +01:00
Corvus Corax
66b0ffd682 small fix to baro state filter - more init cycles 2013-12-08 13:35:00 +01:00
Corvus Corax
5cc8dedadf uncrustify changed things 2013-12-08 13:07:26 +01:00
Corvus Corax
3cea14a809 added missing object, added more debug output 2013-12-08 13:06:28 +01:00
Corvus Corax
4ad0e730da added status uavobject for easier debugging 2013-12-08 12:23:16 +01:00
Corvus Corax
90f689cfa1 throttle does not accelerate downwards but upwards - switched sign 2013-12-08 10:44:17 +01:00
Corvus Corax
981fc4321d removed requirement for non existing task 2013-12-08 10:32:24 +01:00
Corvus Corax
8832ea24f5 proper uncrustification 2013-12-07 23:31:26 +01:00
Corvus Corax
623c25aa99 new design of altitude hold - warning not tested yet! 2013-12-07 23:16:22 +01:00
Corvus Corax
a4d53c18ac got rid of altholdsmoothed uavobject 2013-12-07 20:14:02 +01:00
Corvus Corax
ff5927bc43 some changes to altitudehold, hope i get that done today... 2013-12-07 17:28:01 +01:00
Corvus Corax
3e1b0fd114 Merge branch 'next' into corvuscorax/OP-1022_AH_improvements_amorale 2013-12-07 16:33:57 +01:00
Philippe Renon
4f9231e247 OP-1122 OP-1125 fixed regression in flight side uavtalk introduced in a recent commit 2013-12-04 20:54:07 +01:00
Philippe Renon
ab89d6a491 OP-1122 OP-1125 fixed defect raised in OPReview-593 : two occurences of connection->respObj clearing were removed when they should not have been removed 2013-12-01 21:44:14 +01:00
Philippe Renon
0dc334adea OP-1122 OP-1133 exposed send/request all instances of multi instance uav objects and made related uavtalk fixes 2013-12-01 19:25:44 +01:00
Corvus Corax
9c6abef89b fixed enabled and disabled messages for logging in all cases 2013-12-01 00:03:24 +01:00
Philippe Renon
390c88b92a OP-1122 OP-1125 uavtalk - object request messages are now acked only by object messages and acked object messages are acked only by ack messages 2013-11-29 02:51:46 +01:00
Philippe Renon
15c4392ed5 OP-1122 OP-1125 uavtalk - more OPReview-593 related cleanups 2013-11-29 01:21:45 +01:00
Philippe Renon
50a0a4f512 OP-1122 OP-1125 uavtalk - minor OPReview-593 related cleanups 2013-11-28 23:42:08 +01:00
Philippe Renon
2f0974fda9 OP-1122 OP-1125 uavtalk - fixed a number of issues concerning acked multi instance messages :
- all messages now systematically include an instance ID (fixes parsing of messages containing unknown object)
- added missing NACK of object request on fight side
- added more logging and warnings
- misc fixes and cleanups
this commit affects both the firmware and GCS (need to flash new version of firmware)
2013-11-28 01:14:29 +01:00
Corvus Corax
25fd3d5740 Just uncrustification 2013-11-26 00:43:02 +01:00
Fredrik Arvidsson
2fc34910e0 OP-1119 Fix in pios function for debuglogging uavo. 2013-11-26 00:36:59 +01:00
Corvus Corax
be9faabe92 Merge branch 'next' into corvuscorax/onboardlogging 2013-11-26 00:34:01 +01:00
Alessio Morale
bacc4d3d79 Merge branch 'master' into next
Conflicts:
	flight/targets/boards/oplinkmini/firmware/pios_board.c
	ground/openpilotgcs/copydata.pro
2013-11-25 01:12:10 +01:00
Corvus Corax
1c83d3ee28 BUGFIX to OpLinkMini: oplinkmod needs to initialize the Callback Scheduler
OPLMini does not use Systemmod but its own system module called
oplinkmod - which did not initialize the callback scheduler. Making the
event dispatcher a callback caused it to no longer run due to the
missing callback scheduler initialization
2013-11-24 21:24:55 +01:00
Corvus Corax
18ad56d4ed removed identical files from pios/posix (use files from common instead) 2013-11-24 15:40:32 +01:00
Corvus Corax
89afbde58a initialized log packages with 0xff instead of 0x0 to reduce flash wear 2013-11-24 15:36:26 +01:00
Corvus Corax
32b5ff22cf cleanup defect in OP-Review-586 2013-11-24 15:27:33 +01:00
Philippe Renon
1469277f96 OP-1122 OP-1125 removed dead code from fw uavtalk (first fw commit ;) 2013-11-23 14:59:24 +01:00
Corvus Corax
77b7ba3089 Added new setting 'OnlyWhenArmed' to debuglogsettings 2013-11-19 19:29:24 +01:00
Corvus Corax
d235a24e23 Merge branch 'next' into corvuscorax/onboardlogging 2013-11-19 18:49:58 +01:00
Corvus Corax
7a6c0b61e8 Merge branch 'next' into corvuscorax/callbackeventdispatcher2 2013-11-19 18:36:20 +01:00
Corvus Corax
9414f3513f adapted telemetry stack sizes for flight firmware to include more space needed for logging feature 2013-11-17 22:39:39 +01:00
Corvus Corax
951c7bfea0 removed redundant code from Telemetry 2013-11-17 22:20:19 +01:00
Corvus Corax
0e502d3734 Modified queue creation for telemetry and logging
event queues are now created for all uavobjects for both telemetry and
logging, so later modifications from manual to periodic are possible
2013-11-17 22:10:03 +01:00
Corvus Corax
c6031ed963 fixed usr flash system definition 2013-11-17 21:03:08 +01:00
Corvus Corax
c7431623af changed hardware definition for revolution to have usr space in just one arena
(no flash garbage collection since used primarily for logging where there are no deletes)
2013-11-17 20:43:53 +01:00
Corvus Corax
fcc479f5cb more intelligent log interfacing, including flash formatting option 2013-11-17 20:14:50 +01:00
Corvus Corax
3d8625abaf Enabled logging on revolution (added module and uavobjects) 2013-11-17 18:50:51 +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
6031200aea Some fixes in debuglog to compile and run on all firmware platforms 2013-11-17 18:04:47 +01:00
Corvus Corax
243e261411 UAVObject logging through telemetry module and uavobjectmanager 2013-11-17 17:15:23 +01:00
Corvus Corax
d9a9536b61 modified uavobjectmanager to have accessor functions for the new flags 2013-11-17 14:53:08 +01:00
Corvus Corax
354ca88cd6 Updated UAVObject metadata to include correct flags needed for on board logging 2013-11-17 14:00:42 +01:00
Corvus Corax
a0746d87fa Logging facility: logs debug data to logfs and exports it through container UAVObject 2013-11-17 02:54:26 +01:00
Corvus Corax
adfbdfae38 Make use of (now supported) standard snprintf in stdarg-printf when used in logfs 2013-11-17 02:49:53 +01:00
Corvus Corax
320bbcf434 Made printf-stdarg check maximum string length limit (supports snprintf now) 2013-11-17 02:47:58 +01:00
Corvus Corax
314d526e94 corrected instance id encoding in filename to not conflict with metadata uavobject ids 2013-11-16 18:55:54 +01:00
Corvus Corax
00321b09dc Modified uavobjectmanager to only use logfs calls for UAVObject flash transactions, abstracted dosfs calls to use logfs wrapper class for simpiosix and SD-card access 2013-11-16 17:30:40 +01:00
Alessio Morale
b003109eea OP-1104: Update BL to version 6, raise to 0xA0000 so 640Kbyte program size.
+review OPReview
 #resolve
2013-11-05 19:07:36 +01:00
Corvus Corax
b3ebb91ceb uncrustification 2013-10-19 21:59:07 +02:00
Corvus Corax
86aa993d24 changed port increment tick function for new freertos 2013-10-18 23:07:23 +02:00
mathieu
fb1f58c94b Merge branch 'next' into Mathieu/OP-1079_Update_to_FreeRTOS_v7_5_2 2013-09-11 18:57:37 -07:00
Alessio Morale
c0cfd3dffe Merge branch 'amorale/OP-1058_uavo_named_accessors' into next 2013-09-10 21:20:12 +02:00
Alessio Morale
db7ea48675 Merge remote-tracking branch 'origin/cyr/OP-1076' into next 2013-09-10 20:26:53 +02:00
Mathieu Rondonneau
03b243fe31 OP-1079 - Update to FreeRTOS v7.5.2 2013-09-04 20:26:23 -07: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
Mathieu Rondonneau
e973740b8b OP-1067 run uncrustify 2013-08-28 19:47:44 -07:00
Mathieu Rondonneau
fc6d544476 OP-1067 Force oplonk to report disabled if rfm22b is not initialized. 2013-08-28 19:45:50 -07:00
Erik Gustavsson
e39c3f897e Use xTaskGetTickCount() to time long intervals rather than PIOS_DELAY_GetRaw(), because of wrap-around issues. 2013-08-26 19:14:47 +02:00
David
1a27b473d5 New CDC driver revsion 2013-08-17 04:04:22 +10:00
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
Stacey Sheldon
8ab50bca13 flashfs: use uintptr_t instead of uint32_t in flashfs API 2013-05-08 19:42:01 +02:00
Stacey Sheldon
99e61dd617 logfs: support multiple instances of logfs
Conflicts:
	flight/pios/common/pios_flashfs_logfs.c
	flight/pios/inc/pios_flashfs_logfs_priv.h
	flight/tests/logfs/pios.h
	flight/tests/logfs/pios_config.h
	flight/tests/logfs/unittest.cpp
2013-05-08 19:28:11 +02:00
Alessio Morale
93bad2e8c2 Merge branch 'amorale/OP-917_f4_bootloader_updater' into next
***** PLEASE NOTE  ***** From this revision all F4 based boards (Revolution/OSD) needs bootloader version  5 to boot properly

Conflicts:
	flight/pios/stm32f4xx/libraries/CMSIS2/Device/ST/STM32F4xx/Source/osd/system_stm32f4xx.c
	flight/targets/boards/osd/board-info.mk
	make/boot-defs.mk
	make/common-defs.mk
2013-05-07 21:02:41 +02:00
Werner Backes
cc38ba0bdb Revert 8fa793 because it's obsoleted by 938ed5. 2013-05-06 14:26:25 +02:00
Werner Backes
938ed58918 Corrected timout calculation formula. 2013-05-06 14:20:53 +02:00
Werner Backes
bb87e6390e Update ppm_fresh if we receive a new PPM packet in order to keep the
rfm22b receiver supervisor happy.
2013-05-06 12:00:58 +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
Werner Backes
0005d643ca Merge branch 'D-Lite/OP-934_rfm22b_rcvr_timeout_handling' into D-Lite/OP-934_rfm22b_rcvr_timeout_handling_next 2013-05-06 08:23:22 +02:00
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
e0a6dae46a made "fake" variances set in indoor mode and used for airspeed hack come from UAvObject 2013-05-05 18:19:43 +02:00
Corvus Corax
946105cbe3 Merge branch 'next' into corvuscorax/Attitude-fixes 2013-05-05 17:44:59 +02:00
Alessio Morale
5a2c53804f OP-917 Make reboot over telemetry link works. UserDFU timeouts to the user application when no USB connection is found.
+review OPReview-456
2013-05-05 15:15:44 +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
Alessio Morale
1e5ce7a5fb OP-938 Add programmable EXP and max full throttle climb/descent rate 2013-05-04 18:50:19 +02:00
Brian Webb
dc4455ff68 OP-932: Fixes a bug that was preventing setting of Tx power on remote modem. 2013-05-04 17:24:40 +01:00
Brian Webb
d7ca77b996 Merge branch 'next' of ssh://git.openpilot.org/OpenPilot into OP-932-Modularize_Radio_Driver 2013-05-04 16:50:20 +01:00
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)
7f273bd9e6 Fixes recent, but broken, commit of fix for OP-754. Bunny is bad. 2013-05-04 11:30:39 +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
33cb06b1b0 Merge branch 'next' of ssh://git.openpilot.org/OpenPilot into OP-932-Modularize_Radio_Driver 2013-05-04 01:30:01 +01:00
Richard Flay (Hyper)
576d33464a OP-754/OPReview-374: Applied a very old patch, provided by cyr, to the latest next branch. 2013-05-04 09:10:02 +09:30
Alessio Morale
c88c0e03a8 OP-938 Reduce deadband to +/-10% around 0 2013-05-03 22:32:23 +02:00
Alessio Morale
1c3fb70ab1 OP-629 Block arming on all navigation based modes
Conflicts:
	flight/modules/ManualControl/manualcontrol.c
2013-05-03 22:32:23 +02:00
Alessio Morale
976999eba0 OP-938 Add an "Exp" to throttle stick when in AH to make it useable
Conflicts:
	flight/modules/ManualControl/manualcontrol.c
2013-05-03 22:32:23 +02:00
Alessio Morale
9f65409c5a OP-938 Stop AH from running when board is not armed 2013-05-03 22:32:23 +02:00
Oleg Semyonov
137ddbf73a Fix broken unit tests 2013-05-03 20:27:03 +02:00
Oleg Semyonov
7aa59f4573 pios.h: only include STM32xxx.h if particular STM32 MCU is defined 2013-05-03 20:25:48 +02:00
Brian Webb
38cd0e1c46 OP-932: Fixes configuration of the remote serial connection when using VCP/raw comms. 2013-05-03 14:46:14 +01:00
Brian Webb
12e8adbdc4 OP-932: Fixes vitual com port and (not tested) raw comms over a UART on the OPLink. 2013-05-03 14:46:01 +01:00
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
Richard Flay (Hyper)
0178d666d5 OP-931: Fixes the mag_updated test in revo Attitude module to use the square of the Be vector magnitude.
Also fixes the dT calculation issues in a few places, one of which was as suggested in OPReview-459.

+review OPReview-459
2013-05-03 19:24:54 +09:30
Corvus Corax
5d5a3389c4 missed removal of unneeded update chec 2013-05-03 02:48:06 +02: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
Corvus Corax
48288c740e OP-931: some floating point math fixes, should make merge with other dev branch easier 2013-05-02 22:45:02 +02:00
Corvus Corax
201eed8d8f when testing variances for validity dont allow negative variances 2013-05-02 20:09:57 +02:00
Werner Backes
b48665e59b rfm22b receiver supervisor now properly indicates a timeout condition.
This allows upper layers to recognize control signal loss.
2013-05-02 12:57:00 +02:00
Werner Backes
8fa79377c3 Lowered rfm22b_rcvr supervisor timeout. Timeout values above 159 exceed uint8_t
range during timeout calculation and effectively disable the supervisor.
2013-05-02 12:56:57 +02:00
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
Brian Webb
66b048e280 OP-932: Fixes configuration of the remote serial connection when using VCP/raw comms. 2013-05-02 04:42:16 +01:00
Brian Webb
80cef9dbcc OP-932: Fixes vitual com port and (not tested) raw comms over a UART on the OPLink. 2013-05-02 04:23:26 +01:00
Corvus Corax
467b22f294 I knew I had forgotten something (cos -> cosf ...) 2013-05-01 20:40:50 +02:00
Corvus Corax
ff5fd9c7c9 Safety modification, defer any change to RevoSettings (fusionalgorithm), RevoCalibration, and EKFInitialVariance until the craft has been disarmed! 2013-05-01 20:21:46 +02:00
Corvus Corax
e7dc665c14 Reworked Variance Objects, Setting for initial EKF variance 2013-05-01 19:16:29 +02:00
Corvus Corax
3ef2693dfc use DEG2RAD and RAD2DEG everywhere 2013-05-01 18:16:22 +02: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
3b5bec167e Merge branch 'next' of ssh://git.openpilot.org/OpenPilot into OP-932-Modularize_Radio_Driver 2013-05-01 15:30:24 +01:00
Brian Webb
d8b09f132f OP-932: Removes requirement to ACK PPM packets. 2013-05-01 15:28:33 +01:00
Brian Webb
344e5cbb66 Merge branch 'next' of ssh://git.openpilot.org/OpenPilot into OP-932-Modularize_Radio_Driver 2013-05-01 14:38:28 +01:00
Brian Webb
8c763c8ed3 OP-932: Improves the timing of channel changes on the radio device. 2013-05-01 14:37:47 +01:00
Corvus Corax
a0ca66b0cd Merge branch 'corvuscorax/delayed_callbacks_with_delay' into next 2013-05-01 15:34:16 +02:00
Oleg Semyonov
7032d2a9d6 Merge remote-tracking branch 'origin/next' into os/uncrustify-config 2013-05-01 13:31:38 +02:00
Oleg Semyonov
654dd051c7 Merge remote-tracking branch 'origin/next' into os/debug-pins 2013-05-01 11:13:30 +02:00
Brian Webb
a7d606dfe9 OP-932: Syncronize start of transmissions using the same coordinated clock as used by FHSS. 2013-05-01 03:46:46 +01:00
Brian Webb
2201d9d2bb OP-932: Continued cleanup and modularization of radio code. Also fixed a bug that held the SPI lock when an error occured in an Rx. 2013-05-01 03:14:35 +01:00
Brian Webb
ef18319306 OP-932: Continued cleanup and modularization of the RFM22B radio code. Low-level radio driver has mostly been split out of the higher-level state machine. 2013-05-01 03:14:23 +01:00
Brian Webb
94cb92f410 OP-932: Additional restructuring of radio code. 2013-05-01 03:14:11 +01:00
Brian Webb
cb24d3266e OP-932: Hold SPI bus semephore through multiple read/write transactions. 2013-05-01 03:13:58 +01:00
Brian Webb
8c59271d48 OP-932: Store the device status in bitfields with meaningful names. 2013-05-01 03:13:48 +01:00
Brian Webb
c3ea1bf3c0 OP-932: Fixed GPIO debugging on RevoMini (both V1 and V2) 2013-05-01 03:13:36 +01:00
Brian Webb
39c6e81d07 OP-924: Ensures that the PPM pulse turns off between PPM frames. 2013-05-01 02:48:48 +01:00
Brian Webb
e642183dee OP-924: Any disconnect between radios causes a reset, which causes a re-configuration of I/O devices (com ports, PPM, etc). This causes problems due to certain devices (PPM in particular) not supporting re-configuration. This patch forces configuration to only happen once (on initial connection), which should fix this issue. 2013-05-01 02:48:47 +01:00
Brian Webb
76e4638b8f OP-924: Added back setting of Tracking to true when a new sample is set. 2013-05-01 02:48:46 +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
Brian Webb
ab926da507 OP-924: Added a supervisor timeout to the PPM output driver. This is based on the code in the PPM input driver. A (minor) uninitialize variable bug was also fixed in the PPM input driver. 2013-05-01 02:48:44 +01:00
Alessio Morale
37a0d2c99e OP-917 included a "compatibility" linker script used by the bootloader updater to ensure its compatibility with previous bootloader versions
+review OPReview-456
2013-05-01 01:14:30 +02:00
Alessio Morale
d79887d223 OP-917 relocate IRQStack to CCSRAM
+review OPReview-456
2013-05-01 01:11:17 +02:00
Alessio Morale
e1fdc41d7f OP-917 add Bootloader support for IRQStack to reside in CCSRAM
+review OPReview-456
2013-05-01 01:03:27 +02:00
Alessio Morale
1eef6a7f06 OP-917 Extended the program flash size to 3 128k sectors for F4 targets
+review OPReview-456
2013-05-01 01:00:48 +02:00
Oleg Semyonov
dbc35d2b71 Update flight/.gitattributes to include *.template files 2013-04-30 22:15:58 +02:00
Oleg Semyonov
7c6da1df65 OPLinkMini: remove duplicated pvPortMalloc defines, fix #ifdef macro name
When the #define is reformatted by uncrustify, it differs from the same
in FreeRTOS default config and gives error. So the removal of it serves
to 2 purposes: removes the duplication and fixes uncrustified builds.
2013-04-30 16:54:30 +02:00
Oleg Semyonov
0394a3511c Rename template files to *.template to screen from uncrustify processing 2013-04-30 16:54:27 +02: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