Alessio Morale
4791f690ad
OP-848 Move the handling of the UAVO configuration outside of the PiOS layer
...
a configuration helper header has been added to eliminate a lot of boilerplate code in *pios_board.c
2013-03-03 21:17:02 +01:00
Alessio Morale
3986f93e68
op-848 Splitted sample rate divider configuration for dlp and non_dlp settings (1kHz vs 8kHz sample rate).
...
Minor clean up, used constants in place of some hardcoded values
2013-02-17 12:20:25 +01:00
Alessio Morale
e27a07631e
op-848 MPU6000 support user configurabe accel/gyro scales and filter bandwidth.
...
board definitions can override any of this settings for special applications.
Also include cleanup from "magic numbers" and fix for inverted ranges
2013-02-17 02:02:12 +01:00
Oleg Semyonov
aea1b4b544
Merge remote-tracking branch 'origin/os/OP-775_arm-dsplib' into next
2013-02-16 16:08:31 +02:00
Brian Webb
6de2252c23
OP-814: Added PPM input on the FlexiPort for CC/CC3D.
2013-02-08 01:06:41 +00:00
Oleg Semyonov
97436166e3
Merge remote-tracking branch 'origin/next' into os/OP-775_arm-dsplib
2013-02-06 12:55:14 +02:00
Alessio Morale
153db89663
OP-815 changed PIOS_WDG_RegisterFlag to reset the WDG to prevent timeouts during module initialization
2013-02-01 20:05:44 +01:00
Alessio Morale
ad6d071e52
OP-815 Coptercontrol hang on startupd due to WDG timeout
2013-01-20 16:20:49 +01:00
Alessio Morale
f293298118
Merge remote-tracking branch 'origin/revo-fixes' into amorale/revo-merge
...
Conflicts:
flight/Modules/ManualControl/manualcontrol.c
make/scripts/version-info.py
package/Makefile.linux
2013-01-19 20:23:48 +01:00
Oleg Semyonov
c18cba4dda
[OP-775] Provide options to enable DSP library when needed
2012-12-30 21:53:37 +02:00
Oleg Semyonov
89cb49733e
[OP-775] Use new core_cm3.h
2012-12-30 21:53:34 +02:00
Oleg Semyonov
333d0fe8c9
[OP-775] Consistently use PIOSCOMMONLIB
2012-12-30 21:53:32 +02:00
Oleg Semyonov
79a949e1ca
[OP-775] Fix Makefile variables (CDEFS, EXTRAINCDIRS, EXTRA_LIBDIRS, EXTRA_LIBS, PYTHON)
2012-12-30 21:53:31 +02:00
Oleg Semyonov
2328469e71
[OP-775] Update link template and makefiles to include optional $(ALLLIB) depenencies
2012-12-30 21:53:24 +02:00
Alessio Morale
f93a9affa9
Fixed comment on coptercontrol's pios_board.c OP-780
2012-12-29 17:20:50 +01:00
Oleg Semyonov
8f5fb5aeb0
[OP-724] Add camera gimbal filtering and feed forward options
...
This is a partial rework of Cossacs' camera gimbal software.
This patch adds LPF to airframe attitude used for camera stabilisation
and feed forward for camera actuators. Either of options can be
disabled on the compilation level to save flash and RAM if not
required.
Original Cossacs' code was optimized and code flow shortcuts were
added where applicable.
2012-11-29 17:39:08 +02:00
Oleg Semyonov
ee333f1569
[OP-724] Add manual control input filtering (useful for camera gimbal)
...
This is a partial rework of Cossacs' camera gimbal software.
This patch adds LPF to some of manual control inputs. Mostly
useful are accessory channels (for camera gimbal control) and
yaw channel (for smooth filming). The code may be used for
stand-alone CC[3D]-based gimbal software, but also should work
for complete FC+camera system.
2012-11-29 17:39:07 +02:00
a*morale
2d83e8a779
Fixes for SBUS support on RM2.
...
Note: it needs the RTC timing to be fixed as it seems that it runs at half its nominal 625Hz value
2012-11-23 19:41:23 +01:00
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
127ca1e7e1
Merge remote-tracking branch 'op-public/next' into revo-next
...
Conflicts:
ground/openpilotgcs/src/plugins/hitl/plugin.pro
ground/openpilotgcs/src/plugins/hitlnew/fgsimulator.cpp
ground/openpilotgcs/src/plugins/hitlnew/hitlconfiguration.cpp
ground/openpilotgcs/src/plugins/hitlnew/hitloptionspage.cpp
ground/openpilotgcs/src/plugins/hitlnew/hitloptionspage.ui
ground/openpilotgcs/src/plugins/hitlnew/il2simulator.cpp
ground/openpilotgcs/src/plugins/hitlnew/simulator.cpp
ground/openpilotgcs/src/plugins/hitlnew/simulator.h
ground/openpilotgcs/src/plugins/hitlnew/xplanesimulator.cpp
ground/openpilotgcs/src/plugins/uavobjects/uavobjects.pro
2012-10-20 13:56:18 -04:00
James Cotton
96afe7cffd
Merge remote-tracking branch 'origin/stac/add-debug-consoles' into next
2012-10-12 08:07:44 -05:00
Stacey Sheldon
f0e0c2e79e
console: add debug console via USB CDC/VCP interface
...
The USB VCP Port has a new DebugConsole setting that
routes all output destined for PIOS_COM_DEBUG to the
emulated serial port.
To enable this in your build, you'll have to build like:
- make fw_coptercontrol_clean
- make fw_coptercontrol ENABLE_DEBUG_CONSOLE=YES
You can then output formatted text to the console
like this:
#if defined(PIOS_INCLUDE_DEBUG_CONSOLE)
PIOS_COM_SendFormattedString(PIOS_COM_DEBUG,
"foo is %u\r\n",
foo);
#endif /* PIOS_INCLUDE_DEBUG_CONSOLE */
Please ensure that all of your debug output is
wrapped with these macros so that your debug
code doesn't bloat the firmware image.
2012-10-11 00:51:09 -04:00
Stacey Sheldon
6088c05946
console: add support for serial debug consoles
...
Serial ports now have a new HW setting called DebugConsole
which can be used to dump internal state to a serial port
for debug.
To enable this feature, you need to:
- make fw_coptercontrol_clean
- make fw_coptercontrol ENABLE_DEBUG_CONSOLE=YES
- configure one of the serial ports as DebugConsole in the GCS
- save settings
- power-cycle your board
Things to note:
- The console is at 57600,8N1.
- This is not currently configurable via the GCS.
- You can only have a single console enabled at a time.
2012-10-11 00:22:07 -04:00
James Cotton
aad1c3bd32
FreeRTOS: Make F1 targets use the FreeRTOS common code from PiOS/Common
2012-10-09 10:08:06 -05:00
Laura Sebesta
c2b49b6ef3
Merge branch 'kenz/cc_hitl_merge' into next
...
Conflicts:
ground/openpilotgcs/src/plugins/gcscontrol/gcscontrolgadgetoptionspage.ui
ground/openpilotgcs/src/plugins/hitlnew/hitloptionspage.ui
ground/openpilotgcs/src/plugins/hitlv2/hitlv2optionspage.ui
2012-10-08 15:30:27 +02:00
Stacey Sheldon
157aeac9fc
Merge remote-tracking branch 'origin/stac/ppm-and-pwm-inputs' into next
2012-10-06 23:04:49 -04:00
James Cotton
13cabd2ea4
Merge branch 'next' into revo
...
Conflicts:
flight/PiOS/Common/pios_rfm22b.c
2012-10-04 16:38:08 -05:00
Stacey Sheldon
2f4b1e69dd
rcvr: Support PPM and PWM at the same time on CC
...
Adds a new mode for the receiver port (PPM+PWM) which
will allow simultaneous use of 1 pin for PPM and the
rest of the pins for PWM inputs.
2012-09-29 19:11:48 -04:00
Laura Sebesta
8997df2438
Merge branch 'next' into kenz/diag_stack_split
...
Conflicts:
flight/Modules/Stabilization/stabilization.c
2012-09-27 19:29:23 +02:00
Laura Sebesta
4923655cd3
Added global flag for enabling all diagnostic tools.
2012-09-27 18:51:12 +02:00
Stacey Sheldon
754f58c33a
Merge remote-tracking branch 'op-public/next' into revo-next
...
Conflicts:
flight/Modules/ManualControl/inc/manualcontrol.h
flight/Revolution/Makefile.osx
ground/openpilotgcs/src/plugins/plugins.pro
ground/openpilotgcs/src/plugins/uavobjects/uavobjects.pro
ground/openpilotgcs/src/plugins/uploader/uploadergadgetwidget.cpp
shared/uavobjectdefinition/flightstatus.xml
shared/uavobjectdefinition/hwsettings.xml
shared/uavobjectdefinition/manualcontrolsettings.xml
shared/uavobjectdefinition/taskinfo.xml
2012-09-16 09:56:35 -04:00
James Cotton
88b483f37d
PIOS_MPU6000: Make the driver perform the rotation to bring it into the OP
...
coordinate system
Previously there were hacks spread throughout to deal with various ways of
positioning the chips. Now the driver structure specifies the rotation
of the chip relative to the board layout and the output X/Y/Z are already
in OP convention.
This flag seems to do the right thing for Revolution, CC3D, and RevoMini
2012-09-11 01:46:22 -05:00
James Cotton
38e9d105aa
Merge branch 'pidt1' into test2
...
Conflicts:
flight/Modules/ManualControl/inc/manualcontrol.h
ground/openpilotgcs/src/plugins/uavobjects/uavobjects.pro
shared/uavobjectdefinition/flightstatus.xml
shared/uavobjectdefinition/hwsettings.xml
shared/uavobjectdefinition/manualcontrolsettings.xml
shared/uavobjectdefinition/taskinfo.xml
2012-09-10 14:37:52 -05:00
James Cotton
2f65fc1e8e
Merge branch 'next' into relay_tuning
...
Conflicts:
shared/uavobjectdefinition/manualcontrolsettings.xml
shared/uavobjectdefinition/taskinfo.xml
2012-09-04 10:43:04 -05:00
Kenz Dale
e123a88262
Added UAVO for airspeeds.
2012-08-29 16:04:47 +02: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
113a759cd9
Merge branch 'next' into revo
2012-08-19 21:22:02 -05:00
James Cotton
44dc01126e
Merge branch 'next' into revo
2012-08-12 16:12:54 -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
b505602c15
Merge remote-tracking branch 'origin/stac/rc-tx-joystick-emulation' into next
2012-08-11 11:21:18 -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
3982ad0046
Enable AUTOTUNE by default for CC
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
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
48362f56f6
Enable autotune as an optional CC module
2012-08-03 09:37:44 -05:00