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

1047 Commits

Author SHA1 Message Date
James Cotton
61ff335eaa RFM22: No need to poll the ISR from two tasks in radio.c 2012-09-02 22:44:58 -05:00
Brian Webb
27fedee3d3 Just return an initialization failure in the radio module when the RFM22B fails to initialize rather than asserting.
Signed-off-by: James Cotton <peabody124@gmail.com>
2012-09-01 19:15:13 -05:00
James Cotton
d9ec6454c2 PipX: Since we are calling the PipX ISR from user space looks ensure the frequency stays correct.
Previously it was polling too fast and the PipXStatus was incorrect as a result.  Now make
sure the stats loop only runs at 500 ms.
2012-09-01 19:13:11 -05:00
James Cotton
c9f66f5145 Merge branch 'revo' into revo-mini
Conflicts:
	androidgcs/AndroidManifest.xml
	androidgcs/res/layout/gcs_home.xml
	androidgcs/res/values/strings.xml
	androidgcs/src/org/openpilot/androidgcs/AttitudeView.java
	androidgcs/src/org/openpilot/androidgcs/HomePage.java
	flight/PipXtreme/System/pios_board.c
	ground/openpilotgcs/src/plugins/uavobjectwidgetutils/configtaskwidget.cpp
	shared/uavobjectdefinition/taskinfo.xml
2012-09-01 16:57:27 -05:00
James Cotton
6bfb2a5e45 Merge branch 'next' into revo
Conflicts:
	ground/openpilotgcs/src/libs/opmapcontrol/src/mapwidget/mapgraphicitem.cpp
	ground/openpilotgcs/src/libs/opmapcontrol/src/mapwidget/mapripper.cpp
	ground/openpilotgcs/src/libs/opmapcontrol/src/mapwidget/waypointitem.cpp
	ground/openpilotgcs/src/libs/opmapcontrol/src/mapwidget/waypointitem.h
	ground/openpilotgcs/src/libs/utils/coordinateconversions.cpp
	ground/openpilotgcs/src/libs/utils/coordinateconversions.h
	ground/openpilotgcs/src/plugins/opmap/opmap.pro
	ground/openpilotgcs/src/plugins/opmap/opmapgadgetwidget.cpp
	ground/openpilotgcs/src/plugins/opmap/opmapgadgetwidget.h
	ground/openpilotgcs/src/plugins/uavobjectwidgetutils/configtaskwidget.cpp
	shared/uavobjectdefinition/taskinfo.xml
	shared/uavobjectdefinition/waypoint.xml
2012-09-01 16:18:03 -05:00
James Cotton
f3327e3993 RM: Enabled optional modules and got the battery module working again.
Changed the hardcoded (ick) battery lines for RM.  Also removed the reference
to PIOS_ADC_GetPin(4) as that pin is no longer available.  Finally
changed the default FlightBatterySettings to work out of the box
for the standard recommended sensors.
2012-09-01 11:03:32 -05:00
Brian Webb
6b3934576a Fixed configuration of PipX com port as UAVTalk. 2012-08-26 11:18:23 -05:00
James Cotton
042055b29a RFM22b: Call the pendingISR routine from all the user space tasks. Got a valid connection with this. 2012-08-26 04:18:17 -05:00
James Cotton
477385ca25 RFM22b: Start to move the ISR into userspace 2012-08-26 02:41:19 -05:00
James Cotton
a7b5fcd77c Monitor the radio threads 2012-08-25 18:48:30 -05:00
James Cotton
81ddbda972 Sensors: Scope some variables to suppress warnings 2012-08-25 17:30:04 -05:00
James Cotton
daad1d6f8f Sensors: Scope some variables to suppress warnings 2012-08-25 17:12:37 -05:00
James Cotton
982750a58f Merge remote-tracking branch 'revo/brian/revo_link' into revo-mini
Conflicts:
	ground/openpilotgcs/src/plugins/plugins.pro
2012-08-25 15:05:47 -05:00
James Cotton
5c34412200 Merge remote-tracking branch 'revo/amorale/revolution_baro_fixes' into revo-mini 2012-08-25 14:55:10 -05:00
Brian Webb
b3dc617702 Fixed PPM output from updated RadioComBridge module. 2012-08-25 12:52:06 -07:00
James Cotton
c5fda8208b TOFIX: For now hardcode a reversed orientation of MPU6000 for RevoMini 2012-08-25 14:41:03 -05:00
Brian Webb
e602b73a6f Split out the PipX radio interface from RadioComBridge module to a separate Radio module. Now the RadioComBridge module just routes messages between the com ports and handles sending/receiving the PipX UAVOs.
Conflicts:

	flight/Modules/RadioComBridge/RadioComBridge.c
	flight/PipXtreme/System/pios_board.c

Conflicts:

	flight/Modules/RadioComBridge/RadioComBridge.c
2012-08-25 12:29:02 -07:00
James Cotton
0decce582b Got all the sensors reading 2012-08-25 14:19:15 -05:00
Stacey Sheldon
e7bf1db165 Revert "Removed Revolution specific code"
This reverts commit d4a401ce30.
2012-08-25 14:57:16 -04:00
Brian Webb
415b86879c Added the RFM22B driver to the Revo to support an RFM22B radio on the external SPI port. 2012-08-25 11:45:43 -07:00
Brian Webb
fad32dcc29 Split out the PipX radio interface from RadioComBridge module to a separate Radio module. Now the RadioComBridge module just routes messages between the com ports and handles sending/receiving the PipX UAVOs. 2012-08-25 11:41:32 -07:00
a*morale
c696cccff8 Added an option to be able to change the interleave between Pressure and Temperature conversion for the MS5611
To enable this option define the PIOS_MS5611_SLOW_TEMP_RATE with the number of Pressure conversion for each Temperature conversion.
2012-08-25 13:04:41 +02:00
James Cotton
59d1367d37 Autotuning: Make the output also follow the hysteresis output 2012-08-24 22:45:45 -05:00
James Cotton
a3f1894cd7 Autotuning: Make the estimator require the value to toggle above and below the hysteresis level. 2012-08-24 21:33:08 -05:00
James Cotton
8babe5d8a4 Autotuning: Increase the measurement time to 30 seconds. 2012-08-24 21:32:11 -05:00
Laura Sebesta
f2ffd1fb99 Changed DIAGNOSTICS flag to be individual to each module instead of global.
The upshot is the stack usage monitor can be turned on at a lower RAM threshold.
2012-08-24 12:04:05 +02: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
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
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
29ab1d8cf3 actuator: factor out settings updates from main loop 2012-08-11 19:46:00 -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
James Cotton
06a6e367b0 Merge remote-tracking branch 'origin/hyper/OP-661' into next 2012-08-08 13:49:48 -05: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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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