James Cotton
652647fc87
Make autotuning module optional
2012-08-03 09:37:46 -05:00
James Cotton
d0ef95ff9a
Fix idiotic bug in the stab_refactor
2012-08-03 09:37:46 -05:00
James Cotton
2ccd6605a4
Now the stabilization refactor is in we can make swapping between tuning the
...
system in rate or attitude mode software configurable.
2012-08-03 09:37:45 -05:00
James Cotton
24d9e50c08
Based on the selected behavior either apply or save the stabilization settings
2012-08-03 09:37:45 -05:00
James Cotton
7ea14ecc22
Track the output gain instead of amplitude so the measured values are
...
consistent if the settings are changed afterwards.
2012-08-03 09:37:45 -05:00
James Cotton
17878b32f3
Make autotune run within an attitude loop instead of direct rate mode. Easier
...
for beginners.
2012-08-03 09:37:44 -05:00
James Cotton
48362f56f6
Enable autotune as an optional CC module
2012-08-03 09:37:44 -05:00
James Cotton
a9af53b4f3
Create new autotuning module which rotates through the axes for autotuning and
...
then computes new stabilization settings.
2012-08-03 09:37:44 -05:00
James Cotton
44e72d0a70
A big refactoring of stabilization.c to get rid of the two separate loops and
...
move them into one big structure. This makes it easier to implement other
modes.
2012-08-03 09:37:44 -05:00
James Cotton
e01c5d5f87
Get online estimation of period and amplitude working
2012-08-03 09:37:44 -05:00
James Cotton
4ac8df6aa8
Make the system perform an online estimate of the period and amplitude of the
...
oscillation during relay tuning
2012-08-03 09:37:44 -05:00
James Cotton
17a0d3ebb4
Add a relay stabilization mode
2012-08-03 09:37:44 -05:00
James Cotton
9ce7d9b4ac
Add UAVOs for relay tuning
2012-08-03 09:37:44 -05:00
James Cotton
c1a0f176eb
Merge branch 'master' into next
2012-08-03 09:37:22 -05:00
James Cotton
dafc455bfa
Increase the manualcontrol stack size based on Stac's comments
2012-08-03 09:36:59 -05:00
James Cotton
6948f1dc41
Merge remote-tracking branch 'origin/master' into next
...
Conflicts:
package/winx86/translations/strings_de.nsh
2012-08-03 09:35:18 -05:00
Richard Flay (Hyper)
6d34795494
Re-enabled simposix SDCard support, and removed obsolete SDCard alarm usage from System module
2012-08-01 19:53:59 +09:30
Werner Backes
e32152386a
Increased stack for PIOS_SETS_HOMELOCATION case to avoid running into low stack warnings when settings the home location from GPS was actually used.
2012-07-31 11:10:23 +02:00
Richard Flay (Hyper)
56647f5409
Fix for OP-661: error messages in GCS log due to obsolete AHRSComms and SDCard related alarms. Change also disables obsolete SDCard support on the flight side of CC and PipX
2012-07-31 11:07:07 +09:30
Werner Backes
b8450d4a07
Fixed World Magnetic Model to accept altitude in meters instead of kilometers
2012-07-31 00:18:10 +02:00
James Cotton
f5af60af3e
Increase the stack size for the system module now the saving occurs within that
...
thread.
2012-07-27 17:43:47 -05:00
James Cotton
6867068b9e
Merge branch 'saving_queue' into next
2012-07-25 13:28:17 -05:00
James Cotton
f9eb82478b
Make sure to create the system queue BEFORE calling task start. Systemmod
...
initializes differently than other threads and I missed htat. Huge thanks to
Hyper for making me realize that despite the fact I didn't see it :D.
2012-07-25 13:27:39 -05:00
James Cotton
c0c5da69aa
Should check that the queue allocates and initialize shoudl return -1 if not
2012-07-25 13:27:38 -05:00
James Cotton
66191c4d01
Make saving occur within the system thread instead of the event system thread
2012-07-25 13:27:38 -05:00
James Cotton
9865466da9
Make sure to create the system queue BEFORE calling task start. Systemmod
...
initializes differently than other threads and I missed htat. Huge thanks to
Hyper for making me realize that despite the fact I didn't see it :D.
2012-07-24 09:51:03 -05:00
James Cotton
e38325c745
Should check that the queue allocates and initialize shoudl return -1 if not
2012-07-23 08:47:43 -05:00
James Cotton
545018244c
Make saving occur within the system thread instead of the event system thread
2012-07-22 23:03:27 -05:00
Oleg Semyonov
4e42fb564e
AeroSimRC: fix CC3D virtual sensor readings in simulation mode
2012-07-22 14:19:29 +03:00
Oleg Semyonov
f3f34e8f9f
AeroSimRC: fix CC3D virtual sensor readings in simulation mode
2012-07-22 14:18:49 +03:00
James Cotton
a559286d0b
A few of the UBX types were missing a struct for the type.
2012-07-22 01:21:12 -05:00
Stacey Sheldon
922c9b3519
simposix: include new GPS UAVOs for GPS module
2012-07-21 14:42:34 -04:00
Stacey Sheldon
123f199160
gps: fix case on GPS.h file
2012-07-21 14:42:04 -04:00
Stacey Sheldon
fc78d9f7d8
nmea: fix typo in DEBUG macro name
2012-07-21 14:23:14 -04:00
Stacey Sheldon
eafd525323
Merge remote-tracking branch 'origin/D-Lite/ubx-parser-next' into next
2012-07-21 14:22:10 -04:00
Werner Backes
d4a401ce30
Removed Revolution specific code
2012-07-21 07:58:00 +02:00
Werner Backes
bcee75a270
Added comment to explain the gpsDataUpdated flag
2012-07-20 11:56:40 +02:00
Werner Backes
6db2c949a3
Report GPS NO_FIX status only once per message set and not with every
...
single message.
2012-07-20 00:23:05 +02:00
Werner Backes
d3962f3303
Removed message counter from nmea_parsers structure and made it const to
...
save some RAM.
2012-07-19 23:37:11 +02:00
Werner Backes
15fa42058e
Unified statistics counters between UBX and NMEA parser and moved them
...
to GPS.c.
2012-07-19 22:00:24 +02:00
Werner Backes
307626d1de
Fixed typo
2012-07-19 20:46:44 +02:00
Werner Backes
926e3d93b7
Removed unused variables
2012-07-19 20:14:51 +02:00
Werner Backes
a22a11d973
Cleanups:
...
- removed unused nav_status parser function
- enum coding style change
2012-07-19 13:05:55 +02:00
James Cotton
719772c98a
Merge remote-tracking branch 'origin/Brian-PipXtreme-V2' into next
2012-07-16 11:42:29 -05:00
James Cotton
ce6bebceb6
Also strex needs to not clobber it's register to have predictable results.
...
OPReview-227
2012-07-14 19:47:03 -05:00
Michael Hope
fa3aa20e05
ld: make sure current pointer never goes backwards
...
Fixes linking on ld version 2.22. Identical to 3cbf4499
.
2012-07-14 19:47:03 -05:00
Michael Hope
0efb24a54b
The destination register of an exclusive store must be
...
different from both the value and address register. Fix building with
recent binutils by marking the result as early clobber.
2012-07-14 19:47:03 -05:00
Brian Webb
cc6b48754d
Reduced buffer sizes on PipX.
2012-07-14 17:17:01 -07:00
Brian Webb
a252b78fea
Fixed transparent comms on PipX.
2012-07-14 17:14:43 -07:00
Brian Webb
03beb0bad6
Fixes to PipX firmware to compile with non codesourcery compiler.
2012-07-14 08:18:21 -07:00
Werner Backes
bc7defe21f
Changed usage of UBX structures to follow changed structure
...
declarations. (see commit e6f62f)
2012-07-13 14:48:11 +02:00
Werner Backes
7207d2bb98
Fixed typos in comments.
2012-07-13 14:43:26 +02:00
Werner Backes
6ae9db8cb7
Removed typedefs for structures to be consistent with style guide.
2012-07-13 14:40:11 +02:00
Werner Backes
e6f62f5806
Deleted commented-out code
2012-07-13 13:22:27 +02:00
Brian Webb
3fabdb9963
Fixed conflicted merge with origin/next.
2012-07-11 19:25:05 -07:00
Werner Backes
57dc9e6d39
Removed ECEF calculation from SetHomeLocation.
2012-07-11 23:53:34 +02:00
Werner Backes
7ef7b621d7
Reenable PIOS_GPS_SETS_HOMELOCATION on Revo.
...
Change-Id: I5a5e2ec0deb4241faad23f6fead5036b039bfbf9
2012-07-11 23:37:03 +02:00
Werner Backes
19c0f6a88a
HomeLocation UAVOject on CC still has ECEF so make this part confitional.
2012-07-11 00:40:15 +02:00
Werner Backes
a77a367df2
Pass GPSPositionData as a function argument instead of using a global variable.
2012-07-10 17:35:35 +02:00
Werner Backes
d0b7dc0012
Added some pieces that had been lost during rebase
2012-07-10 16:38:00 +02:00
Werner Backes
5776981436
Deleted obsolete Libraries/inc/NMEA.h that conflicts with Modules/GPS/inc/NMEA.h
2012-07-10 16:25:58 +02:00
Werner Backes
19a9cd03c2
Introduced GPSVelocity UAVObject
...
Conflicts:
ground/openpilotgcs/src/plugins/uavobjects/uavobjects.pro
2012-07-10 16:23:10 +02:00
Werner Backes
10351e61d4
Revert "Changed GPS port to be rx/tx instead of rx only"
...
This reverts commit e2a35d1f4c
.
2012-07-10 12:10:17 +02:00
Werner Backes
f1b846593f
Fixed line endings
2012-07-10 11:40:55 +02:00
Werner Backes
e2a35d1f4c
Changed GPS port to be rx/tx instead of rx only
2012-07-10 11:01:46 +02:00
Werner Backes
7a7b64c9cf
Report SVs even if sat position is unknown. This way, received
...
satellites are reported early during cold start which gives better
feedback to the user.
2012-07-10 11:01:43 +02:00
Werner Backes
0424172398
Better separation between UBX and NMEA parser
...
Make GPS protocol a user selectable option
Support for UBX protocol on CopterControl
2012-07-10 11:01:41 +02:00
Werner Backes
29fd85f0e2
Process additional UBX messages. All information needed to fill the GPS
...
UAVObjects can now come from UBX protocol alone. Mixture of NMEA and UBX
protocols still is possible but not recommended.
2012-07-10 10:37:15 +02:00
Werner Backes
8c184ec8f2
Add additional UBX messages NAV-DOP, NAV-SOL, NAV-STATUS, NAV-SVINFO,
...
NAV-UTC
2012-07-10 10:36:56 +02:00
Werner Backes
a3e2513952
Increased stack size and com receive buffer to support SVINFO message.
...
Fix NOGPS condition for UBX.
2012-07-10 10:35:56 +02:00
Stacey Sheldon
2139dee574
uavobjectmanager: remove uavo name field and related functions
...
Saves a further 8 bytes of RAM per object.
Saves 1.5KB of flash by removing all of the const strings for
all of the object names and the corresponding meta object names.
This leaves room for more code.
2012-07-07 21:49:53 -04:00
Stacey Sheldon
2396eaef5a
uavobjectmanager: simplify new embedded metadata objects
...
Simplifies some of the code that handles the
metadata objects which are now embedded within
the data UAVOs.
2012-07-07 21:49:53 -04:00
Stacey Sheldon
eef9b5f61e
uavobjectmanager: drop typedefs and extra "Struct" in names
...
Readability improvements.
2012-07-07 10:36:37 -04:00
Stacey Sheldon
2a2eb47a2a
uavobjectmanager: fixup indentation
...
No functional changes.
2012-07-07 10:36:37 -04:00
Corvus Corax
42041ef68c
UavObjectmanager: Squeeze UAVObject instances closer together and eliminate unneeded id's and pointers - frees again >512 byte on next
2012-07-07 10:36:37 -04:00
Corvus Corax
da539b2b27
flight/UAVObjectManager: Represent Metadata as a property of each Object-type as opposed to separate UAVObjects - saves over 700 byte of RAM on next!
2012-07-07 10:36:37 -04:00
Stacey Sheldon
a7da3b14ba
simposix: disable optimization for simposix build
...
Optimizing for size on simposix is meaningless, and
the code is easier to debug using gdb when optimization
is disabled.
2012-07-07 10:36:36 -04:00
Stacey Sheldon
22f4d30e27
gdb: add gdb setup file for simposix
...
The simposix target uses SIGUSR1 extensively as an
internal signal. This setup file makes sure that
SIGUSR1 doesn't break into gdb every time it is used.
2012-07-07 10:36:36 -04:00
Stacey Sheldon
32373523d5
Merge remote-tracking branch 'origin/stac/simposix-warning-fixes' into next
2012-07-06 22:02:52 -04:00
James Cotton
58abe910d0
Merge remote-tracking branch 'origin/os/extended-flightmode-switch' into next
2012-07-04 11:52:38 +02:00
James Cotton
4afd9d110e
Don't zero the PIDs when the settings are updated. Fixes some quirks from
...
using TxPID tuning.
2012-07-03 14:19:21 +02:00
Stacey Sheldon
1635c83df0
simposix: fix warnings
2012-07-01 23:22:55 -04:00
Brian Webb
54455d60df
Read PPM outside of the output test.
2012-07-01 08:32:58 -07:00
Brian Webb
499e2ff989
Fixed PipX passthrough when connected via USB HID.
2012-06-30 18:27:15 -07:00
Brian Webb
3405bc3ebe
Merge remote-tracking branch 'origin/next' into Brian-PipXtreme-V2
2012-06-30 10:06:51 -07:00
Brian Webb
10e52b31c5
Added the ability on the PipX to specify if a comport is used to connect to the GCS (ground side), so it will receive status, etc, or UAVTalk (flight side). The data passing in RadioComBridge was also made more uniform, which allows for easier reconfiguration.
2012-06-30 10:06:28 -07:00
Corvus Corax
4d06bdfc04
PiOS.posix: bugfix to POSIX pios_delay implementation
2012-06-29 15:06:50 +02:00
Corvus Corax
2540ee53dc
Merge commit '80f53b185c67d475ead43df97c4a62bcc36d7d90' into gcsbitfields
2012-06-29 09:45:44 +02:00
a*morale
5a1efef3fe
Merge branch 'amorale/fixoutputglitchonsave' into next
2012-06-26 01:09:18 +02:00
Oleg Semyonov
727e67d7fd
Even more optimize FlightMode switch position calculation
...
This runs in a high frequency loop and should use as little of
floating point as possible. Thanks to Kenn for the idea.
2012-06-25 11:41:42 +03:00
Oleg Semyonov
2c896c9e91
Do not care about FlightMode channel if only one flight mode configured
2012-06-25 01:52:06 +03:00
Oleg Semyonov
02fa6fde09
Optimize FlightMode switch position calculation
2012-06-25 00:30:42 +03:00
Stacey Sheldon
154d971d4d
flash: don't call vTaskDelay() before OS init
...
PIOS_Flash_Jedec_EraseChip is called during early
init when the table_magic has changed. This call
happens on CC/CC3D prior to the OS being initialized
so it is not OK to call vTaskDelay() yet.
This was leading to boards locking up (no flashing blue
LED) immediately after jumping to the application when
the table_magic had changed or was being init'd for the
very first time.
2012-06-24 12:23:34 -04:00
a*morale
51678f24b4
Solve a bug that causes the motor spin on the first save for ActuatorSettings.
2012-06-24 14:06:51 +02:00
Brian Webb
43786c914d
Merge remote-tracking branch 'origin/next' into Brian-PipXtreme-V2
2012-06-23 15:01:53 -07:00
a*morale
688ae814fc
Modifications to prevent glitches on servo output during save for ActuatorSettings
...
Refactored the updating of ChannelUpdateFreq so that it is done only when the actual update rates changes.
The actual update of the servo channel is moved inside the ActuatorTask.
Now the problem happen only in very few cases when modifying update rates.
2012-06-23 22:55:57 +02:00
Oleg Semyonov
cd6387d0a6
Add support for more than 3-pos FlightMode switches
...
It is now possible to have 1 to 6 flight mode switch positions
(usefull for guidance, position hold and similar use).
The input channel range is divided into N (1 to 6) zones and each
zone represents a flight mode. Default is 3 zones (backward compatible),
but more can be chosen.
How to use: configure Tx mixers in a way they provide required number
of different values for the same FlightMode channel. For instance,
using Turnigy 9X radio with ER9X firmware, one can create a mixer like
this:
-100 MAX ID0 Manual
R -50 MAX ID1 Stabilized1 (Rate)
R 0 MAX ID2 Stabilized2 (Attitude)
R 50 MAX RUD PositionHold
R 100 MAX ELE ReturnToBase
And set number of flight mode positions to 5. As a result, the 3-pos
switch (ID0, ID1, ID2) will provide first three flight modes, the rudder
D/R switch will override those and enable the 4th flight mode, and
elevator D/R switch will have highest precedence and activate the 5th
flight mode.
This will change the ManualControlSettings objectID.
2012-06-23 22:10:19 +03:00
Stacey Sheldon
384305d8ee
makefile: add additional context to output when building all_* targets
...
When building the various all_* targets, it was hard to tell which
board/build-type that each line of output applied to. Now, the
all_* target types will include something like:
CC [fw|cc ] flight/PiOS/STM32F10x/pios_gpio.c
which includes the necessary additional context.
This will help with identifying the context for warnings and errors
when building a group of targets.
Conflicts:
Makefile
2012-06-20 23:38:21 -04:00
Brian Webb
005ba0f8c8
Added erase pipx settings to PipX firmware (no GCS support yet).
2012-06-16 19:19:23 -07:00
Brian Webb
33cae7645d
Fixed calculation of retries on PipX.
2012-06-12 19:48:21 -07:00