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

4380 Commits

Author SHA1 Message Date
James Cotton
acfb28b04b Heli configuration: Make swashplate leveling routine using static accessor
methods.  Also got rid of incredibly annoying message when you tried to alt-tab
out of GCS.
2011-09-04 23:08:35 -05:00
James Cotton
a81f14a575 CCPM config: Fix the collective pass through mode for multi receiver support.
Now the user must configure Accessory# in the input configuration section
though.
2011-09-04 23:08:34 -05:00
James Cotton
6344bc8f83 Fix encoding no configccpmwidget.cpp 2011-09-04 23:08:34 -05:00
Stacey Sheldon
1e9bcf8426 openpilot: fix merge of unidirectional gps feature branch 2011-09-04 23:22:29 -04:00
James Cotton
fa33c66f23 OP-553 StabilizationSettings: Change default max roll/pitch to 55 degrees from
35 degrees.  I hope this doesn't make it too sensitive for any of the
beginngers.
2011-09-04 13:34:49 -05:00
James Cotton
b1e0366525 Merge remote-tracking branch 'origin/CorvusCorax_unidirectional-GPS-com' into next
Conflicts:
	flight/OpenPilot/System/pios_board.c
2011-09-04 13:33:52 -05:00
James Cotton
82c5f9f0f4 PIOS_RCVR: Document return values better and use enum for them 2011-09-04 12:37:39 -05:00
James Cotton
533ae9bb41 SBUS: Missed handling the S.Bus failsafe. Now returns PIOS_RVCR_TIMEOUT for
either SBus failsafe mode or when no data for 100 ms.
2011-09-04 12:15:34 -05:00
James Cotton
5e2a36aa03 Merge branch 'stac/allocate-device-instances-from-heap' into next 2011-09-04 12:03:42 -05:00
James Cotton
510a1760ca When disconnected set any accessory channels to neutral. Otherwise the
actuator module could keep the pitch at high.  However the "right" thing to do
seems very specific.  For example negative pitch is probably preferable.
2011-09-04 03:45:36 -05:00
James Cotton
89e640ae7f Make sure all receiver drivers return correct constants for invalid channels. 2011-09-04 01:24:16 -05:00
James Cotton
51967ae63f OP-571 PIOS_PWM: Add back the PWM supervisor 2011-09-04 01:17:40 -05:00
James Cotton
20de046292 Force system to be disarmed when a bad configuration is present 2011-09-04 00:43:33 -05:00
James Cotton
d3de8ff0ef OP-559: Process the arm status when disconnect and allow it to timeout and
disarm
2011-09-03 23:57:51 -05:00
James Cotton
697dbf4f5f OP-568 PIOS_RCVR: Standardize the values that are returned from the PIOS_RCVR and make
them symbolic constants.
- A timeout is 0
- A missing driver is 65534
- An invalid channel is 65535

ManualControl: Make it deal with the values explicitly.  A timed out value
should not be treated like a minimum duration signal.  Instead it does not
updated the scaled value but marks the data window as invalid to trigger the
failsafe.
2011-09-03 23:50:56 -05:00
James Cotton
d28f0c4c78 GCS Config Stabilization: Increase maximum rate that can be entered to 500
deg/s from 300 deg/s for heli people.
2011-09-03 21:25:27 -05:00
James Cotton
e18288085c OP-390 Make the object saving throw an error message on save failures. 2011-09-03 21:25:20 -05:00
James Cotton
1de58ebb87 Make scope gadget check if object exists before using it. Avoids segfaults
when scoped objects disappear.
2011-09-03 21:24:13 -05:00
Mathieu Rondonneau
ae1dd945b1 Fix win32 sim macro problem
This is to get the macro in pios.win32 in sync with sim posix and
real flight.
2011-09-01 21:50:13 -04:00
Stacey Sheldon
43b31efb76 pios: allocate driver instance data from heap
Allocate per-instance data for drivers from the heap
rather than as static variables from the .data segment.

This converts > 800 bytes of RAM from being always consumed
as static data into being allocated from the heap only when
a particular feature is enabled in the hwsettings object.

A minimal config (no receivers, flexi port disabled, main port
disabled) leaves 2448 bytes of free heap.  That's our new baseline.

Approximate RAM (heap) costs of enabling various features:
 + 632 Serial Telemetry (includes 400 bytes of Rx/Tx buffers)
 + 108 PWM Rcvr
 + 152 PPM Rcvr
 + 112 Spektrum Rcvr
 + 24  S.Bus (Should be closer to 68 since driver is still using
              static memory)

There are still some drivers that pre-allocate all of their memory
as static data.  It'll take some work to convert those over to
dynamically allocating their instance data.
2011-08-31 22:35:03 -04:00
Stacey Sheldon
86ce79af1d openpilot: fix compile error on OP 2011-08-31 21:43:57 -04:00
dankers
320892f2b5 Add Corvus' Retrun to base (Fixed Wing) Milestone. 2011-08-29 21:10:35 +10:00
dankers
0c0a123e0f Tidy up, thanks to Ligi for spotting the errors. 2011-08-29 00:37:10 +10:00
Stacey Sheldon
2f86e4dd4f Make PWM/PPM and Servo drivers play nicely together
PWM and PPM can now coexist in the same load and be
selected at boot time via the hwsettings UAVObject.

This is basically a complete restructuring of the
way the drivers interact with the TIM peripheral in
the STM32.

As a side effect, the PWM and PPM drivers are now
ready to support multiple instances of each.

This also provides the first step toward being able
to reassign some of the PWM input pins to be servo
output pins.  Still more work required, but this is
a good start.
2011-08-27 21:39:56 -04:00
Stacey Sheldon
b3c43da90a stdperiph: Make TIM related APIs use const pointers
This allows the configuration parameters to be stored in
flash instead of copied to RAM.
2011-08-27 21:39:17 -04:00
Stacey Sheldon
a72c657e21 rcvr activity: Speed up activity acquisition
Activity detection logic can now move through
the active receivers more quickly.
2011-08-27 20:17:56 -04:00
James Cotton
6514fd95c7 Also initialize the ReceiverActivity object in manual control 2011-08-27 16:08:57 -05:00
James Cotton
c5746335c6 Initialize GCSReceiver object if it is being used 2011-08-27 15:57:09 -05:00
James Cotton
dc340596f5 Merge branch 'next' into GCS_ChangesToUI-RuntimeCFG
Conflicts:
	flight/CopterControl/Makefile
	flight/OpenPilot/System/pios_board.c
	flight/OpenPilot/UAVObjects.inc
	flight/PiOS/STM32F10x/pios_spektrum.c
	ground/openpilotgcs/src/plugins/config/config.pro
	ground/openpilotgcs/src/plugins/config/configgadget.qrc
	ground/openpilotgcs/src/plugins/uavobjects/uavobjects.pro
	shared/uavobjectdefinition/hwsettings.xml
2011-08-27 15:26:05 -05:00
Stacey Sheldon
f29b99521e openocd: collapse JTAG rules for STM32F1 and STM32F2 2011-08-27 10:43:02 -04:00
Stacey Sheldon
8198cc881f openocd: upgrade to 0.5.0
Upgrade is needed to support STM32F2 chip on the new boards.

Use 'openocd_install' to download/build the new version
on Linux.
2011-08-27 10:41:53 -04:00
Stacey Sheldon
5a51077493 openocd: add support for RTOS autodetection
This allows things like 'info threads' to work in gdb when
combined with openocd 0.5.0+.
2011-08-27 10:38:50 -04:00
Stacey Sheldon
89d23df8cd openocd: Add default config for stm32f2x
Pulled from origin/james/ins.
2011-08-27 10:37:20 -04:00
Stacey Sheldon
3d22258843 Merge remote branch 'origin/james/openocd' into upgrade-to-openocd-0.5.0 2011-08-27 09:19:46 -04:00
James Cotton
1d77d77832 Merge branch 'stac/use-malloc-failed-hook' into next 2011-08-27 00:24:13 -05:00
James Cotton
274333a9bf Merge branch 'next' into stac/use-malloc-failed-hook 2011-08-27 00:12:45 -05:00
James Cotton
55f64802d1 Also enable malloc error catching on OpenPilot 2011-08-27 00:12:16 -05:00
Corvus Corax
0065842de7 Makefiles: fixed comment line 2011-08-25 16:28:34 +02:00
Corvus Corax
658ae3f809 Modules/System: removed comment line 2011-08-25 16:26:46 +02: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
3690586f3a Optional Modules: Forced re-generation of mod init.h when makefile has changed 2011-08-25 15:42:11 +02:00
Corvus Corax
1d797bf004 Fixed error introduced by merge 2011-08-25 15:40:45 +02:00
Corvus Corax
c63a10d05e CopterControl: Fix GPS buffer sizes 2011-08-25 15:37:38 +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
8b7fea0d19 Merge branch 'OP-567 GPS com layer fix' into next 2011-08-25 13:35:49 +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