James Cotton
303fe17969
Merge remote-tracking branch 'revo/brian/rfm22_refactor' into revo
2012-09-27 14:04:48 -05:00
James Cotton
6e114360f4
Merge branch 'next' into revo
...
Conflicts:
shared/uavobjectdefinition/taskinfo.xml
2012-09-27 14:04:44 -05:00
James Cotton
0fa4b062a4
Merge branch 'next' into revo
2012-09-26 00:43:02 -05:00
Brian Webb
6972c29813
RFM22B: Added check for timeout wating for sync on receive. This virtually eliminates the number of timeouts.
2012-09-25 18:10:15 -07:00
Brian Webb
88be2ddf1e
RFM22B: Added a message timeout event to the RFM22B state machine that will fire if a packet takes too long to transmit / receive.
2012-09-24 20:51:34 -07:00
Stacey Sheldon
215ff56fe8
usbcdc: fix handling of CDC SET_LINE_CODING request
...
The SET_LINE_CODING request contains data and must be
handled as such.
Previously, the only requests that had data were IN
requests. SET_LINE_CODING is an OUT request so it
required additional changes to support a new type of
data request.
2012-09-24 00:56:25 -04:00
Stacey Sheldon
5e37448814
usb: correct enum for CDC SET_CONTROL_LINE_STATE request
2012-09-24 00:53:52 -04:00
Stacey Sheldon
c056ac5261
usbcdc: don't assert on calls when CDC is not initialized
...
The CDC interface is always advertised in the FW USB
descriptors. It is NOT always enabled/initialized at
runtime. Specifically, it can be Disabled in HwSettings.
Previously, any CDC-related query that the host would send
resulted in an assert and a watchdog.
Now, a suitable return code indicating that the request is
unsupported is returned in this scenario.
2012-09-24 00:53:12 -04:00
Brian Webb
a070e1cc3e
RFM22B: Added PIOS_RFM22B_Receive_Packet function and removed rx buffer.
2012-09-23 08:36:38 -07:00
Brian Webb
a46e3cdec3
RFM22B: All outgoing data to the radio is now going through the PIOS_RFM22B_Send_Packet call. Also removed all global variables with the exception of the rx buffer.
2012-09-22 20:13:11 -07:00
Brian Webb
61200f01f5
RFM22B: Major refactoring of te RFM22B driver to implement a state machine for the driver. The state machine should now be complete, and the driver seems to be working pretty well on both the RM and the pipx.
2012-09-22 20:13:10 -07:00
Brian Webb
80509d264e
RFM22B: Start at cleaning up the processing interrupt handling, and starting to make it more of a state machine. Also removed the supervisor, which was causing unnecessary resets. The supervisor functionality is not in the the driver thread.
2012-09-22 20:13:08 -07:00
Brian Webb
8ca2e85f4c
RFM22B: Removed incorrect defaulting of tx power level.
2012-09-22 20:13:05 -07:00
Brian Webb
6623c55846
RFM22B: Moved ISR processing thread into the rfm22b driver.
2012-09-22 20:13:03 -07:00
Stacey Sheldon
ffe88eec5e
Merge remote-tracking branch 'op-public/next' into revo-next
2012-09-16 17:14:20 -04:00
lilvinz
a6a7ed8157
pios_exti: added returnvalues to exti handlers which allows to use portEND_SWITCHING_ISR
2012-09-16 21:44:09 +02:00
lilvinz
524cff1c40
pios_mpu6000: fixed masked locals mistake
2012-09-16 21:25:06 +02:00
lilvinz
718062ed6e
pios_led: added support for active_high connected leds
2012-09-16 18:19:27 +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
a*morale
9135a1dd4f
They will be added the needed banks instead of defaulting to the last bank.
...
Revert "Set all the servo timers above ACTUATORSETTINGS_CHANNELUPDATEFREQ_NUMELEM with"
This reverts commit 69f9814c3b
.
2012-09-14 22:50:13 +02: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
a*morale
69f9814c3b
Set all the servo timers above ACTUATORSETTINGS_CHANNELUPDATEFREQ_NUMELEM with
...
the last ChannelUpdateFreq value to prevent their speed not being initialized correctly.
2012-09-11 00:34:14 +02: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
386a9d41ef
Merge branch 'next' into test2
...
Conflicts:
ground/openpilotgcs/src/plugins/config/configrevowidget.cpp
ground/openpilotgcs/src/plugins/opmap/opmapgadgetwidget.cpp
ground/openpilotgcs/src/plugins/uavobjects/uavobjecttemplate.m
2012-09-10 14:29:26 -05:00
James Cotton
9763a70364
Merge remote-tracking branch 'origin/igor/pidt1' into relay_tuning
...
Conflicts:
flight/Modules/Stabilization/stabilization.c
2012-09-10 03:10:26 -05:00
James Cotton
527edcbee9
RFM22b: Get rid of the burst read commands and do a block transfer
2012-09-08 12:39:14 -05:00
James Cotton
1f0004e9db
RFM22b: Abstract out the port into the driver initiation
...
Also use a separate function to claim the bus semaphore and
assert the CS line.
2012-09-08 12:38:54 -05:00
Stacey Sheldon
97882dbef9
pipx: ensure pipx BL image is padded to fill its bank
...
This padding is required in order to properly align all
of the sections in the EF images.
2012-09-05 22:17:04 -04:00
James Cotton
68fa464ccf
RM: Make the direction of the TX/RX lines come from the configuration file
2012-09-04 23:22:56 -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
James Cotton
844d14e2f5
RM (NOT FOR PIPX) Properly select the GPIO->RX/TX mapping
2012-09-04 10:22:04 -05:00
James Cotton
0b947b243d
Revert "RFM22b: More block claims for rfm22_txStart"
...
This reverts commit fa4ca426abf5671fc7d0b7206f85f14bcbf92c3d.
2012-09-02 22:44:58 -05:00
James Cotton
dce4f36328
RFM22b: More block claims for rfm22_txStart
...
Warning: This patch makes the modem work more poorly
2012-09-02 22:44:58 -05:00
James Cotton
311bbcb539
RFM22b: Block transfers for more large SPI transfers
...
Preallocated buffers with various preambles etc. Used SPI_TransferBlock for
anything over a few bytes instead of burstWrite. Also make more of the
communications wrappered in a large semaphore grab using a new rfm22_write_noclaim()
Still needs work - probably because most of the methods to repeated calls they should
all use the noclaim, or more specifically that function becomes rfm22_write/read.
2012-09-02 14:35:56 -05:00
James Cotton
588297806c
RFM22b: Use SPI block transfers for filling the RFM22b FIFO
...
Also removed the disable irq line since that was introducing
flight glitches.
2012-09-01 21:24:42 -05:00
James Cotton
997319ae80
RFM22b: Begin doing blocks of transfers when possible between semaphore claims
...
The abstraction should probably be improved but ideally we start using
the DMA SPI transfers for PipX and grabbing/releasing the semaphore less
frequently (e.g. not for each 1-2 bytes).
2012-09-01 21:07:38 -05:00
James Cotton
d9ec6454c2
PipX: Since we are calling the PipX ISR from user space looks ensure the frequency stays correct.
...
Previously it was polling too fast and the PipXStatus was incorrect as a result. Now make
sure the stats loop only runs at 500 ms.
2012-09-01 19:13:11 -05:00
James Cotton
c9f66f5145
Merge branch 'revo' into revo-mini
...
Conflicts:
androidgcs/AndroidManifest.xml
androidgcs/res/layout/gcs_home.xml
androidgcs/res/values/strings.xml
androidgcs/src/org/openpilot/androidgcs/AttitudeView.java
androidgcs/src/org/openpilot/androidgcs/HomePage.java
flight/PipXtreme/System/pios_board.c
ground/openpilotgcs/src/plugins/uavobjectwidgetutils/configtaskwidget.cpp
shared/uavobjectdefinition/taskinfo.xml
2012-09-01 16:57:27 -05:00
James Cotton
6bfb2a5e45
Merge branch 'next' into revo
...
Conflicts:
ground/openpilotgcs/src/libs/opmapcontrol/src/mapwidget/mapgraphicitem.cpp
ground/openpilotgcs/src/libs/opmapcontrol/src/mapwidget/mapripper.cpp
ground/openpilotgcs/src/libs/opmapcontrol/src/mapwidget/waypointitem.cpp
ground/openpilotgcs/src/libs/opmapcontrol/src/mapwidget/waypointitem.h
ground/openpilotgcs/src/libs/utils/coordinateconversions.cpp
ground/openpilotgcs/src/libs/utils/coordinateconversions.h
ground/openpilotgcs/src/plugins/opmap/opmap.pro
ground/openpilotgcs/src/plugins/opmap/opmapgadgetwidget.cpp
ground/openpilotgcs/src/plugins/opmap/opmapgadgetwidget.h
ground/openpilotgcs/src/plugins/uavobjectwidgetutils/configtaskwidget.cpp
shared/uavobjectdefinition/taskinfo.xml
shared/uavobjectdefinition/waypoint.xml
2012-09-01 16:18:03 -05:00
James Cotton
f3327e3993
RM: Enabled optional modules and got the battery module working again.
...
Changed the hardcoded (ick) battery lines for RM. Also removed the reference
to PIOS_ADC_GetPin(4) as that pin is no longer available. Finally
changed the default FlightBatterySettings to work out of the box
for the standard recommended sensors.
2012-09-01 11:03:32 -05:00
James Cotton
300cee44b4
RM SBUS: There is no pull down on the inverter direction so when not SBUS must explicitly set to off.
2012-08-31 11:01:34 -05:00
James Cotton
b888a137f0
TOFIX: Temporarily remove the transaction lock from the settings as it was causing a deadlock with the radio coms.
2012-08-26 05:02:14 -05:00
James Cotton
042055b29a
RFM22b: Call the pendingISR routine from all the user space tasks. Got a valid connection with this.
2012-08-26 04:18:17 -05:00
James Cotton
f7cda1c0c4
RFM22b: No need to initialize the SPI. Done already.
2012-08-26 02:42:18 -05:00
James Cotton
477385ca25
RFM22b: Start to move the ISR into userspace
2012-08-26 02:41:19 -05:00
James Cotton
b1bd6d8583
PIOS_RFM22b: No need to set the SPI clock speed in the RFM22b module - it can be set by the driver configuration.
2012-08-26 00:00:39 -05:00
James Cotton
84d327c46a
RFM22b: Claim the bus semaphore before reading and writing.
2012-08-25 23:17:52 -05:00
James Cotton
2bb4f860e1
Shuffle around the PACKET_HANDLER definition so we can more easily disable the Radio module.
2012-08-25 22:58:11 -05:00
James Cotton
b95a78cde5
Roll back changes on the revo target
2012-08-25 17:33:14 -05:00
James Cotton
76bdb190d8
Link in the rfm module to the target
2012-08-25 17:27:17 -05:00
James Cotton
982750a58f
Merge remote-tracking branch 'revo/brian/revo_link' into revo-mini
...
Conflicts:
ground/openpilotgcs/src/plugins/plugins.pro
2012-08-25 15:05:47 -05:00
James Cotton
5c34412200
Merge remote-tracking branch 'revo/amorale/revolution_baro_fixes' into revo-mini
2012-08-25 14:55:10 -05:00
Brian Webb
415b86879c
Added the RFM22B driver to the Revo to support an RFM22B radio on the external SPI port.
2012-08-25 11:45:43 -07:00
Brian Webb
fad32dcc29
Split out the PipX radio interface from RadioComBridge module to a separate Radio module. Now the RadioComBridge module just routes messages between the com ports and handles sending/receiving the PipX UAVOs.
2012-08-25 11:41:32 -07:00
James Cotton
b9050809cc
Add a board info file for revo mini. However it was to remap the define MAINADAPTER for the HMC5883 driver which needs rewriting not to need this.
2012-08-25 12:57:50 -05:00
a*morale
789746151a
Fixes the selection of the oversample settings from the pios_ms5611_cfg.oversapling configuration
2012-08-25 11:29:01 +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
44dc01126e
Merge branch 'next' into revo
2012-08-12 16:12:54 -05:00
Stacey Sheldon
29ab1d8cf3
actuator: factor out settings updates from main loop
2012-08-11 19:46:00 -04:00
Stacey Sheldon
49c153003c
hid joystick: use linearly scaled channels
...
Scales each channel only based on max and min calibrated values.
The neutral value is now ignored so the joystick sees a linear
range between min and max.
This is particularly useful to allow the full range of values for
throttle to be passed through to the joystick.
2012-08-10 23:36:06 -04:00
Stacey Sheldon
07fde38887
hid joystick: factor out min/max range from report items
2012-08-10 23:29:34 -04:00
Stacey Sheldon
5902c19cc3
hid joystick: compress local usages since they're all in the same page
2012-08-08 10:38:43 -04:00
Stacey Sheldon
030d9e84f9
hid joystick: remove unnecessary usage page definitions
2012-08-08 10:15:08 -04:00
Stacey Sheldon
449c7aab7a
hid joystick: use 32-bits to represent max range
2012-08-08 00:50:03 -04:00
Stacey Sheldon
94f6344fc5
hid joystick: restructure joystick HID report to work on windows
2012-08-07 21:34:25 -04:00
Stacey Sheldon
017d8c79c9
hid joystick: add missing .c file
...
This time for sure...
2012-08-06 11:49:03 -04:00
Stacey Sheldon
d44e24a150
hid joystick: add missing .h files
2012-08-06 11:42:44 -04: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
652647fc87
Make autotuning module optional
2012-08-03 09:37:46 -05:00
Sambas
e59f99bc8e
Wave audio player test app.
2012-07-30 11:45:36 +03:00
Sambas
52c3627bb2
OSD uSDcard support, settings save/load works (tested on 128MB card). booting takes some time for some reason.
2012-07-30 11:45:22 +03:00
Sambas
ad0473e646
proper use of i2c transfer, return 0 is all ok, original code locked the transfer when all ok.
2012-07-30 11:41:25 +03:00
Sambas
79be7613b5
CC mag&baro for OSD, bmp needed some black magic hacking
2012-07-30 11:40:16 +03:00
James Cotton
f02aacfeb6
Change the constant so LED flashing works properly on Revo
2012-07-28 11:22:24 -05:00
James Cotton
735c009843
Disable writing to the overo driver for every pios_com write again. It drives
...
up system consumption too much, although now data will get lost :(.
2012-07-25 13:15:47 -05:00
James Cotton
30085d23ff
Reenable sending from the overo tx method but no longer yield since we aren't
...
using a blocking write anyway.
2012-07-24 11:29:24 -05:00
James Cotton
a90dd1ef5c
For now do not call PIOS_OVERO_WriteData from the Tx method because this is too
...
slow (task yield?) and results in a lot of event system errors.
2012-07-24 11:18:58 -05:00
James Cotton
26f07c21f6
Fix the pios_overo driver for compiling against the bootloader
2012-07-23 10:07:42 -05:00
Stacey Sheldon
f5db83bd20
Merge remote-tracking branch 'op-public/next' into revo-next
...
Conflicts:
flight/Libraries/inc/NMEA.h
flight/Modules/GPS/GPS.c
flight/Modules/GPS/NMEA.c
flight/Modules/GPS/UBX.c
flight/Modules/GPS/inc/NMEA.h
flight/Modules/GPS/inc/UBX.h
flight/Modules/PathPlanner/inc/pathplanner.h
flight/PiOS/STM32F10x/link_STM32103CB_PIPXTREME_sections.ld
flight/Revolution/System/inc/pios_config.h
flight/Revolution/UAVObjects.inc
flight/SimPosix/UAVObjects.inc
ground/openpilotgcs/src/plugins/hitlv2/aerosimrc/src/qdebughandler.h
ground/openpilotgcs/src/plugins/uavobjects/uavobjects.pro
shared/uavobjectdefinition/gpsvelocity.xml
2012-07-22 23:39:37 -04:00
James Cotton
c5904b4667
Clean up the pios_overo driver. Working well now.
2012-07-20 13:57:47 -05:00
James Cotton
bcdd5a8bba
Fixes to the overo module where it was thinking the fifo buffer writes failed
2012-07-20 13:45:31 -05:00
James Cotton
5091b16065
Needs work but it's sending data now
2012-07-20 11:36:49 -05:00
James Cotton
337f0e8bfa
Properly enable circular buffering on the overo spi
2012-07-20 10:59:18 -05:00
James Cotton
6a3c067c18
Zero out the packet counter when pios_over is initialized.
2012-07-20 10:45:20 -05:00
James Cotton
fb215fd095
PiOS overo driver wasn't setting it's id and also clearing the DMA IRQ flags
2012-07-20 10:17:57 -05:00
James Cotton
6b3e5573a0
The overosync module now uses pios_com interface.
2012-07-20 09:46:28 -05:00
James Cotton
8fc2d10ea6
Get the pios_overo driver for pios_com compiling
2012-07-20 09:32:22 -05:00
Kenz Dale
1d976b3095
dded support for multiple airspeed sources. Added GPS airspeed estimation. Extended BaroAirspeed UAVO. Added new AirspeedSettings UAVO.
2012-07-20 13:08:54 +02:00
James Cotton
1c4c373b86
Begin rewriting pios_overo to look like a standard com layer
2012-07-20 03:42:09 -05:00
James Cotton
7492d34d25
Merge branch 'overo_control' into revo
2012-07-19 08:35:39 -05:00
James Cotton
5ebd368b18
Merge branch 'next' into revo
...
Conflicts:
flight/PiOS/STM32F10x/link_STM32103CB_PIPXTREME_sections.ld
2012-07-19 08:35:30 -05:00
James Cotton
2f64124da8
Updates to the pios_overo driver to fully reinit the dma and spi device between
...
packets
2012-07-17 17:21:28 -05:00
James Cotton
db27653859
Make the Overo module use the new driver
2012-07-17 16:11:23 -05:00
James Cotton
a6ba379af9
PIOS_OVERO driver which handles the communications to the overo and ensures the
...
data stays in frame.
2012-07-17 15:34:54 -05:00
James Cotton
92a0311b32
New pios_overo driver that handles the SPI communications to the overo
2012-07-17 13:31:00 -05:00
James Cotton
719772c98a
Merge remote-tracking branch 'origin/Brian-PipXtreme-V2' into next
2012-07-16 11:42:29 -05:00
James Cotton
6b101d71af
Merge remote-tracking branch 'origin/Brian-PipXtreme-V2' into revo
2012-07-15 12:32:35 -05:00
James Cotton
ce6bebceb6
Also strex needs to not clobber it's register to have predictable results.
...
OPReview-227
2012-07-14 19:47:03 -05:00
Michael Hope
fa3aa20e05
ld: make sure current pointer never goes backwards
...
Fixes linking on ld version 2.22. Identical to 3cbf4499
.
2012-07-14 19:47:03 -05:00
Michael Hope
0efb24a54b
The destination register of an exclusive store must be
...
different from both the value and address register. Fix building with
recent binutils by marking the result as early clobber.
2012-07-14 19:47:03 -05:00