James Cotton
bf98630851
Add streaming the sensor data out of the serial port
2011-12-26 17:52:45 -06:00
James Cotton
9bf06bbd3e
Force the loading of the sensor gains and biases at the beginning
2011-12-24 16:14:28 -06:00
James Cotton
1092ac3184
Use the scale and bias terms for hte mag and accel
2011-12-24 15:58:12 -06:00
James Cotton
5d4da2213f
Accidentally used floating point when parsing NEMA. Lost resolution on
...
position.
2011-12-24 10:37:30 -06:00
James Cotton
0b00e748a9
OP-565: Added the ability to do a trim flight to compute the accels for level flight
2011-12-21 15:25:00 -06:00
James Cotton
dd89d232ba
Add a magnetometer bias term although currently hardcoded to my board
2011-12-15 00:57:19 -06:00
James Cotton
0432dd450e
Enable the mag to be used in the complimentary filter to stabilize the yaw
...
direction
2011-12-15 00:56:50 -06:00
James Cotton
2240ad924a
Fix the orientation of the magnetometer
2011-12-15 00:46:43 -06:00
James Cotton
43ed6cd89c
Need to initialize the HomeLocation object
2011-12-14 14:08:03 -06:00
James Cotton
9148bb2c65
Make sure the sensors module grabs the sesor biases initially.
2011-12-14 10:38:43 -06:00
James Cotton
09864a8cf6
Get outdoor EKF running although need to add in the ability to swap modes
...
(probably).
2011-12-14 02:07:33 -06:00
James Cotton
fd8899018f
Get EKF running
2011-12-14 01:54:06 -06:00
James Cotton
ed7cbd5a6c
Have to initialize the BaroAltitude object ini the init section for it to show
...
up on telemetry
2011-12-13 23:27:26 -06:00
James Cotton
a37a17a4fb
Created a separate Sensor module and Attitude module for revolution
2011-12-12 21:40:39 -06:00
James Cotton
53cb5b67d1
Make the revo attitude now use the separate gyro object. CopterControl
...
attitude still needs an update.
2011-12-12 13:28:35 -06:00
James Cotton
d22e0e66dd
Create separate UAVOs for the sensors.
2011-12-12 13:05:40 -06:00
James Cotton
7273f87f9b
Fix NMEA parsing for M4 FPU
2011-12-12 09:47:11 -06:00
James Cotton
a9c61845af
Create a separate task for sensors and attitude on revo.
2011-12-12 00:47:16 -06:00
James Cotton
33a12d829e
Merge branch 'next' into revolution
...
Conflicts:
flight/PiOS/Common/pios_flashfs_objlist.c
2011-12-11 22:55:54 -06:00
Corvus Corax
a0cd71abe6
UAVObjects ; Modules/ManualControl: Fixed metadata interface and segfault when retrieving it
2011-11-30 09:20:46 +01:00
James Cotton
44ca9736df
Fix floating point calculation in NMEA parser and delete duplicate of NMEA
...
functions
2011-11-28 09:36:31 -06: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
James Cotton
c33816dd79
Force mode switch to be floating point so F4 works
2011-11-28 09:10:26 -06:00
James Cotton
57e7126979
Increase stack size for manualcontrol. This might need to be applied to main
...
code.
2011-11-27 01:51:23 -06:00
James Cotton
f7d13ebd57
Hack to tweak the gyro gain for now although its too far out at the moment so
...
something isn't configured properly. Possibly it is staying in 250 deg/s mode.
Also make sure if the MPU6000 fifo backs up to pull extra data.
2011-11-27 01:22:37 -06:00
James Cotton
8bbc767a4e
Get the pressure sensor working and reading into Revolution
2011-11-27 00:52:09 -06:00
James Cotton
cd65df013e
Merge branch 'next' into revolution
...
Conflicts:
flight/Project/OpenPilotOSX/OpenPilotOSX.xcodeproj/project.pbxproj
2011-11-26 22:52:32 -06:00
James Cotton
b11a4f7405
Clean up the actuator module for floating point usage. Also there was a bug I
...
don't understand where the channels should be scaled AFTER all of them are
computed. It feels like a memory overwriting bug and needs followup.
2011-11-26 16:12:32 -06:00
James Cotton
07e3ad10af
Force some floating point units to be safe
2011-11-26 15:52:25 -06:00
James Cotton
8c0db424fa
Fix long subtle bug where failsafe didn't show the output values it was using
2011-11-26 15:51:24 -06:00
James Cotton
c70a9a5381
Sanitize the floating point math in systemmod.c to be consistently floating and
...
not double
2011-11-26 15:16:16 -06:00
James Cotton
8b7aca0dcd
Include the accel bias into revolution attitude function and also make sure
...
downsampling is correct.
2011-11-26 14:40:32 -06:00
James Cotton
7637e9f669
Get flash chip working and saving to memory. Also get the I2C working with
...
BMA180 driver.
2011-11-19 00:13:02 -06:00
James Cotton
a7ef5601e0
Update the MPU6000 FIFO code and also fix the temperature code
2011-11-18 00:24:55 -06:00
James Cotton
6d74e96c31
Got attitude working again. MPU6000 FIFO reading needs a bit of work.
2011-11-18 00:00:55 -06:00
James Cotton
0efffef1fa
Work on bringing the Revolution board up
2011-11-17 10:13:34 -06:00
James Cotton
1deb799b6f
Get simple attitude estimation working on F4 INS. Also make MPU6050 return
...
scaling that casts to degrees.
2011-11-16 11:36:04 -06:00
James Cotton
aeb42332d6
Get the MPU6050 fifo running and read by the attitude module
2011-11-14 11:23:14 -06:00
James Cotton
59507249e1
Hack in attitude to read directly from gyros instead of fifo. All sensors
...
reading now.
2011-11-14 11:12:10 -06:00
James Cotton
2cc2e55248
Add attitude solution for revo
2011-11-14 10:49:37 -06:00
James Cotton
684715930a
Merge branch 'next' into revolution
...
Conflicts:
flight/OpenPilot/Makefile
flight/Revolution/System/inc/openpilot.h
2011-11-14 10:11:53 -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
aa69027cb2
Merge branch 'next' into CC_GPS
2011-11-11 11:44:11 +01: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
e03e3c2ed8
removed "special code" to start optional modules
2011-11-11 11:22:54 +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
8f77d07119
System Module: fix stupid out of memory detection bug
2011-11-07 19:14:55 +02: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
0116e6a007
spektrum: rework DSM2/DSMJ/DSMX driver for explicit DSMX resolution support
...
- both CC serial ports are now disabled by default (no telemetry);
- serial ports now have DSM2, DSMX (10bit) and DSMX (11bit) options;
- ReceiverGroups now have DSM (MainPort) and DSM (FlexiPort) options.
For DSM2 protocol there is an explicit resolution bit in the stream, so
the DSM2 should be selected. For DSMX there is no such bit, and user
should choose the resolution from the list configuring the spektrum port.
ReceiverGroups have single DSM option which is handled by the same driver.
Downside: this implementation saves received frame first, unrolls by the
end of frame. This should be ok, but may be improved by unrolling channels
on the fly in the rx callback.
Another minor difference is that a ChannelGroup is now bound to port:
DSM (MainPort) or DSM (FlexiPort). This was considered as acceptable
solution in order to not have 6 DSM options for each ChannelGroup and
even more in case of new DSM protocol variations.
Known problem: it is not possible to choose same protocols like
DSM2/DSM2 for two ports. It can be enabled by adding an exception to
common rule, though.
The DSMX throttle channel misbehavior (zero value) is not treated
specially yet. It should trigger the failsafe being out of bounds.
More info and data dumps are required to handle this properly.
2011-10-30 19:29:03 +02:00
James Cotton
0f8ae1e076
Merge branch 'next' into ins
...
Conflicts:
flight/Project/OpenPilotOSX/OpenPilotOSX.xcodeproj/project.pbxproj
2011-10-26 13:18:44 -05:00
Oleg Semyonov
f71361ca83
Merge branch 'next' into os/GPS-on-CopterControl_next_v2
...
Conflicts:
flight/Modules/System/systemmod.c
2011-10-22 23:00:47 +03:00
Corvus Corax
cb8d9c791c
PiOS.posix: fixed missing defines in pios_config. removed platform specific inclde from Systemmod (pios_config.h gets included from pios.h)
2011-10-19 22:28:39 +02:00
Corvus Corax
b00751af91
Systemmod bugfix: UAVObject used without Initialization
2011-10-19 22:28:08 +02:00
Corvus Corax
425bc5abbe
PiOS.posix: PIOS_RCVR : fix posix port of pios_rcvr to allow compilation on 64bit systems
2011-10-11 18:07:04 +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
Oleg Semyonov
53c098dd08
Merge branch 'next' into os/GPS-on-CopterControl_next_v2
...
Conflicts:
flight/OpenPilot/System/pios_board.c
flight/OpenPilot/UAVObjects.inc
shared/uavobjectdefinition/hwsettings.xml
2011-09-28 22:02:02 +03:00
James Cotton
400ba3bd47
Merge branch 'next' into ins
2011-09-12 18:57:11 -05:00
James Cotton
c36297227d
Stabilization fix typo
2011-09-12 11:56:01 -05:00
James Cotton
63bb80649b
Merge branch 'max_rate_for_attitude' into next
2011-09-12 11:51:03 -05:00
James Cotton
5b836db54c
INS/Guidance: Convert distance to using m instead of cm. This is mainly to be
...
able to use NAN to indicate when values aren't valid from INS.
2011-09-11 23:02:05 -05:00
James Cotton
8f2fad6918
Fix for merging with the collective channel with the swashplate fix.
2011-09-11 18:53:10 -05:00
James Cotton
6457276438
Merge branch 'input_configuration' into next
2011-09-11 18:52:35 -05:00
James Cotton
b38081bb1b
Stabilization: When in none
mode zero the integral accumulators for rate and
...
attitude loops. When not using outer loop zero that accumulator.
2011-09-11 16:33:38 -05:00
James Cotton
6945f17eba
Make the StabilizationSettings.MaxRate field only apply to the stabilized
...
modes. That way ManualRate can exceed MaxRate.
2011-09-11 12:27:17 -05:00
James Cotton
b8bb2dd2ca
Merge branch 'next' into ins
2011-09-10 17:02:15 -05:00
James Cotton
f725fbe128
CopterControl: Fix build due to changing the AttitudeRaw structure.
2011-09-10 13:56:00 -05:00
James Cotton
199db1362d
Actuator: Found a bug in actuator that affects how throttle and pitch curves
...
were used. Basically 80% was always 100%. This should make hovering better
and fix heli swash pitch.
2011-09-09 19:40:58 -05:00
James Cotton
3239fdf21b
Merge branch 'next' into ins
...
Conflicts:
flight/CopterControl/Makefile
flight/OpenPilot/System/pios_board.c
flight/Project/OpenPilotOSX/OpenPilotOSX.xcodeproj/project.pbxproj
2011-09-09 08:33:34 -05:00
James Cotton
dfe91af686
UAVObjects: Space allocated in manualcontrolcommand did not match the number of
...
channels in settings. Fixed this and added assertion to catch in future.
2011-09-09 01:17:13 -05:00
James Cotton
1a5fd9f30e
Heli: Added an explicit collective channel. Also make the default channel
...
number 0 since that is not invalid.
2011-09-07 01:48:39 -05:00
James Cotton
72625d9971
PiOS RCVR: Make the public API use a 1 based indexing for channel numbers.
...
This may or may not get into next, but if so anyone following it MUST
reconfigure their inputs.
2011-09-06 16:39:08 -05:00
James Cotton
8f7712435f
Merge branch 'safer_failsafe' into next
2011-09-06 16:23:11 -05:00
James Cotton
627c931c79
PiOS I2C: Swap the convention of returned values for I2C
2011-09-06 03:27:20 -05:00
James Cotton
7ff5cd7655
INS: Try and get load down on event system.
2011-09-04 16:21:04 -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
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
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
3b20df22d1
Updates to config gadget for new INS objects
...
Make scope gadget check if object exists before using it. Avoids segfaults
when scoped objects disappear.
2011-09-01 12:21:37 -05:00
James Cotton
612d3336b4
This patch breaks backward compatibility with AHRS solidly.
...
Move the configuration files for INS from AHRS* to INS*. Strip out unused
fields in settings and merge calibration and settings since settings has
basically no information.
2011-09-01 12:21:33 -05: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
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
James Cotton
1d77d77832
Merge branch 'stac/use-malloc-failed-hook' into next
2011-08-27 00:24:13 -05: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
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
Stacey Sheldon
edc0caf521
heap: set memory critical alarm on malloc failures
...
Activate the FreeRTOS malloc failed hook and use it
to set the memory critical alarm.
2011-08-21 23:14:32 -04:00
Corvus Corax
838149b53f
GPS: homelocation init is optional, satellites must be initialized
2011-08-21 18:20:33 +02:00
James Cotton
b1c522def3
Merge remote-tracking branch 'origin/next' into ins
2011-08-21 01:34:40 -05:00