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

63 Commits

Author SHA1 Message Date
Stacey Sheldon
5aa3777078 Merge remote-tracking branch 'op-public/next' into revo-next
Conflicts:
	flight/Modules/Telemetry/telemetry.c
	ground/openpilotgcs/src/plugins/uavobjects/uavobjects.pro
2012-10-30 00:41:35 -04:00
Stacey Sheldon
2119067722 Merge remote-tracking branch 'op-revo/james/revo' into revo-next
Conflicts:
	Makefile
	flight/Modules/Attitude/revolution/attitude.c
	flight/Modules/Battery/battery.c
	flight/Modules/FixedWingPathFollower/fixedwingpathfollower.c
	flight/Modules/GPS/GPS.c
	flight/Modules/ManualControl/inc/manualcontrol.h
	flight/Modules/ManualControl/manualcontrol.c
	flight/Modules/OveroSync/overosync.c
	flight/Modules/PathPlanner/inc/pathplanner.h
	flight/Modules/PathPlanner/pathplanner.c
	flight/Modules/Sensors/sensors.c
	flight/Modules/VtolPathFollower/vtolpathfollower.c
	flight/PiOS/Boards/STM32F4xx_Revolution.h
	flight/PiOS/Boards/pios_board.h
	flight/PiOS/STM32F4xx/library.mk
	flight/PiOS/inc/pios_hmc5883.h
	flight/PiOS/inc/pios_l3gd20.h
	flight/PiOS/inc/pios_rfm22b_priv.h
	flight/Revolution/Makefile
	flight/Revolution/Makefile.osx
	flight/Revolution/System/inc/pios_config.h
	flight/Revolution/UAVObjects.inc
	ground/openpilotgcs/src/libs/utils/coordinateconversions.cpp
	ground/openpilotgcs/src/libs/utils/homelocationutil.cpp
	ground/openpilotgcs/src/libs/utils/homelocationutil.h
	ground/openpilotgcs/src/plugins/config/configrevowidget.cpp
	ground/openpilotgcs/src/plugins/hitlnew/il2simulator.cpp
	ground/openpilotgcs/src/plugins/opmap/opmapgadgetwidget.cpp
	ground/openpilotgcs/src/plugins/plugins.pro
	ground/openpilotgcs/src/plugins/uavobjects/uavobjects.pro
	package/Makefile
	shared/uavobjectdefinition/fixedwingpathfollowersettings.xml
	shared/uavobjectdefinition/fixedwingpathfollowerstatus.xml
	shared/uavobjectdefinition/flightstatus.xml
	shared/uavobjectdefinition/hwsettings.xml
	shared/uavobjectdefinition/manualcontrolsettings.xml
	shared/uavobjectdefinition/pathdesired.xml
	shared/uavobjectdefinition/vtolpathfollowersettings.xml
	shared/uavobjectdefinition/waypoint.xml
2012-10-30 00:08:43 -04:00
Kenz Dale
1ab1ea5899 Save ~150 bytes by moving GPSDataProtocol to SystemSettings.
All credit to Anstron.
2012-10-22 16:47:22 +02:00
Stacey Sheldon
e7bf1db165 Revert "Removed Revolution specific code"
This reverts commit d4a401ce30.
2012-08-25 14:57:16 -04:00
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
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
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
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
d8e0cbc78f Make inadequate lock a warning instead of error/critical from GPS. This allows
flying indoors.
2012-07-22 02:17:58 -05:00
Werner Backes
d4a401ce30 Removed Revolution specific code 2012-07-21 07:58:00 +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
926e3d93b7 Removed unused variables 2012-07-19 20:14:51 +02: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
e6f62f5806 Deleted commented-out code 2012-07-13 13:22:27 +02:00
Werner Backes
57dc9e6d39 Removed ECEF calculation from SetHomeLocation. 2012-07-11 23:53:34 +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
d0b7dc0012 Added some pieces that had been lost during rebase 2012-07-10 16:38:00 +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
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
James Cotton
bb0bfe0ae4 Merge branch 'next' into revolution3
Conflicts:
	flight/Bootloaders/CopterControl/Makefile
	flight/Bootloaders/PipXtreme/Makefile
	flight/Bootloaders/Revolution/inc/pios_config.h
	flight/CopterControl/Makefile
	flight/INS/inc/pios_config.h
	flight/Libraries/taskmonitor.c
	flight/Modules/Altitude/altitude.c
	flight/Modules/Attitude/attitude.c
	flight/OpenPilot/Makefile
	flight/OpenPilot/Makefile.posix
	flight/OpenPilot/System/inc/pios_usb_board_data.h
	flight/OpenPilot/System/inc/taskmonitor.h
	flight/OpenPilot/System/pios_board.c
	flight/OpenPilot/System/taskmonitor.c
	flight/PiOS/Boards/STM32F4xx_Revolution.h
	flight/PiOS/STM32F4xx/pios_bmp085.c
	flight/PiOS/STM32F4xx/pios_iap.c
	flight/PiOS/pios.h
	flight/Revolution/System/inc/pios_config.h
	flight/Revolution/System/inc/taskmonitor.h
	flight/Revolution/System/taskmonitor.c
	ground/openpilotgcs/src/plugins/serialconnection/serialplugin.cpp
	shared/uavobjectdefinition/systemalarms.xml
	shared/uavobjectdefinition/taskinfo.xml
2012-01-21 11:27:03 -06:00
Stacey Sheldon
27ceb7ea92 modules: Allow optional modules to be used as built-in
Some modules are written such that they can be included
or excluded at runtime.  These are added to the OPTMODULES
list in the makefile for a given board.

This change provides a mechanism to allow a build to force
a given module to be built-in (ie. always initialized)
regardless of the configuration in hwsettings.

The main use case for this is to handle a module being optional
on one platform but essential on another.

All modules added to the MODULES list in the Makefile will
automatically result in a matching #define in the form
  MODULE_TheModuleName_BUILTIN
being defined in the CFLAGS for all compiled source.

Note that the capitalization of TheModuleName must match
exactly the capitalization used in the MODULES list.
2012-01-14 16:55:55 -05:00
James Cotton
43fa9e702e Move DSM to Flexiport and enable GPS on GPS port. Currently GPS module locks
up though.
2011-11-28 09:11:13 -06:00
Oleg Semyonov
4a99ec3298 code style: move variable into function and free 1 byte of RAM :-)
component     free heap used
    ----------------------------
    Nothing            2560    -
    PWM                2432  128
    PPM                2408  152
    DSM                2464   96
    S.Bus              2448  112
    GPS (port only)    2368  192
    GPS (port+module)  1312 1248
    CameraStab         2096  464
    Telemetry          1928  632
2011-11-13 18:27:52 +02:00
James Cotton
b110e9c549 Style suggestions to cleanup GPS from Stac 2011-11-12 21:31:01 -06:00
Corvus Corax
61ecc0d310 make optional modules check themselves if they should start or not 2011-11-11 11:39:57 +01:00
Corvus Corax
9679638244 Revert "Modules/GPS: removed comment line"
This reverts commit 109a58ef30.
2011-11-11 11:07:02 +01:00
Oleg Semyonov
a8b36ddd28 HwSettings: disable GPS and telemetry port speed updates at run-time
This is to be consistent across the HwSettings object fields which are
read on boot only by convention.
2011-10-31 23:04:17 +02:00
Oleg Semyonov
7800fbe6de gps: initialize GPS UAVO and start GPS module only if port is configured 2011-09-29 00:41:51 +03:00
Oleg Semyonov
a38c569cd0 HwSettings: move Telemetry and add GPS port speed to the HwSettings object
TelemetrySettings object removed (saved 200+ bytes of RAM). Telemetry
port speed moved to the HwSettings object. Added GPS port speed setting.
GCS code updated to reflect changes and support both fields.
2011-09-28 22:11:42 +03:00
Corvus Corax
109a58ef30 Modules/GPS: removed comment line 2011-08-25 16:25:19 +02:00
Corvus Corax
8173c7b7c6 Refactor GPS_PURISTIC into GPS_MINIMAL 2011-08-25 15:44:49 +02:00
Corvus Corax
1d797bf004 Fixed error introduced by merge 2011-08-25 15:40:45 +02:00
Corvus Corax
4bd72923e5 Merge branch 'CorvusCorax_unidirectional-GPS-com' into CC_GPS
Conflicts:
	flight/Modules/GPS/GPS.c
	flight/Modules/GPS/GTOP_BIN.c
	flight/Modules/GPS/NMEA.c
	shared/uavobjectdefinition/hwsettings.xml
2011-08-25 15:33:23 +02:00
Corvus Corax
54ecf233f3 Modules/PS: typo fix 2011-08-25 15:13:50 +02:00
Corvus Corax
7e396efbbf Modules/GPS: Assert buffer creation 2011-08-25 15:11:29 +02:00
Corvus Corax
dfdea16065 Modules/GPS: Make GPS COM unidirectional (rx only) and use smaller, runtime allocated heap buffers 2011-08-25 14:46:30 +02:00
Corvus Corax
697ac6067e OP-567 Modules/GPS: Block in PIOS_COM, not in TaskDelay - or we will miss updates! 2011-08-25 13:33:41 +02:00
Corvus Corax
838149b53f GPS: homelocation init is optional, satellites must be initialized 2011-08-21 18:20:33 +02:00
Corvus Corax
53d0732fc6 Enable GPS module as "optional module" in CooterControl 2011-08-20 01:25:49 +02:00
James Cotton
ab7e57ad2b Initialize objects for guidance in the correct place. Init some objects in
pios_board_posix since AHRSComms not around.
2011-08-19 09:52:05 -05:00
James Cotton
2e5a36a4db Merge branch 'stac/refactor-usart-com' into camera_stabilization 2011-07-30 10:55:16 +09:00
James Cotton
96c2d24253 Merge branch 'next' into camera_stabilization
Conflicts:
	flight/CopterControl/Makefile
	flight/CopterControl/System/coptercontrol.c
	flight/Modules/Actuator/actuator.c
	flight/Modules/GPS/GPS.c
	flight/Modules/ManualControl/manualcontrol.c
	flight/Modules/Stabilization/stabilization.c
	flight/Modules/System/systemmod.c
	shared/uavobjectdefinition/manualcontrolsettings.xml
	shared/uavobjectdefinition/stabilizationdesired.xml
2011-07-30 10:06:10 +09:00
Stacey Sheldon
5f8760a55c com: Move buffering out of USART/HID layer and into COM layer
This allows the spektrum and sbus receiver drivers to bind
directly to the usart layer using a properly exported API
rather than overriding the interrupt handler.

Bytes are now pushed directly from the usart layer into the
com layer without any buffering.  The com layer performs all
of the buffering.

A further benefit from this approach is that we can put all
blocking/non-blocking behaviour into the COM layer and not
in the underlying drivers.

Misc related changes:
 - Remove obsolete .handler field from irq configs
 - Adapt all users of PIOS_COM_* functions to new API
 - Fixup callers of PIOS_USB_HID_Init()
2011-07-27 19:45:38 -04:00
Mathieu Rondonneau
612a439199 OP-423: simplify the MODULE_INITCALL macro and remove the ordering loops 2011-07-12 20:44:32 -07:00
Mathieu Rondonneau
9b9b5a1367 OP-423: remove ';' at the end of macro 2011-07-05 19:44:54 -07:00
Mathieu Rondonneau
de55c56427 OP-423: Change capital on macro to be uppercase for consistency. 2011-06-24 22:03:03 -07:00
Mathieu Rondonneau
fc1e3f574c OP-423: Split task create and module init in order to postpone task creation once the full heap is available.
Also implement some ordering (quite ugly still) in the module init and task creation order so we can decide which module to start/init first
and which module to start/init last.
This will be replaced/adapter with the uavobject list later (once it's implemented).
reserving some space for module init and task create parameters to customize module/task creation (this will be usefull once we get the list and customization from customer).

Changes have been made for OP and CC. Tested comped with CC,OP, sim_posix.
Only ran on bench with CC for couple of minutes (code increase expected but no dropping of stack which is good).

This gives task creation at the time wherethe all heap is available.
2011-06-19 22:35:40 -07:00
James Cotton
5044ea36de Start initializing objects in the modules that consume them. Shouldn't affect
OP yet but not tested.
2011-06-18 14:20:51 -05:00
Mathieu Rondonneau
65cf467ca4 OP-423: move the module initialize funtion into a specific section for OP and CC.
- create linker section for those <module>Initialize()
- later this list will incorporate parameters as well. (this probably will be more a OP feature to swap/remove/delete module on the fly.
- this is not done at compile time anymore by Makefile.
- this will allow us to have control on the module start at run-time (not implemented but build the ground for it).
- this simplify the startup (Part of code re-org).
- this change does not affect sim_posix and win32 (since they don't need that)
- ensure it's compiling for PiOS.posix
- port to PiOS.win32 but not tested (not compiled)
- tested on CC
- compile on OP.
- this free ~200 bytes.
- current avalable bytes (is we keep the same remaining bytes on the stack than before) is easily passed the 1.2Ko mark on CC with new gcc (4.5.2)
- this does not include init-reorg for each module (I still think more can be freed)
2011-06-16 22:13:19 -07:00
James Cotton
3d5244c4b8 Fix small typo THRSHOLD to THRESHOLD in gps.c 2011-05-12 18:57:16 -05:00