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
Brian Webb
a4faa22c4b
Merge remote-tracking branch 'origin/brian/rfm22_autoconf' into next
...
Conflicts:
ground/openpilotgcs/src/plugins/config/configgadgetwidget.cpp
2013-01-31 13:40:32 +00: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
Alessio Morale
b317415556
OP-788 reenable transaction lock for pios_jedec_flash.c
2013-01-14 01:31:07 +01:00
Alessio Morale
fbced18aab
Added missing test for TIM_IT_Update, cleanup
2013-01-05 18:52:15 +01:00
Alessio Morale
403a27de9e
OP-783: Fix missing F4 timer handlers for TIM13 and TIM14 and check source for shared vectors
2013-01-05 18:52:02 +01:00
Brian Webb
be444db7f8
Added PPM output to OPLink firmware
2013-01-04 06:51:27 -07:00
Brian Webb
7d86ddc6f7
Added 8 channel PPM output to PIOS.
2013-01-04 06:50:24 -07:00
Oleg Semyonov
95f16e25c4
[OP-775] Provide rules to build DSP library
2012-12-30 21:53:35 +02:00
Oleg Semyonov
89cb49733e
[OP-775] Use new core_cm3.h
2012-12-30 21:53:34 +02:00
Oleg Semyonov
aee2613384
[OP-775] Import CMSIS2 ARM DSP_Lib sources (imported by Alessio)
2012-12-30 21:53:29 +02:00
Brian Webb
9f3d7a24f8
Merge branch 'revo-fixes' of ssh://git.openpilot.org/OpenPilot into brian/rfm22_autoconf
...
Conflicts:
flight/RevoMini/Makefile
2012-12-30 07:59:09 -07:00
Alessio Morale
8a832fa8f6
OP-780 fix for comments
2012-12-30 15:01:25 +01:00
Alessio Morale
657701348c
OP-782 fixed duplicated entry for adc input.
2012-12-30 12:26:28 +01:00
lilvinz
6daed46ecc
pios_i2c: fixed a race condition with wrong bus locking when using FreeRTOS
...
When more than one task is concurrently trying to access
the same i2c bus and a timeout occurs on bus lock the
transfer would just continue and blow up the pios_i2c
driver. This has been fixed.
2012-12-29 17:20:50 +01:00
Corvus Corax
37df2bcbf4
OP-742: Merge branch 'corvuscorax/airspeed_fixes' into revo-fixes
...
Conflicts:
flight/RevoMini/Makefile
2012-12-29 12:09:58 +01:00
Brian Webb
9225debdc1
Added initialization of the ECC, which was removed with the removal of the packet handler. Removed a couple of test functions from RadioComBridge module. Turned on watchdog timers in RadioComBridge (and RFM22B driver).
2012-12-17 19:33:42 -07:00
Brian Webb
c4c58331e5
RM: Now doesn't crash when the radio is disabled.
2012-12-16 09:16:19 -07:00
Brian Webb
e0acb41379
Removed some unintended changes to RevoMini.
2012-12-15 10:35:51 -07:00
Brian Webb
43f6b4150f
RFM22: Don't send status until the link is connected.
2012-12-15 09:56:27 -07:00
Brian Webb
3a1803b7a1
Added RFM22B (OPLink) receiver.
2012-12-13 21:07:19 -07:00
Brian Webb
6e929d7a92
Fixed configuration of PPM input.
2012-12-12 20:27:08 -07:00
Brian Webb
90e0746ade
RFM22B: Changed default (initial) air baud rate to 9600. Also some code cleanup.
2012-12-11 19:23:59 -07:00
Brian Webb
1d7e4e0fc2
Reduced length of transmit window period to 8 ms from 16 ms.
2012-12-11 17:44:22 -07:00
Brian Webb
8ead1200b9
RFM22B: Added timing synchronization on transmit to try to eliminate both sides transmitting at the same time. This now achieves virtually 0 re-transmissions for close range transmission while transmitting both full telemety and PPM at 64k.
2012-12-11 17:44:20 -07:00
Brian Webb
7f6a718354
RFM22B: Added optional debug signals on the telemetry port of the PipX. Also fixed a couple of bugs that were causing excessive re-transmissions (found using the debug signals).
2012-12-11 17:44:19 -07:00
Brian Webb
fecc23eb49
RFM22B/OPLink: Auto-configuration of remote com port now working.
2012-12-11 17:44:17 -07:00
Brian Webb
6ffe518509
RFM22B: Improved link stability, and added tracking of error encountered in the processes of transmitting and receiving.
2012-12-11 17:44:15 -07:00
Brian Webb
4cb311538a
RFM22B: Improved reliability, especially with reconnection after a timeout, although there is still too many resent packets.
2012-12-11 17:44:14 -07:00
Brian Webb
7a930807aa
RM: Fixed initialization of the debug console.
2012-12-11 17:44:12 -07:00
Brian Webb
6ed9b63da9
RFM22B: Changing configuration parameters over-the-air working. Added tracking of Tx/Rx sequence number. Still seeing too many resent packets.
2012-12-11 17:44:11 -07:00
Brian Webb
0dce12e984
RFM22B: Finised handshacking on ACK and changed the link quality metric to use resent packets rather than missed packets.
2012-12-11 17:44:09 -07:00
Brian Webb
7aaa02268f
RFM22B: Added TX Resent to OPLink status. Also removed the need for the packet queue.
2012-12-11 17:44:08 -07:00
Brian Webb
fa5f7a8fdd
RFM22B: All packets are now ACKed, and added a formal connection request / accept that will be used or auto-configuring the remote modem.
2012-12-11 17:44:06 -07:00
Brian Webb
98026966f7
RFM22B: Added PPM packets to rfm22 driver.
2012-12-11 17:44:04 -07:00
Brian Webb
04da5d2377
USB/COM/RFM22B: Added a standard com callback to test for link availability. This replaces the PIOS_USB_CheckAvailable function with a generic PIOS_COM_Available function. This is now used by the RFM22B com driver to test if a good link is up. This was originally written by James, and Brian merged it into the latest RFM22B branch.
2012-12-11 17:44:03 -07:00
Brian Webb
e36bd678e1
RFM22B: Allow a receive to happen between transmitts.
2012-12-11 17:44:01 -07:00
Brian Webb
9f43e1151c
RFM22B: Fixed status reporting and connection status for OPLink.
2012-12-11 17:44:00 -07:00
Brian Webb
bd42083376
RFM22B: Changed the way the frequencies and power settings are set for the rfm22b device.
2012-12-11 17:43:55 -07:00
Brian Webb
dae382564a
RFM22B/RM: Added rfm22b com device, moved remaining functionality in the radio module to the rfm22 driver, and simplified configuration of the PipX/OPLink. The radio device now presents itself completely as a com device, both in RadioComBridge (OPLink devices) and Telemetry (RM). Also change the PipXStatus and PipXSettings UAVOs to OPLinkStatus/OPLinkSettings.
2012-12-11 17:43:53 -07:00
Brian Webb
4b90f81f6f
RFM22B: Modified the method of tracking RX errors, and now reporting Good, Corrected, Error, and Missed packets to the GCS. Also removed some less useful fields from the PipXStatus.
2012-12-11 17:43:49 -07: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
e5c54cca00
freertos: change default alignment to 4-byte from 8-byte
...
There shouldn't be any reason to need 8-byte alignment on the
F1 platform. This allows better packing of all malloc'd data.
Reducing this below 4-byte alignment is not recommended and will
likely result in misaligned pointers being passed to peripherals.
RAM savings is another 300 bytes.
2012-11-11 22:16:00 -05:00
Corvus Corax
8dd5d5a68b
type fix in header file
2012-11-08 11:12:05 +01:00
Corvus Corax
b09027afe5
Completely refactored airspeed module, now a pure sensor input module without any complex sensor fusion features -- changed driver for mpxv analog airspeed to be more versatile
2012-11-08 01:31:21 +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
lilvinz
3db04ea174
pios_jedec: fixed usage of uninitialized memory
...
When reading the jedec device id the code only transfered one byte via spi leaving
the expected input buffer uninitialized. This may lead to the problem that flash
initialization fails because the expected input may be whatever the stack was set
when entering the function. The impact of the bug is somewhat limited tough as the
initialization usually takes place before starting up the rtos and thus is pretty
deterministic. So if the code passed init while testing it should pass init in
production as well.
2012-10-28 14:34:20 +01: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
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
James Cotton
17f3c4d4e0
Re-add our code for accessing the run time information in freertos.
2012-10-09 09:57:57 -05:00
James Cotton
72c84fc49c
Upgrade to FreeRTOS 7.2.0
2012-10-09 09:48:02 -05:00
sambas
9212bbeb20
DSMx bindmode delay was too long, satellite binding works again.
2012-10-07 12:09:42 +11:00
Brian Webb
9ea572f4f7
RFM22B: Fixed the signedness of the return value of the RSSI function.
2012-10-04 21:23:44 -07:00
Brian Webb
5724fa083c
RFM22B: Added link quality calculation based on number of dropped packets. Also added packet error correction, which apparently wasn't being done before.
2012-10-04 21:11:40 -07:00
Brian Webb
9b9d0c0d1e
RFM22B: Added back configuration of the RF Power and RF Datarate. Also added setting of the destination ID in the rfm22b driver.
2012-10-03 20:03:35 -07:00
Brian Webb
3cdb9df05f
RFM22B: Removed setting register 0x58 in the rfm22_setDatarate call, which was breaking all data rates < 100000 bps. Also temporatily fixed the datarate at 64kbps.
2012-10-02 20:59:43 -07:00
Brian Webb
a8590045a8
RFM22B: Moved radio status reporting from the radio module into the rfm22b driver task.
2012-10-02 19:52:21 -07:00
a*morale
227aa98ebc
Added TIM12 to PIOS_TIM
2012-09-30 20:32:03 +02:00
a*morale
be752b8075
Fixed some declaration to Exti functions to make it compile.
2012-09-30 17:04:36 +02:00
a*morale
504d691487
Fixed declaration of PIOS_L3GD20_IRQHandler.
2012-09-30 15:44:31 +02:00
James Cotton
b0d8487e27
PIOS_RFM22: Make the irq return false for the exti changes
2012-09-28 02:14:15 -05:00
James Cotton
5c13c31c08
Merge branch 'next' into revo
...
Conflicts:
ground/openpilotgcs/src/libs/utils/homelocationutil.cpp
ground/openpilotgcs/src/libs/utils/homelocationutil.h
ground/openpilotgcs/src/plugins/opmap/opmapgadgetwidget.cpp
ground/openpilotgcs/src/plugins/uavobjectutil/uavobjectutilmanager.cpp
2012-09-28 01:00:10 -05:00
James Cotton
8979c00fba
Merge branch 'exti_end_switching_isr' into next
2012-09-28 00:41:08 -05:00
James Cotton
519e3e2e3a
PIOS_EXTI: Make the line task macro now take in the xHigherTaskPriority variable name
2012-09-28 00:40:36 -05:00
Stacey Sheldon
9896a0d416
Merge remote-tracking branch 'op-public/next' into revo-next
...
Conflicts:
ground/openpilotgcs/src/libs/utils/homelocationutil.cpp
ground/openpilotgcs/src/libs/utils/homelocationutil.h
ground/openpilotgcs/src/plugins/uavobjectutil/uavobjectutilmanager.cpp
shared/uavobjectdefinition/taskinfo.xml
2012-09-27 22:42:44 -04:00
James Cotton
f12d5c04fb
Merge remote-tracking branch 'origin/lilvinz/mpu6000_masked_locals_fix' into next
2012-09-27 14:43:54 -05:00
James Cotton
1ba40ee9b0
PIOS_EXTI: Make sure to use pdTRUE instead of true where appropriate.
2012-09-27 14:41:38 -05:00
James Cotton
1721479a12
Fix for vinz' merge to pios_mpu6000 exti changes
2012-09-27 14:34:11 -05:00
James Cotton
a021659b75
Merge remote-tracking branch 'origin/lilvinz/exti_end_switching_isr' into next
2012-09-27 14:31:16 -05:00
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