Stacey Sheldon
154d971d4d
flash: don't call vTaskDelay() before OS init
...
PIOS_Flash_Jedec_EraseChip is called during early
init when the table_magic has changed. This call
happens on CC/CC3D prior to the OS being initialized
so it is not OK to call vTaskDelay() yet.
This was leading to boards locking up (no flashing blue
LED) immediately after jumping to the application when
the table_magic had changed or was being init'd for the
very first time.
2012-06-24 12:23:34 -04:00
a*morale
51678f24b4
Solve a bug that causes the motor spin on the first save for ActuatorSettings.
2012-06-24 14:06:51 +02:00
Brian Webb
43786c914d
Merge remote-tracking branch 'origin/next' into Brian-PipXtreme-V2
2012-06-23 15:01:53 -07:00
a*morale
688ae814fc
Modifications to prevent glitches on servo output during save for ActuatorSettings
...
Refactored the updating of ChannelUpdateFreq so that it is done only when the actual update rates changes.
The actual update of the servo channel is moved inside the ActuatorTask.
Now the problem happen only in very few cases when modifying update rates.
2012-06-23 22:55:57 +02:00
Oleg Semyonov
cd6387d0a6
Add support for more than 3-pos FlightMode switches
...
It is now possible to have 1 to 6 flight mode switch positions
(usefull for guidance, position hold and similar use).
The input channel range is divided into N (1 to 6) zones and each
zone represents a flight mode. Default is 3 zones (backward compatible),
but more can be chosen.
How to use: configure Tx mixers in a way they provide required number
of different values for the same FlightMode channel. For instance,
using Turnigy 9X radio with ER9X firmware, one can create a mixer like
this:
-100 MAX ID0 Manual
R -50 MAX ID1 Stabilized1 (Rate)
R 0 MAX ID2 Stabilized2 (Attitude)
R 50 MAX RUD PositionHold
R 100 MAX ELE ReturnToBase
And set number of flight mode positions to 5. As a result, the 3-pos
switch (ID0, ID1, ID2) will provide first three flight modes, the rudder
D/R switch will override those and enable the 4th flight mode, and
elevator D/R switch will have highest precedence and activate the 5th
flight mode.
This will change the ManualControlSettings objectID.
2012-06-23 22:10:19 +03:00
Stacey Sheldon
384305d8ee
makefile: add additional context to output when building all_* targets
...
When building the various all_* targets, it was hard to tell which
board/build-type that each line of output applied to. Now, the
all_* target types will include something like:
CC [fw|cc ] flight/PiOS/STM32F10x/pios_gpio.c
which includes the necessary additional context.
This will help with identifying the context for warnings and errors
when building a group of targets.
Conflicts:
Makefile
2012-06-20 23:38:21 -04:00
Brian Webb
005ba0f8c8
Added erase pipx settings to PipX firmware (no GCS support yet).
2012-06-16 19:19:23 -07:00
a*morale
9aa088fb98
battery module: prevent the initial ramp up of the power supply to be identified as a low voltage condition
2012-06-15 19:43:47 -05:00
James Cotton
f8d196ffe8
Added support for board voltage monitor to battery module.
...
The module can be configured to enable what's needed from board voltage, battery voltage and battery current measurement.
In GCS the POWER box in system healt will show alarm related to the supply voltage to the board.
If a power warning/critical alarm is raised, the warning condition is left even if the board voltage return to an acceptable value.
Conflicts:
ground/openpilotgcs/share/openpilotgcs/diagrams/default/system-health.svg
shared/uavobjectdefinition/systemalarms.xml
2012-06-15 19:43:34 -05:00
James Cotton
70606a46a1
Include initial gyro bias calibration into the level calibration of revo like
...
it is with CC.
2012-06-13 23:07:23 -05:00
James Cotton
9218145aa9
Merge remote-tracking branch 'origin/Brian-PipXtreme-V2' into revo
2012-06-12 22:53:30 -05:00
Brian Webb
33cae7645d
Fixed calculation of retries on PipX.
2012-06-12 19:48:21 -07:00
James Cotton
9c1fa2dfc6
Revert "Get mag before gyros so that when gyro chip is acting up we still see mag data."
...
This reverts commit d2a3e39bbf
.
2012-06-12 13:10:24 -05:00
James Cotton
01d47d6373
Accidental semicolon led to MPU6000 always failing self test. Another bug
...
masked that behavior. I suck.
2012-06-11 12:22:24 -05:00
James Cotton
a029fc4656
Merge branch 'next' into revo
...
Conflicts:
Makefile
2012-06-11 12:05:38 -05:00
James Cotton
93b77becc0
More the system task priority down and increase the timeout for erasing the
...
flash so it says completed. However, it still blocks the system for a long
time. During an erase the heartbeat will flash at 10 Hz to indicate what's
happening.
This still blocks telemetry even after lowering hte system priority (and there
is a vTaskDelay) which makes me think that the SPI bus being locked is blocking
Sensors or somethign else. This should not be permited when the system is
armed.
The reason the system locks up during the erase is that the file system
operations occur within the event dispatcher thread. It is very bad practice
for anything to block this (i.e. callbacks should never take very long). We
should probably move the object persistence handling into the system thread or
something but that can be a separate issue.
2012-06-11 12:03:32 -05:00
James Cotton
821a25e419
For now make the F4 PIOS_ADC return an error code if there is no new data in
...
the ADC buffer. This should be handled appropriately by the caller.
2012-06-11 09:22:04 -05:00
James Cotton
f5845cb037
Fix self test for MPU6000 so it returns negative values per our standard
2012-06-09 11:18:14 -05:00
James Cotton
d2a3e39bbf
Get mag before gyros so that when gyro chip is acting up we still see mag data.
...
Helpful for board diagnostics.
2012-06-09 11:06:41 -05:00
James Cotton
ac99176f73
Add a scale to the logo
2012-06-08 14:12:52 -05:00
James Cotton
6ca34d3d0c
Make lift model dependent on airspeed.
2012-06-08 13:58:18 -05:00
James Cotton
ac9adb0c94
Improve the airplane modeling a bit to the point navigation now keeps altitude
...
and speed correctly
2012-06-08 13:54:17 -05:00
James Cotton
ccee8e09f4
Cheat. For FW navigation when doing endpoint mode plot path from current
...
position to endpoint.
2012-06-08 11:44:22 -05:00
James Cotton
980111d246
Make RTH mode default to 2 m/s. This needs to be in a UAVO somewhere
...
(ManualControlSettings?)
2012-06-08 11:44:00 -05:00
James Cotton
53c9b4c8a4
Add simulated baro airspeed. PathFollower functionality tested and works.
2012-06-08 11:23:45 -05:00
James Cotton
bcaeda98f7
Fix bug in wind speed usage for simulation
2012-06-08 11:14:15 -05:00
James Cotton
6605d861dd
Add cross coupling between roll and heading to make simulator fly like a plane
...
:D
2012-06-08 11:08:11 -05:00
James Cotton
493864bdc4
Add a fixed wing simulator mode
2012-06-08 10:46:40 -05:00
James Cotton
463ad550e2
A few comments in my code and some simplication to the fixedwingfollower to get
...
it compiling against my path planner.
2012-06-08 10:46:40 -05:00
James Cotton
a28aac47b5
Strip down FW navigation to be supported by my simple scheme
2012-06-08 10:46:39 -05:00
James Cotton
4c3ca17e34
Backport the fixed wing path follower
2012-06-08 10:46:39 -05:00
James Cotton
574ab3fcaa
Make the VtolPathFollower an optional module
...
Note that RTH mode right now checks that throttle control is enabled, but this
should only occur if the system is a VTOL.
2012-06-08 10:46:38 -05:00
James Cotton
f5b2575c88
Merge branch 'next' into revo
...
Conflicts:
flight/PiOS/Boards/STM32F4xx_Revolution.h
flight/Revolution/System/inc/pios_config.h
package/Makefile
2012-06-07 12:45:06 -05:00
James Cotton
7b8110a457
Merge branch 'MikeL' into next
2012-06-07 11:31:41 -05:00
Corvus Corax
720ae43a5e
Modules/GPS: Fixed NMEA parser to still update GPSPosition in case of errors, but with error flagged.
2012-06-07 11:21:00 -05:00
James Cotton
1972470dcb
Manualcontrolcommand needs a bit more stack space now
2012-06-07 10:07:52 -05:00
James Cotton
c689bcfb80
Merge remote-tracking branch 'origin/Brian-PipXtreme-V2' into revo
2012-06-07 09:49:18 -05:00
Brian Webb
861bcc46fe
Fixed RSSI reporting on PipX.
2012-06-06 21:14:31 -07:00
Brian Webb
e9d0909a68
Further improvements in link reliability on the PipX.
2012-06-06 17:44:56 -07:00
James Cotton
5e01617cbd
Merge branch 'next' into MikeL
...
Conflicts:
ground/openpilotgcs/src/plugins/config/airframe.ui
ground/openpilotgcs/src/plugins/config/configoutputwidget.cpp
ground/openpilotgcs/src/plugins/config/configoutputwidget.h
ground/openpilotgcs/src/plugins/config/configvehicletypewidget.cpp
ground/openpilotgcs/src/plugins/config/configvehicletypewidget.h
2012-06-06 11:58:06 -05:00
Brian Webb
5876df250d
Improved lockups on dropped packets.
2012-06-05 21:10:32 -07:00
Brian Webb
0bc3c5061f
Fixed PipX connection status reporting.
2012-06-05 19:34:19 -07:00
Brian Webb
4e68f6543e
Added tracking of dropped packets to PipX and turned off visible text on signal strength meters.
2012-06-04 21:18:13 -07:00
Brian Webb
25fe50e9b1
Merge remote-tracking branch 'origin/next' into Brian-PipXtreme-V2
2012-06-04 18:26:05 -07:00
Mike LaBranche
0ba8345c51
Merge branch 'next' into MikeL
...
Conflicts:
flight/Bootloaders/Revolution/inc/pios_config.h
flight/Modules/OveroSync/inc/overosync.h
flight/Modules/Sensors/inc/sensors.h
flight/PiOS/Boards/STM32F4xx_Revolution.h
flight/PiOS/STM32F4xx/pios_iap.c
flight/Revolution/System/inc/pios_config.h
ground/openpilotgcs/src/plugins/config/config.pro
ground/openpilotgcs/src/plugins/config/configccattitudewidget.cpp
ground/openpilotgcs/src/plugins/config/configvehicletypewidget.cpp
2012-06-04 16:59:31 -07:00
Mike LaBranche
bf591ebe45
Merge branch 'next' into MikeL
...
Conflicts:
flight/Bootloaders/Revolution/inc/pios_config.h
flight/Modules/OveroSync/inc/overosync.h
flight/Modules/Sensors/inc/sensors.h
flight/PiOS/Boards/STM32F4xx_Revolution.h
flight/PiOS/STM32F4xx/pios_iap.c
flight/Revolution/System/inc/pios_config.h
ground/openpilotgcs/src/plugins/config/config.pro
ground/openpilotgcs/src/plugins/config/configccattitudewidget.cpp
ground/openpilotgcs/src/plugins/config/configvehicletypewidget.cpp
2012-06-04 15:38:57 -07:00
James Cotton
0b828fbdd0
Merge branch 'next' into revo
...
Conflicts:
Makefile
2012-06-04 14:12:19 -05:00
James Cotton
ff0a3a156e
Merge remote-tracking branch 'origin/os/AeroSimRC' into next
2012-06-04 12:25:59 -05:00
James Cotton
ed2fb5cb09
Merge branch 'next' into revo
2012-06-04 12:23:58 -05:00
James Cotton
46a52fc5ce
Apply the virtual flybar stick scaling in stabilization.c because we need to
...
know the true stick position to dampen the gyros appropriately.
2012-06-04 12:22:39 -05:00
James Cotton
bda3f301cb
Rename VBar mode to VirtualBar
2012-06-04 12:22:39 -05:00
James Cotton
4c562b88d1
Make the amount to suppress the gyros adjustable instead of binary
2012-06-04 12:22:39 -05:00
James Cotton
59972d5570
Limit the number of degrees the vbar can deflect. This is good for fast flips
...
etc.
2012-06-04 12:22:39 -05:00
James Cotton
42ac4018b8
Woops. Fix really nasty bug in vbar mode I introduced. Also fix small bug in
...
scoping of gyro gain that made it not work.
2012-06-04 12:22:39 -05:00
James Cotton
6719ee8639
Add piro compensation option to the vbar mode
2012-06-04 12:22:39 -05:00
James Cotton
3283b99d4e
For hardcode flipping allow full stick to completely override the gyro
...
feedback.
2012-06-04 12:22:39 -05:00
James Cotton
fe978504bc
Add friendly settings for the vbar mode including the VbarTau which acts like
...
the time constant.
2012-06-04 12:22:39 -05:00
James Cotton
ff1b1a93cf
Implement a virtual flybar in a way inspired by behavior of Align 3G which
...
seems apply a leaky integrator to the swash angle. This is the similar to what
is done by Phubar (http://code.google.com/p/phubar/ ) as well although we refer
to the gyro term as the proportional and the flybar angle as the integral
2012-06-04 12:22:38 -05:00
James Cotton
1b55df733d
Create virtual flybar setting for stabilization modes
2012-06-04 12:22:38 -05:00
James Cotton
daaa661080
Turned "Battery" into an optional module. It otherwise prevents flying if no voltage sensor is installed.
...
Conflicts:
shared/uavobjectdefinition/hwsettings.xml
2012-06-04 10:50:45 -05:00
James Cotton
70a6bf539b
Fix simulation implementation of pios_rcvr to match channel mappings in real
...
firmware
2012-06-04 10:30:44 -05:00
James Cotton
b11b606ddc
Fix RTH mode. Now works in simulation when GCSReceiver goes invalid.
...
There is a small issue that when it is in RTH failsafe mode and you regain
signal and your throttle is low you will disarm due to the timeout. That
means you'd suddenly get it back and plumet ouf of the sky. If you are
still holding throttle (which most people might do?) you will have control.
The timeout needs to probably start when you regain signal.
2012-06-04 10:25:43 -05:00
James Cotton
9f93c9cbec
Get PIOS_GCSRCVR working on revo
2012-06-04 09:48:05 -05:00
James Cotton
dc7fe1bdd8
Try and get pios_gcsrcvr working on simulation and revo for testing RTH. Had
...
to include uavobjectmanager.h manually which was weird
2012-06-04 09:48:05 -05:00
James Cotton
10aa31a57f
When ManualControlSettings.FailsafeBehavior is set to RTH and no valid input is
...
detected and the aircraft is armed enter RTH mode.
2012-06-04 09:48:05 -05:00
James Cotton
21eb48c58c
Add a RTH flight mode and remove it from the waypoint actions as that is
...
redundant with flying to (0,0,0)
2012-06-03 22:14:11 -05:00
James Cotton
9707c6152a
Merge remote-tracking branch 'origin/Brian-PipXtreme-V2' into revo
2012-06-03 19:13:01 -05:00
James Cotton
71e14a691e
Merge branch 'next' into revo
2012-06-03 19:00:51 -05:00
Stacey Sheldon
ec0889ea85
makefile: add additional context to output when building all_* targets
...
When building the various all_* targets, it was hard to tell which
board/build-type that each line of output applied to. Now, the
all_* target types will include something like:
CC [fw|cc ] flight/PiOS/STM32F10x/pios_gpio.c
which includes the necessary additional context.
This will help with identifying the context for warnings and errors
when building a group of targets.
2012-06-03 18:25:23 -05:00
James Cotton
e341a37bd1
Need to add a small delay after save for the load to work correctly. Odd.
2012-06-03 17:26:10 -05:00
James Cotton
a3df27ab65
Need to call FLASH_OB_Launch after setting the BOR bits
2012-06-03 16:45:18 -05:00
Brian Webb
36f62be3b9
Fixed packet error detection and improved RSSI reading.
2012-06-03 10:07:08 -07:00
Corvus Corax
be72d24c5f
Attitude: Fixed calculation for baro offset adjustment time
2012-06-03 09:52:24 -05:00
Corvus Corax
b06b51f1b2
Revolution/Attitude: Added offset calculation for barometric altitude
2012-06-03 09:52:14 -05:00
James Cotton
96bd5ba574
Merge branch 'navigation_map' into revo
2012-06-03 09:48:28 -05:00
James Cotton
c892a28970
Fix firmware to work with new usage of the action waypoint field
2012-06-03 09:36:21 -05:00
James Cotton
4ad23864c8
Treat the waypoint action as something to do once you hit that location. (e.g.
...
PathToNext) and add a Stop value to indicate not to advance to the next
waypoint. This is essentially a perament loiter to the pathfollower (I think)
but it's really just to have the ability to "delete" waypoints.
2012-06-02 18:40:53 -05:00
James Cotton
e8cf606f16
Add the chip size to the flashfs configuration (should probably go in the chip
...
configuration)
2012-06-02 11:00:42 -05:00
James Cotton
25f85ee4fe
Add an error flag to ObjectPersistence and when saving a setting make it verify
...
that the data reads successfully.
2012-06-02 10:23:27 -05:00
Brian Webb
df8a5f8f27
Changed update period for PPM inputs on the PipX. Fixed LED code.
2012-05-31 18:56:07 -07:00
James Cotton
ed2b9f1f63
Make PIOS_LED init it's GPIO clocks so it doesn't rely on startup code
2012-05-30 10:12:40 -05:00
James Cotton
c76c71cfce
No reason to init the board a second time
2012-05-30 09:50:05 -05:00
James Cotton
7c8cc94f5e
In the revo bootloader check that the BOR bits are set to 2.7 volt threshold.
...
This addresses an issue where a slow power ramp (e.g. some BEC) will stop it
booting.
2012-05-30 09:43:04 -05:00
Brian Webb
7287e2f725
Merge remote-tracking branch 'origin/next' into Brian-PipXtreme-V2
2012-05-29 18:14:20 -07:00
Oleg Semyonov
b93674cf64
uavtalk: fix object access mode comments to be correct
2012-05-29 11:57:31 +03:00
Brian Webb
9a6fb60dd6
Merge remote-tracking branch 'origin/next' into Brian-PipXtreme-V2
2012-05-28 20:18:59 -07:00
James Cotton
a89b880609
Fix compilation error on CopterControl because it doesn't support some of the
...
path functionality. These configurations that could result in
updatePathDesired or altitudeHoldDesired being called should result in an error
on startup to block arming.
2012-05-28 20:33:49 -05:00
James Cotton
564c442ac8
Remove some code from Zippe that used a timer to trigger the ADC. We might do
...
this again in the future but we need to generalize the configuration. For now
the ADC is fairly simple requirements on revo for battery monitoring.
2012-05-28 20:28:48 -05:00
James Cotton
88cf100430
Merge remote-tracking branch 'revo/amorale/revo' into revo
2012-05-28 20:27:51 -05:00
a*morale
d071491265
removed include for positiondesired.h
2012-05-29 00:56:39 +02:00
a*morale
468e8732f5
Fix for FlightBattertData ConsumedEnergy calculation
2012-05-29 00:55:03 +02:00
James Cotton
1934752d50
Merge branch 'revo-next' into revo
2012-05-28 15:23:14 -05:00
Oleg Semyonov
5739dfbfc8
Merge remote-tracking branch 'origin/next' into os/aerosimrc
...
Conflicts:
shared/uavobjectdefinition/gcsreceiver.xml
2012-05-28 21:46:43 +03:00
Oleg Semyonov
910b465ac6
AeroSimRC: do not update sensor and/or attitude data if read-only flag is set
2012-05-28 19:44:34 +03:00
James Cotton
4360d8adfd
Merge branch 'next' into revo-next
2012-05-28 11:25:40 -05:00
James Cotton
8a6073fbaf
Merge remote-tracking branch 'revo/revo-next' into testing
...
Conflicts:
Makefile
flight/PiOS.osx/osx/Libraries/FreeRTOS/Source/portable/GCC/Posix/port.c
flight/PiOS.osx/osx/Libraries/FreeRTOS/Source/task.c
flight/PiOS.posix/posix/Libraries/FreeRTOS/Source/portable/GCC/Posix/port_posix.c
flight/PiOS.posix/posix/Libraries/FreeRTOS/Source/tasks.c
flight/Revolution/Makefile
ground/openpilotgcs/src/plugins/uavobjects/uavobjects.pro
ground/openpilotgcs/src/plugins/uploader/devicewidget.cpp
shared/uavobjectdefinition/taskinfo.xml
2012-05-28 09:13:26 -05:00
Corvus Corax
978ab5b96c
Merge remote branch 'origin/stac/etasv3' into revo-next
2012-05-28 12:56:27 +02:00
Oleg Semyonov
f95d29a3b8
TxPID: add GyroTau to the list of parameters (OP-637)
2012-05-28 12:48:55 +03:00
Stacey Sheldon
5c114aedd5
pipx: apply fixes that allow pipx to build with new gcc
2012-05-27 21:38:33 -04:00
Stacey Sheldon
decd92f21d
pipx bu: apply recent LED changes so BU image builds again
2012-05-27 21:37:59 -04:00