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

3393 Commits

Author SHA1 Message Date
Brian Webb
88c8cba0ff Reduced size of temporaries to the correct size in rs.c 2012-08-22 06:46:51 -07:00
Brian Webb
2cd0733f7d Removed unecessary include of stm32f10x.h from aes.h 2012-08-22 06:45:44 -07:00
a*morale
d8ea84cdf1 Fix output power selection from the configured value at startup 2012-08-21 18:51:45 +02:00
Stacey Sheldon
431863b0c2 sdcard: build fixes for revo due to sdcard removal
Related to commit: 56647f5409
merged from op-public.
2012-08-20 21:32:19 -04:00
Stacey Sheldon
1f1b240b2a Merge remote-tracking branch 'op-public/next' into revo-next
Conflicts:
	shared/uavobjectdefinition/manualcontrolsettings.xml
	shared/uavobjectdefinition/taskinfo.xml
2012-08-20 21:22:02 -04:00
Stacey Sheldon
2d0e4944d3 Merge remote-tracking branch 'origin/stac/actuator-task-cpu-optimization' into next 2012-08-20 19:13:39 -04:00
James Cotton
113a759cd9 Merge branch 'next' into revo 2012-08-19 21:22:02 -05:00
Brian Webb
171f91336c Removed assert that was no longer needef form PipX pios_board.c 2012-08-18 08:40:19 -07:00
James Cotton
c4b82fa1fd Disable transmitter updating PH location while using a tablet. 2012-08-12 17:51:52 -05:00
James Cotton
44dc01126e Merge branch 'next' into revo 2012-08-12 16:12:54 -05:00
James Cotton
3d1a6cbcba Attitude: Make sure the EKF can init if HomeLocation is not set but the
magnetic field is.  Good for switching between indoor and outdoor mode.
2012-08-12 16:11:04 -05:00
James Cotton
880eb5eb11 Fix revo for the removal of SDCard supprot 2012-08-12 14:45:06 -05:00
James Cotton
18d63f7e9c Merge commit 'b19a0947fb72dc069540561ffeb6983ee318fcb9' into revo 2012-08-12 14:39:30 -05:00
James Cotton
75db0fcb35 Merge branch 'next' into revo
Conflicts:
	flight/Modules/GPS/GPS.c
	shared/uavobjectdefinition/manualcontrolsettings.xml
	shared/uavobjectdefinition/systemalarms.xml
2012-08-12 14:38:38 -05:00
Stacey Sheldon
9f8d22961f cc makefile: enable -ffunction-sections and -fdata-sections
These compiler options place each function and each global variable
into its own ELF section in each .o file.  This, combined with the
linker option --gc-sections allows the linker to evict unused functions
and variables from the final ELF file.

On CC, the firmware flash bank is only 118784 bytes in total.

This commit reduces the .text segment from 114120 to 83536 and .data
from 572 bytes to 560 bytes.  That frees up a grand total of 30596 bytes
of flash and 12 bytes of RAM.
2012-08-11 20:13:09 -04:00
Stacey Sheldon
29ab1d8cf3 actuator: factor out settings updates from main loop 2012-08-11 19:46:00 -04:00
Stacey Sheldon
63c167c183 taskinfo: also track Event thread's stack usage and CPU utilization
The event dispatcher thread is started differently than most other
threads so it was missed in the taskinfo tracking information.  Now
it's also included.
2012-08-11 18:47:03 -04:00
Stacey Sheldon
b505602c15 Merge remote-tracking branch 'origin/stac/rc-tx-joystick-emulation' into next 2012-08-11 11:21:18 -04:00
Stacey Sheldon
49c153003c hid joystick: use linearly scaled channels
Scales each channel only based on max and min calibrated values.
The neutral value is now ignored so the joystick sees a linear
range between min and max.

This is particularly useful to allow the full range of values for
throttle to be passed through to the joystick.
2012-08-10 23:36:06 -04:00
Stacey Sheldon
07fde38887 hid joystick: factor out min/max range from report items 2012-08-10 23:29:34 -04:00
James Cotton
f530702ce9 Merge branch 'android' into sim_android
Conflicts:
	androidgcs/AndroidManifest.xml
	androidgcs/res/layout/gcs_home.xml
	androidgcs/res/layout/pfd.xml
	androidgcs/res/layout/system_alarms.xml
	androidgcs/src/org/openpilot/androidgcs/AttitudeView.java
	androidgcs/src/org/openpilot/androidgcs/BluetoothDevicePreference.java
	androidgcs/src/org/openpilot/androidgcs/CompassView.java
	androidgcs/src/org/openpilot/androidgcs/Controller.java
	androidgcs/src/org/openpilot/androidgcs/HomePage.java
	androidgcs/src/org/openpilot/androidgcs/Logger.java
	androidgcs/src/org/openpilot/androidgcs/ObjectBrowser.java
	androidgcs/src/org/openpilot/androidgcs/ObjectEditor.java
	androidgcs/src/org/openpilot/androidgcs/ObjectManagerActivity.java
	androidgcs/src/org/openpilot/androidgcs/Preferences.java
	androidgcs/src/org/openpilot/androidgcs/SystemAlarmActivity.java
	androidgcs/src/org/openpilot/androidgcs/TelemetryWidget.java
	androidgcs/src/org/openpilot/androidgcs/UAVLocation.java
	androidgcs/src/org/openpilot/uavtalk/Telemetry.java
	androidgcs/src/org/openpilot/uavtalk/TelemetryMonitor.java
	androidgcs/src/org/openpilot/uavtalk/UAVDataObject.java
	androidgcs/src/org/openpilot/uavtalk/UAVMetaObject.java
	androidgcs/src/org/openpilot/uavtalk/UAVObject.java
	androidgcs/src/org/openpilot/uavtalk/UAVObjectField.java
	androidgcs/src/org/openpilot/uavtalk/UAVObjectManager.java
	androidgcs/src/org/openpilot/uavtalk/UAVTalk.java
	androidgcs/src/org/openpilot/uavtalk/uavobjects/AltitudeHoldSettings.java
	androidgcs/src/org/openpilot/uavtalk/uavobjects/FirmwareIAPObj.java
	androidgcs/src/org/openpilot/uavtalk/uavobjects/FlightBatterySettings.java
	androidgcs/src/org/openpilot/uavtalk/uavobjects/FlightBatteryState.java
	androidgcs/src/org/openpilot/uavtalk/uavobjects/FlightStatus.java
	androidgcs/src/org/openpilot/uavtalk/uavobjects/HomeLocation.java
	androidgcs/src/org/openpilot/uavtalk/uavobjects/HwSettings.java
	androidgcs/src/org/openpilot/uavtalk/uavobjects/ManualControlSettings.java
	androidgcs/src/org/openpilot/uavtalk/uavobjects/OveroSyncStats.java
	androidgcs/src/org/openpilot/uavtalk/uavobjects/PositionActual.java
	androidgcs/src/org/openpilot/uavtalk/uavobjects/RevoCalibration.java
	androidgcs/src/org/openpilot/uavtalk/uavobjects/SystemAlarms.java
	androidgcs/src/org/openpilot/uavtalk/uavobjects/TaskInfo.java
	androidgcs/src/org/openpilot/uavtalk/uavobjects/UAVObjectsInitialize.java
	flight/Modules/GPS/GPS.c
2012-08-08 15:50:28 -05:00
James Cotton
06a6e367b0 Merge remote-tracking branch 'origin/hyper/OP-661' into next 2012-08-08 13:49:48 -05:00
Stacey Sheldon
5902c19cc3 hid joystick: compress local usages since they're all in the same page 2012-08-08 10:38:43 -04:00
Stacey Sheldon
030d9e84f9 hid joystick: remove unnecessary usage page definitions 2012-08-08 10:15:08 -04:00
Stacey Sheldon
449c7aab7a hid joystick: use 32-bits to represent max range 2012-08-08 00:50:03 -04:00
Stacey Sheldon
94f6344fc5 hid joystick: restructure joystick HID report to work on windows 2012-08-07 21:34:25 -04:00
James Cotton
097ae637bf Remove the TCHAIN_PREFIX flag from the OSX Makefile. No clue how that got
merged in.
2012-08-06 16:54:55 -05:00
James Cotton
f247443d64 Clean up the logging somewhat 2012-08-06 16:54:52 -05:00
Stacey Sheldon
017d8c79c9 hid joystick: add missing .c file
This time for sure...
2012-08-06 11:49:03 -04:00
Stacey Sheldon
d44e24a150 hid joystick: add missing .h files 2012-08-06 11:42:44 -04:00
Stacey Sheldon
ef0c12b1b6 hid joystick: emulate a USB HID joystick using RC Transmitter
Adds a new RCTransmitter setting for the USB HID interface which
emulates a USB HID joystick.  The scaled RC receiver channels
from any RCVR protocol are passed through to the various emulated
joystick controls.

The main use for this feature is to allow you to use your own RC
transmitter with any RC simulator on a PC.

This is known to work with CRRCsim but should work with any simulator
that supports joystick input.
2012-08-05 21:45:27 -04:00
James Cotton
096f940fee Reenable the flash version now Stac's fix is tested. 2012-08-04 12:03:41 -05:00
James Cotton
d6c485459f Fix error Stac caught in sin_lookup 2012-08-04 00:33:20 -05:00
James Cotton
8eac518a9c If the sin table is empty don't attempt to use it and return 0. 2012-08-03 12:43:50 -05:00
James Cotton
f3dc2dc2ad Store 180 deg in flash now and even make the flash and ram version share a
lookup method.  Still don't get the same results.
2012-08-03 12:31:15 -05:00
James Cotton
9f3c8dddd3 Add a version of the sin lookup table that is in ram instead of flash 2012-08-03 12:15:57 -05:00
James Cotton
490955dbea Use cos_lookup instead of sin_looup(x+90) 2012-08-03 11:34:05 -05:00
James Cotton
3982ad0046 Enable AUTOTUNE by default for CC 2012-08-03 09:37:47 -05:00
James Cotton
fc2f8376bc Prevent an alarm from ManualControlCommand when using autotuning mode. 2012-08-03 09:37:47 -05:00
James Cotton
50c7641162 Move the PID methods into a standalone library 2012-08-03 09:37:46 -05:00
James Cotton
2723ff4be3 Factor the virtual flybar code out of the stabilization module 2012-08-03 09:37:46 -05:00
James Cotton
aae0e562c6 Create a sine lookup table that is cached in flash and make relay tuning start
ot use this.
2012-08-03 09:37:46 -05:00
James Cotton
924c91ce1e Fix mistake from previous merge with duplicate the STABILIZATIONOMDE_ATTITUDE
case
2012-08-03 09:37:46 -05:00
James Cotton
8565dfbcc3 Factor the relay tuning out of the main stabilization.c file into it's own
tool.
2012-08-03 09:37:46 -05:00
James Cotton
ee4bb84e36 Fix: Increase teh memory for autotune back to 1024 which leaves 100 free. 2012-08-03 09:37:46 -05:00
James Cotton
561cf994b0 Reduce the memory footprint of the sin lookup table by using sin(x+pi) =
-sin(x).  Still just needs to move into flash and have some options about
precision when in its own library function.
2012-08-03 09:37:46 -05:00
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
James Cotton
beb75f22cf Remove the TCHAIN_PREFIX flag from the OSX Makefile. No clue how that got
merged in.
2012-08-02 10:40:40 -05:00
James Cotton
5e2c2a0ec3 Clean up the logging somewhat 2012-08-02 10:40:38 -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
Sambas
2c8929525d Optional modules for Revolution, compiles but not flight tested. 2012-07-30 12:20:18 +03:00
Sambas
b8d33a8aab Just some tests/fixes 2012-07-30 11:47:34 +03:00
Sambas
a934063070 reworked AH gauge 2012-07-30 11:45:46 +03:00
Sambas
e59f99bc8e Wave audio player test app. 2012-07-30 11:45:36 +03:00
Sambas
52c3627bb2 OSD uSDcard support, settings save/load works (tested on 128MB card). booting takes some time for some reason. 2012-07-30 11:45:22 +03:00
Sambas
ad0473e646 proper use of i2c transfer, return 0 is all ok, original code locked the transfer when all ok. 2012-07-30 11:41:25 +03:00
Sambas
79be7613b5 CC mag&baro for OSD, bmp needed some black magic hacking 2012-07-30 11:40:16 +03:00
James Cotton
dde9de080e Need to increase the GPS stack size when I include the GPZDA message 2012-07-29 12:41:20 -05:00
James Cotton
24636eb5f4 Add a waypoint above home for the box pattern. 2012-07-28 22:55:59 -05:00
James Cotton
9bd49ded4f OSX Simulator - get model type correctly 2012-07-28 13:35:31 -05:00
James Cotton
f02aacfeb6 Change the constant so LED flashing works properly on Revo 2012-07-28 11:22:24 -05: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
221ae05ef6 Perform the update every cycle. Mag rate of 0.001 seems to work well. 2012-07-27 13:20:30 -05:00
James Cotton
abb0caa6bd Try a different mag nulling algorithm. 2012-07-27 13:14:18 -05:00
James Cotton
9f00eda1b4 Add the mag offset compensation into into the simulated sensor code 2012-07-26 21:00:30 -05:00
James Cotton
880d58e4d9 Changes to mag nulling from D-Lite. Perform update only when we have a new
vector sufficiently different from the previous one.
2012-07-26 20:38:16 -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
735c009843 Disable writing to the overo driver for every pios_com write again. It drives
up system consumption too much, although now data will get lost :(.
2012-07-25 13:15:47 -05:00
James Cotton
c587ceebfd Make the mag offset nulling convergence rate come from the UAVO. When it is
set to zero nulling does not occur to allow us to still calibrate the sensors.
2012-07-25 11:23:27 -05:00
James Cotton
3b57b492d0 Mag bias tracking seems to work 2012-07-25 11:19:39 -05:00
James Cotton
1a5af9dafb Remove some old debugging code 2012-07-25 11:10:10 -05:00
James Cotton
d1e6dcc2f0 First pass implementation of William Premerlani's magnetometer bias correction 2012-07-25 11:07:40 -05:00
James Cotton
36fcdcc107 Make PH use axis lock by default 2012-07-24 14:10:05 -05:00
James Cotton
30085d23ff Reenable sending from the overo tx method but no longer yield since we aren't
using a blocking write anyway.
2012-07-24 11:29:24 -05:00
James Cotton
6561b9b164 For now make it an error when GPS is enabled but missing. However, no warnings
when it's present.
2012-07-24 11:28:31 -05:00
James Cotton
a90dd1ef5c For now do not call PIOS_OVERO_WriteData from the Tx method because this is too
slow (task yield?) and results in a lot of event system errors.
2012-07-24 11:18:58 -05:00
James Cotton
e006ae2b4d Fix a really stupid bug where I ordered two cases together; 2012-07-24 11:07:40 -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
d75fef52ee Increase the overo event queue size to try and stop getting warnings. Only
allocate when using overosync.
2012-07-24 09:48:24 -05:00
Kenz Dale
8a5f4d40c5 Fix filtering rate for case where we have a baro sensor and a gps, but
have no current gps data.

Also fixed minor timing bug that allowed the GPS to be used too often
when our primary instrument is the baro airspeed sensor.
2012-07-24 15:16:52 +02:00
James Cotton
e2887ca7fe Add pios_struct_helper to PiOS.osx 2012-07-24 15:15:37 +02:00
Kenz Dale
a77a012586 Eliminated attitude sensor timeout warnings when in simulation mode. 2012-07-24 15:15:37 +02:00
Kenz Dale
aa5e5a9b01 Removed "airspeed" field from Airspeed UAVO. Now everything is done either with true airspeed or calibrated airspeed 2012-07-24 15:15:21 +02:00
James Cotton
92d975e668 Reduce the UAVTalk type mask to allow the top byte flag to indicate if there is
a timestamp
2012-07-24 03:44:35 -05:00
James Cotton
4809d569c0 Need to tell UAVTalk to expect a longer packet when it includes a timestamp 2012-07-24 03:44:03 -05:00
James Cotton
ea5c3be026 Need to add hooks in sendObject and receiveObject to actually transmit _TS objects 2012-07-24 02:57:51 -05:00
James Cotton
858c2cd512 Increase the size of the overo queue 2012-07-24 01:54:04 -05:00
James Cotton
617de9c68b Revert "Disable the FLASH_FREERTOS flag for revolution so that it doesn't try and use"
This reverts commit 7522bd07ba.
2012-07-24 01:49:53 -05:00
James Cotton
1f7345ef77 Dos2unix uavtalk files 2012-07-23 19:59:01 -05:00
James Cotton
13ff0dbb36 Add accessor method to get the time of the last timestamp to avoid breaking the
API
2012-07-23 19:44:07 -05:00
James Cotton
3137d5288b Add a message type flag (0x80) to UAVTalk which inserts a timestamp after the
previous header and the decoding to read this out.
2012-07-23 19:39:17 -05:00
James Cotton
26f07c21f6 Fix the pios_overo driver for compiling against the bootloader 2012-07-23 10:07:42 -05:00
James Cotton
8f8ae5bacb For revolution we MUST initialize teh GPS objects all the time or attitude will
fail
2012-07-23 10:01:32 -05:00
James Cotton
7522bd07ba Disable the FLASH_FREERTOS flag for revolution so that it doesn't try and use
vTaskDelay while erasing flash.
2012-07-23 09:42:53 -05:00
James Cotton
cf6b49535a Add pios_struct_helper to PiOS.osx 2012-07-23 09:19:28 -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
Kenz Dale
21527544f9 Fixed compile-time bugs in the case where airspeed module is compiled, but no drivers are present in pios_config. 2012-07-23 14:06:44 +02: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
Stacey Sheldon
f5db83bd20 Merge remote-tracking branch 'op-public/next' into revo-next
Conflicts:
	flight/Libraries/inc/NMEA.h
	flight/Modules/GPS/GPS.c
	flight/Modules/GPS/NMEA.c
	flight/Modules/GPS/UBX.c
	flight/Modules/GPS/inc/NMEA.h
	flight/Modules/GPS/inc/UBX.h
	flight/Modules/PathPlanner/inc/pathplanner.h
	flight/PiOS/STM32F10x/link_STM32103CB_PIPXTREME_sections.ld
	flight/Revolution/System/inc/pios_config.h
	flight/Revolution/UAVObjects.inc
	flight/SimPosix/UAVObjects.inc
	ground/openpilotgcs/src/plugins/hitlv2/aerosimrc/src/qdebughandler.h
	ground/openpilotgcs/src/plugins/uavobjects/uavobjects.pro
	shared/uavobjectdefinition/gpsvelocity.xml
2012-07-22 23:39:37 -04: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
d8e0cbc78f Make inadequate lock a warning instead of error/critical from GPS. This allows
flying indoors.
2012-07-22 02:17:58 -05:00
James Cotton
42501d6312 Merge branch 'nosave_while_armed' into revo 2012-07-22 02:13:25 -05:00
James Cotton
bcebced609 Merge branch 'revo_gps_merge' into revo 2012-07-22 01:21:50 -05: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
James Cotton
57a554f7ea Enable the GPS UBX/NMEA support 2012-07-22 01:17:29 -05:00
James Cotton
fa4adf1630 A few of the UBX types were missing a struct for the type. 2012-07-22 01:17:06 -05:00
James Cotton
9c512261e6 When in indoor mode reset the baro offset to zero 2012-07-22 01:02:14 -05:00
James Cotton
93faf131b0 Merge branch 'next' into revo
Conflicts:
	flight/Modules/GPS/GPS.c
	flight/Modules/GPS/NMEA.c
	flight/Modules/GPS/UBX.c
	flight/Modules/GPS/inc/NMEA.h
	flight/Modules/GPS/inc/UBX.h
	flight/Revolution/System/inc/pios_config.h
	flight/Revolution/UAVObjects.inc
	ground/openpilotgcs/src/plugins/uavobjects/uavobjects.pro
	ground/openpilotgcs/src/plugins/waypointeditor/waypointeditorplugin.h
	shared/uavobjectdefinition/gpsvelocity.xml
2012-07-22 00:43:19 -05:00
James Cotton
0c054a1e62 Speed up attitude loop on Revo to 666 Hz 2012-07-21 17:25:06 -05:00
James Cotton
5649813c2b Make sure to always compare BiasCorrectedRaw against its enum. Also reversed
the order of TRUE,FALSE in the definition to make it safer anyway.
2012-07-21 17:24:58 -05:00
James Cotton
d36663dbbd Treat the GyroBias UAVO like a state estimate of the actual gyro bias so now we
subtract that from the raw sensor readings to get the Gyros UAVO value
2012-07-21 15:14:45 -05:00
James Cotton
3e33bb49a2 EKF gyro bias into the object now working propely 2012-07-21 15:11:04 -05:00
James Cotton
02dfa7bd82 Change how the updated settings in attitude are changed to make it easier to
initialize them all
2012-07-21 14:31:14 -05:00
James Cotton
3f4706ad4c Make it a critical error when an invalid attitude algorithm is selected 2012-07-21 14:00:52 -05:00
James Cotton
69057a1373 No reason to get homeLocation every cycle 2012-07-21 13:57:25 -05:00
James Cotton
7cdf47c1d4 Make the sensors code only apply the GyroBias from the UAVO which is now coming
consistently only from the attitude module
2012-07-21 13:51:20 -05:00
James Cotton
e5bd999975 Process the settings updates more discretely in revo attitude 2012-07-21 13:50:16 -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
James Cotton
797a4def6a Do not use the data from the magnetometer if it contains NAN 2012-07-21 11:43:31 -05:00
Werner Backes
d4a401ce30 Removed Revolution specific code 2012-07-21 07:58:00 +02:00
James Cotton
c5904b4667 Clean up the pios_overo driver. Working well now. 2012-07-20 13:57:47 -05:00
James Cotton
bcdd5a8bba Fixes to the overo module where it was thinking the fifo buffer writes failed 2012-07-20 13:45:31 -05:00
James Cotton
5091b16065 Needs work but it's sending data now 2012-07-20 11:36:49 -05:00
James Cotton
88bb73f508 Fix the PIOS_OVERO dma IRQ configuration 2012-07-20 11:14:27 -05:00
James Cotton
337f0e8bfa Properly enable circular buffering on the overo spi 2012-07-20 10:59:18 -05:00
James Cotton
6a3c067c18 Zero out the packet counter when pios_over is initialized. 2012-07-20 10:45:20 -05:00
James Cotton
fb215fd095 PiOS overo driver wasn't setting it's id and also clearing the DMA IRQ flags 2012-07-20 10:17:57 -05:00
James Cotton
6b3e5573a0 The overosync module now uses pios_com interface. 2012-07-20 09:46:28 -05:00
James Cotton
8fc2d10ea6 Get the pios_overo driver for pios_com compiling 2012-07-20 09:32:22 -05:00
Kenz Dale
54b429e8ce Removed functionality in manualcontrol.c that changed path endpoints based on TX input.
This feature needs to be rethought, as there are many situations in which it does not work as intended and has unexpected behavior.
2012-07-20 14:21:02 +02:00
Kenz Dale
7a28c6e4de Merge branch 'revo-next' of ssh://git.openpilot.org/revo into revo-next 2012-07-20 13:10:57 +02:00
Kenz Dale
1d976b3095 dded support for multiple airspeed sources. Added GPS airspeed estimation. Extended BaroAirspeed UAVO. Added new AirspeedSettings UAVO. 2012-07-20 13:08:54 +02:00
Werner Backes
bcee75a270 Added comment to explain the gpsDataUpdated flag 2012-07-20 11:56:40 +02:00
James Cotton
1c4c373b86 Begin rewriting pios_overo to look like a standard com layer 2012-07-20 03:42:09 -05:00
James Cotton
3eb41d3ef2 When the systemmod callback happens exit if the operation is error or completed 2012-07-19 22:18:36 -05:00
James Cotton
27ad0fcf6f Don't allow the system to save while armed 2012-07-19 21:51:31 -05: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
Kenz Dale
bce7a04de8 Fixed typo. 2012-07-19 17:13:39 +02:00
James Cotton
7492d34d25 Merge branch 'overo_control' into revo 2012-07-19 08:35:39 -05:00
James Cotton
5ebd368b18 Merge branch 'next' into revo
Conflicts:
	flight/PiOS/STM32F10x/link_STM32103CB_PIPXTREME_sections.ld
2012-07-19 08:35:30 -05: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
4306afa841 Update the module and overosyncstats to track buffer underruns 2012-07-17 17:21:51 -05:00
James Cotton
2f64124da8 Updates to the pios_overo driver to fully reinit the dma and spi device between
packets
2012-07-17 17:21:28 -05:00
James Cotton
9c91436428 Clean up some cruft from Overo module and add a packet counter 2012-07-17 16:17:56 -05:00
James Cotton
db27653859 Make the Overo module use the new driver 2012-07-17 16:11:23 -05:00
James Cotton
a6ba379af9 PIOS_OVERO driver which handles the communications to the overo and ensures the
data stays in frame.
2012-07-17 15:34:54 -05:00
James Cotton
92a0311b32 New pios_overo driver that handles the SPI communications to the overo 2012-07-17 13:31:00 -05:00
James Cotton
bc075c5d2c Only schedule overo packets on the NSS line rising to avoid the frame sync
errors we were seeing previously
2012-07-17 11:45:45 -05:00
James Cotton
719772c98a Merge remote-tracking branch 'origin/Brian-PipXtreme-V2' into next 2012-07-16 11:42:29 -05:00
James Cotton
6b101d71af Merge remote-tracking branch 'origin/Brian-PipXtreme-V2' into revo 2012-07-15 12:32:35 -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
James Cotton
5f337afb36 Add a setting to determine when the overo module logs 2012-07-14 09:21:38 -05:00
James Cotton
9eee4f1bc7 Made OverSynce an optional module.
Conflicts:

	shared/uavobjectdefinition/hwsettings.xml
2012-07-14 09:07:22 -05:00
James Cotton
8d4e221412 Remove the disable IRQ commands in PIOS_COM since they aren't needed. 2012-07-13 11:54:12 -05:00
James Cotton
d150fd5331 Merge branch 'next' into revo
Conflicts:
	flight/Modules/ManualControl/manualcontrol.c
	ground/openpilotgcs/src/plugins/config/input.ui
	ground/openpilotgcs/src/plugins/uavtalk/telemetry.cpp
	shared/uavobjectdefinition/manualcontrolsettings.xml
2012-07-13 10:40:14 -05: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
54a161a3d4 Merge remote-tracking branch 'op-public/next' into revo-next
Conflicts:
	shared/uavobjectdefinition/manualcontrolsettings.xml
2012-07-08 18:14:09 -04:00
Laura Sebesta
cfb8e72679 Improved battery module to fully support regeneration. Fixed bug in builtin battery module. Improved ADC routing names. 2012-07-08 23:13:05 +02:00
Laura Sebesta
0a34b786a9 Modified pios_adc.c to remove race condition by which the ADC value was reset to 0. 2012-07-08 22:23:05 +02:00
Laura Sebesta
4f20a0f9a1 Added drivers for analog airspeed sensors: MPXV5004 and MPXV7002. 2012-07-08 21:46:59 +02:00
Laura Sebesta
bc5e428bfe Several small changes to OSX simulator.
*Changed .gitignore to ignore OSXSIM build files
*Added SIMOSX define
*Changed tcp and udp ports to be consistent with SIMPOSIX.
2012-07-08 14:26:08 +02:00
Laura Sebesta
a98991d8a1 Created ADC routing UAVO. This allows to direct ADC inputs to various modules.
Tested and works on FlightBattery, currently the only module using the ADC.
2012-07-08 13:16:05 +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
Laura Sebesta
54f3fbf226 Made OverSynce an optional module. 2012-07-07 11:53:58 +02: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
James Cotton
33beafed27 Remove outdated alarm for sdcard in systemmod. Only affected simulation. 2012-07-03 10:53:10 +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
James Cotton
c9bf5f5d06 Merge branch 'next' into revo 2012-07-01 14:44:22 +02: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
James Cotton
cd311642dd Merge branch 'next' into revo 2012-06-28 10:35:47 +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
Stacey Sheldon
f475088585 Merge remote-tracking branch 'op-public/next' into revo-next 2012-06-20 22:45:41 -04:00
Laura Sebesta
87900043a4 Typo fix. Grammarians will be extreamely glad to complement the OP team now that these errors haved disappeared. 2012-06-17 10:21:58 +03:00
Brian Webb
005ba0f8c8 Added erase pipx settings to PipX firmware (no GCS support yet). 2012-06-16 19:19:23 -07:00