Richard Flay (Hyper)
ed68fbe68d
OP-951: Adds -Wshadow to flight CFLAGS and fixes resulting compilation breakage.
...
+review OPReview
2013-05-14 07:01:45 +09:30
Alessio Morale
ff16dd03e7
Merge branch 'amorale/OP-938_ah_improvements' into next
...
Conflicts:
flight/modules/AltitudeHold/altitudehold.c
flight/modules/ManualControl/manualcontrol.c
2013-05-13 23:30:46 +02:00
Oleg Semyonov
e5970ed25d
logfs: fix unit tests (requires MIN declaration from pios_math.h)
2013-05-12 03:51:00 +03:00
Alessio Morale
30b755b7aa
OP-901 fixed errors due to unused parameter and applied fix against fifo empty bug on usb_dcd_int.c
2013-05-11 23:49:52 +02:00
Alessio Morale
95a3e99b7c
OP-901 updated STM32 USB OTG Driver (updated configuration)
2013-05-11 23:12:14 +02:00
Alessio Morale
24fcea168c
OP-901 Updated STM32F4 USB Device Library
2013-05-11 23:12:13 +02:00
Alessio Morale
ccc24d844a
OP-901 updated STM32 USB OTG Driver
2013-05-11 23:10:47 +02:00
lilvinz
1016b08b70
f4 usb: removed DCD_EP_Flush on endpoint TX
...
This has probably caused the problem that prevented tx after
a bus reconnection.
2013-05-11 22:41:05 +02:00
Alessio Morale
535b53cb1c
Raised priority for USB interrupt to high, changed subriority to 0 (PriorityGroup is 0)
2013-05-11 22:41:05 +02:00
Stacey Sheldon
441e9e7b84
f4 usb: always init HID and CDC devices
...
This is required so that we can always respond to HID and
CDC requests via the control endpoint (ep0). The F1/F3
implementation gets away with disabling these interfaces
because all of the ep0 handling is in the usbhook code
rather than (properly) split out into class-specific
drivers like it is done on the F4 implementation.
Conflicts:
flight/targets/DiscoveryF4/System/pios_board.c
flight/targets/FlyingF4/System/pios_board.c
flight/targets/Freedom/System/pios_board.c
flight/targets/Quanton/System/pios_board.c
2013-05-11 22:41:04 +02:00
Stacey Sheldon
0d8fe83dca
usb cdc: advertise support for line coding and serial state
...
The CDC descriptor was not advertising support the the line
coding and serial state messages. This was preventing Mac
from sending the SetControlLineState message to indicate
that a DTE (ie terminal program) was present and reading
from the serial port.
We support (and depend on) the DTE indication now so this
was making CDC not work on Mac.
Linux seems to provide the indication regardless of whether
it is advertised in the descriptor or not.
2013-05-11 22:41:03 +02:00
Stacey Sheldon
0e0571149b
f4 usb: ensure that we NAK on unused OUT endpoints
...
The ST USB code will automatically receive on any
endpoint that is opened but not in the NAK state.
Make sure we set OUT endpoints to NAK initially.
It also happily writes via a NULL pointer in ep->xfer_buff
which writes to address 0x0000_0000. Since address
0x0 is aliased onto the internal flash by the BOOT0/1 pins
and the internal flash is (normally) in the LOCKED state,
this write puts the internal flash into an errored state.
This errored state means that writes to internal flash
are no longer allowed and all further writes fail.
2013-05-11 22:41:03 +02:00
Stacey Sheldon
565de5fd4e
f4 usb: ensure correct interface numbers for BL and FW
...
The interface numbers differ for the HID interface between
the BL and FW. This is required to keep windows happy.
In HID+CDC, the CDC interfaces must come first with HID last
which makes it #2 . In HID only mode, we can't use #2 for HID
since windows doesn't like the first/only interface to be
anything other than #0 .
Conflicts:
flight/targets/board_hw_defs/discoveryf4/board_hw_defs.c
flight/targets/board_hw_defs/flyingf4/board_hw_defs.c
flight/targets/board_hw_defs/freedom/board_hw_defs.c
flight/targets/board_hw_defs/quanton/board_hw_defs.c
2013-05-11 22:41:02 +02:00
Stacey Sheldon
2165a5afe1
f4 usb hid: handle SET_IDLE request
...
The code doesn't do anything useful with the SET_IDLE
but this helps to keep the wireshark USB traces clean
so that the real errors stand out better.
2013-05-11 22:41:02 +02:00
Stacey Sheldon
c22daec1b0
usb cdc: avoid need for ZLP by using tx buffers smaller than max
...
USB CDC uses BULK endpoints to send/receive data. Typically,
a USB host will enqueue large buffers on its IN (device-to-host)
URBs. These buffers are larger than the max packet size for the
bulk endpoint.
The USB standard requires that an IN transfer ends when one of
these is true:
* a short packet (ie. less than max packet size) is sent by the
device
* a zero length packet (ZLP)
* enough packets that the entire host buffer is filled
Our device implementation never sends ZLPs. We sometimes send
packets that are exactly max-packet-size bytes long. This would
result in partially filling a host buffer without signalling (via
ZLP) that the transmission had finished. The host would then wait
until the next transfer had taken place before processing the first
data, thus delaying the first data.
This change simply forces all of our transfers to be short packets
and avoids the need to worry about zero length packets. This is
at the cost of some efficiency on the host side since its large
buffers will only ever be partially filled.
Conflicts:
flight/PiOS/STM32F30x/pios_usb_cdc.c
2013-05-11 22:41:01 +02:00
Stacey Sheldon
366c573bab
f4 usb hid: send correct report ID in dummy report
...
The desired report ID is in the LSB of the wValue field,
not the MSB. This will now send the correct report ID
back to the host.
2013-05-11 22:41:01 +02:00
Stacey Sheldon
232f9b2f8f
f4 usb hid: use static data for dummy report Tx
...
This code was previously passing a pointer to stack
data into PIOS_USBHOOK_CtrlTx() which may be sending
this data asynchronously. Now pass a pointer to
static data so that the asynchronous send doesn't
tx random stack contents.
2013-05-11 22:41:00 +02:00
Stacey Sheldon
859734af98
f4 usb: fix tracking of OUT requests with data stages
...
This code was mistakenly tracking the IN (device-to-host)
requests with data stages. It should have been tracking
the OUT (host-to-device) requests with data stages.
This tracking data is important now that CDC is supported.
CDC actually uses OUT requests with data stages whereas HID
does not. This bug only triggered once CDC was enabled.
2013-05-11 22:41:00 +02:00
Stacey Sheldon
b56f5206bd
com/usart/cdc: ensure that device structs are memset before use
...
CDC and USART device drivers were not all clearing their
device structs before using them.
This specifically caused crashes in the case where the upper
COM layer was binding only a Tx path. The Rx path callback
in the lower driver was uninitialized random data and would
result in the lower driver faulting when it tried to call the
callback.
Conflicts:
flight/PiOS/STM32F30x/pios_usart.c
flight/PiOS/STM32F30x/pios_usb_cdc.c
flight/PiOS/STM32F30x/pios_usb_hid.c
2013-05-11 22:40:59 +02:00
Stacey Sheldon
e16be98224
usb cdc: ensure com buffer is drained when no DTE is attached
...
The CDC layer on F1, F3 and F4 now always acts like an
infinte data sink whenever *either* there is no DTE present
(ie. no terminal program listening) *or* the USB cable is
disconnected.
F1 and F4 were previously checking the cable but not the DTE.
F3 didn't check anything. The COM layer didn't even ask the
lower layers.
All of this used to mean that any time a caller did a blocking
send to a CDC device without a DTE, it would eventually block
for up to a 5s timeout waiting for space in the Tx buffer.
Conflicts:
flight/PiOS/STM32F30x/pios_usb_cdc.c
2013-05-11 22:40:58 +02:00
Stacey Sheldon
c702ca0f1b
usbhook: fix up indentation
...
No functional changes.
2013-05-11 22:40:57 +02:00
Stacey Sheldon
cb6f4a474e
f4 usb: ensure data buffers are 4-byte aligned
...
4-byte alignment is required for DMA.
2013-05-11 22:40:56 +02:00
Stacey Sheldon
9cc70695d7
f4 usb cdc: add support for USB CDC to RevoMini
...
Conflicts:
flight/targets/RevoMini/System/inc/pios_config.h
flight/targets/RevoMini/System/pios_board.c
2013-05-11 22:40:56 +02:00
Stacey Sheldon
c6e893e1e5
usb: fix interfaces in USB HW defs for OSD
2013-05-11 22:38:28 +02:00
Stacey Sheldon
207bd671ac
usb: fix interfaces in USB HW defs for RevoMini
2013-05-11 22:38:27 +02:00
Stacey Sheldon
f4bed187f4
f4 usb cdc: implement CDC class driver for STM32 F4 SoCs
2013-05-11 22:38:26 +02:00
Stacey Sheldon
19714d2316
f4 usb: allocate TX FIFO RAM for endpoints 2 and 3
...
This is required to support USB CDC mgmt and data
endpoints.
2013-05-11 22:38:25 +02:00
Stacey Sheldon
02addaf4a0
usbhook: make ctrl endpoint OUT treat request as const
...
The req parameter is passed to the OUT stage as a convenience.
Since the OUT callback is called *after* the transfer has occurred,
modifying the req would have absolutely no effect. Marking this
as const makes this expectation clear.
2013-05-11 22:38:25 +02:00
Stacey Sheldon
590feefd9b
f1 usb cdc: ensure uart state is transmitted on control endpoint
...
Previously, the IN stage on the CTRL interface would write (and
send) its data via the buffer owned by the DATA endpoint. This
would probably have overwritten any data being sent at that
moment. This may have caused data corruption from FC -> GCS.
2013-05-11 22:35:19 +02:00
Alessio Morale
d555bd0673
Uses Internal flash for system settings storage repourposing external flash for "User" storage
2013-05-11 22:06:30 +02:00
Alessio Morale
511283c608
Flash internal: writes optimization using 4 bytes parallelism
2013-05-11 22:04:47 +02:00
Alessio Morale
687e75b2e2
Changes to board specific files to support UAVObject on a specific LogFS instance
2013-05-11 17:15:07 +02:00
Alessio Morale
aefda3b560
Changes to UAVObjectManager to explicitly specify the logfs instance to be used
2013-05-11 17:13:11 +02:00
Richard Flay (Hyper)
04f59d5910
OP-950: Adds "higher priority task woken" logic to SPI and SPI bus resident
...
sensor device drivers. Based partly on code contributed by lilvinz.
+review OPReview
2013-05-11 16:18:34 +09:30
Corvus Corax
336a50f7e4
dynamic is better than static
2013-05-11 02:02:04 +02:00
Corvus Corax
92d73e0e73
keep on stack for now
2013-05-11 01:56:57 +02:00
Corvus Corax
e3147eed1a
some changes as suggested in review
2013-05-11 01:33:56 +02:00
Corvus Corax
0a3b59ddea
ManualControl: Initialize scaledChannel to 0, - required to not fail compilation with -O3 (GCC claims about potentially uninitialized use)
2013-05-10 20:23:16 +02:00
Corvus Corax
b76df471ee
bugfix on revo proto. STM32F4 A revision has a hardware bug and cannot do flash prefetching properly
2013-05-10 19:53:51 +02:00
Werner Backes
7c9d2ce9a5
Merge branch 'D-Lite/OP-934_rfm22b_rcvr_timeout_handling_next' into next
2013-05-10 09:59:30 +02:00
Corvus Corax
c5cbbf1c19
OP-944 : Improve Extended Kalman Filter generic formula to work roughly as fast as the auto generated code, remove autogenerated code.
2013-05-09 21:26:35 +02:00
Richard Flay (Hyper)
cf14608ebe
Merge branch 'next' into hyper/OP-936_task-monitor-rework
2013-05-09 19:25:02 +09:30
Stacey Sheldon
c6485a134c
logfs: load/save UAVOs to specific logfs partition
...
Now that multiple filesystem partitions are supported,
the UAVO manager needs to be specific about which partition
to load/save its objects to.
Conflicts:
flight/targets/CopterControl/System/pios_board.c
flight/targets/DiscoveryF4/System/pios_board.c
flight/targets/FlyingF3/System/pios_board.c
flight/targets/FlyingF4/System/pios_board.c
flight/targets/Freedom/System/pios_board.c
flight/targets/Quanton/System/pios_board.c
flight/targets/RevoMini/System/pios_board.c
flight/targets/Revolution/System/pios_board.c
flight/uavobjects/uavobjectmanager.c
2013-05-08 20:06:32 +02:00
Stacey Sheldon
4f9ce60930
ut logfs: add support for testing a 2nd partition
2013-05-08 19:42:12 +02:00
Stacey Sheldon
8ab50bca13
flashfs: use uintptr_t instead of uint32_t in flashfs API
2013-05-08 19:42:01 +02:00
Stacey Sheldon
99e61dd617
logfs: support multiple instances of logfs
...
Conflicts:
flight/pios/common/pios_flashfs_logfs.c
flight/pios/inc/pios_flashfs_logfs_priv.h
flight/tests/logfs/pios.h
flight/tests/logfs/pios_config.h
flight/tests/logfs/unittest.cpp
2013-05-08 19:28:11 +02:00
Alessio Morale
93bad2e8c2
Merge branch 'amorale/OP-917_f4_bootloader_updater' into next
...
***** PLEASE NOTE ***** From this revision all F4 based boards (Revolution/OSD) needs bootloader version 5 to boot properly
Conflicts:
flight/pios/stm32f4xx/libraries/CMSIS2/Device/ST/STM32F4xx/Source/osd/system_stm32f4xx.c
flight/targets/boards/osd/board-info.mk
make/boot-defs.mk
make/common-defs.mk
2013-05-07 21:02:41 +02:00
Werner Backes
cc38ba0bdb
Revert 8fa793 because it's obsoleted by 938ed5.
2013-05-06 14:26:25 +02:00
Werner Backes
938ed58918
Corrected timout calculation formula.
2013-05-06 14:20:53 +02:00
Werner Backes
bb87e6390e
Update ppm_fresh if we receive a new PPM packet in order to keep the
...
rfm22b receiver supervisor happy.
2013-05-06 12:00:58 +02:00
Richard Flay (Hyper)
fbc8bc698f
OP-936: Merges branch 'next' into hyper/OP-936_task-monitor-rework, fixes damage/conflicts,
...
and brings the callback scheduler into the fold.
+review OPReview-461
2013-05-06 19:11:14 +09:30
Werner Backes
0005d643ca
Merge branch 'D-Lite/OP-934_rfm22b_rcvr_timeout_handling' into D-Lite/OP-934_rfm22b_rcvr_timeout_handling_next
2013-05-06 08:23:22 +02:00
Brian Webb
ae8286e99a
OP-932: Fixes a bug that was preventing setting of Tx power on remote modem.
2013-05-06 01:03:15 +01:00
Corvus Corax
39fe6beb4b
Merge branch 'corvuscorax/Attitude-fixes' into next
...
Conflicts:
flight/libraries/insgps13state.c
flight/modules/Attitude/revolution/attitude.c
2013-05-05 23:09:07 +02:00
Corvus Corax
e0a6dae46a
made "fake" variances set in indoor mode and used for airspeed hack come from UAvObject
2013-05-05 18:19:43 +02:00
Corvus Corax
946105cbe3
Merge branch 'next' into corvuscorax/Attitude-fixes
2013-05-05 17:44:59 +02:00
Alessio Morale
5a2c53804f
OP-917 Make reboot over telemetry link works. UserDFU timeouts to the user application when no USB connection is found.
...
+review OPReview-456
2013-05-05 15:15:44 +02:00
Richard Flay (Hyper)
a2d8544931
OP-931: adds -Wextra compiler option for the flight code, and makes the bazillion code changes required
...
to make the flight code compile again. Needs careful review, particularly all the fixes for the
signed vs unsigned comparisons.
+review OPReview-459
2013-05-05 16:32:24 +09:30
Alessio Morale
1e5ce7a5fb
OP-938 Add programmable EXP and max full throttle climb/descent rate
2013-05-04 18:50:19 +02:00
Brian Webb
dc4455ff68
OP-932: Fixes a bug that was preventing setting of Tx power on remote modem.
2013-05-04 17:24:40 +01:00
Brian Webb
d7ca77b996
Merge branch 'next' of ssh://git.openpilot.org/OpenPilot into OP-932-Modularize_Radio_Driver
2013-05-04 16:50:20 +01:00
Brian Webb
57552f4cc9
OP-932: Changed the clock syncronization to happen only on packts transmitted from the coordinator to the remote modem. The Tx finished time of the previous packet is now sent in the packet header. This is compared to the Rx complete time of that packet on the remote modem to calcualte the difference between two modems. This eliminates the need for ACKing, so ACKs were removed for PPM and status packet.
2013-05-04 16:50:08 +01:00
Richard Flay (Hyper)
5b61466259
OP-931: Adds -Wdouble-promotion compiler option and fixes problems that the compiler then identifies.
...
+review OPReview-459
2013-05-04 19:24:01 +09:30
Richard Flay (Hyper)
7f273bd9e6
Fixes recent, but broken, commit of fix for OP-754. Bunny is bad.
2013-05-04 11:30:39 +09:30
Richard Flay (Hyper)
87fcf9fa8b
Merge branch 'next' into hyper/OP-931_extra_compiler_warnings and update as necessary.
...
Hopefully properly fixes conflicts:
flight/modules/Attitude/attitude.c
flight/modules/ManualControl/manualcontrol.c
flight/modules/Osd/WavPlayer/wavplayer.c
flight/modules/Osd/osdgen/osdgen.c
flight/modules/System/systemmod.c
ground/uavobjgenerator/generators/flight/uavobjectgeneratorflight.cpp
2013-05-04 11:12:44 +09:30
Brian Webb
33cb06b1b0
Merge branch 'next' of ssh://git.openpilot.org/OpenPilot into OP-932-Modularize_Radio_Driver
2013-05-04 01:30:01 +01:00
Richard Flay (Hyper)
576d33464a
OP-754/OPReview-374: Applied a very old patch, provided by cyr, to the latest next branch.
2013-05-04 09:10:02 +09:30
Alessio Morale
c88c0e03a8
OP-938 Reduce deadband to +/-10% around 0
2013-05-03 22:32:23 +02:00
Alessio Morale
1c3fb70ab1
OP-629 Block arming on all navigation based modes
...
Conflicts:
flight/modules/ManualControl/manualcontrol.c
2013-05-03 22:32:23 +02:00
Alessio Morale
976999eba0
OP-938 Add an "Exp" to throttle stick when in AH to make it useable
...
Conflicts:
flight/modules/ManualControl/manualcontrol.c
2013-05-03 22:32:23 +02:00
Alessio Morale
9f65409c5a
OP-938 Stop AH from running when board is not armed
2013-05-03 22:32:23 +02:00
Oleg Semyonov
137ddbf73a
Fix broken unit tests
2013-05-03 20:27:03 +02:00
Oleg Semyonov
7aa59f4573
pios.h: only include STM32xxx.h if particular STM32 MCU is defined
2013-05-03 20:25:48 +02:00
Brian Webb
38cd0e1c46
OP-932: Fixes configuration of the remote serial connection when using VCP/raw comms.
2013-05-03 14:46:14 +01:00
Brian Webb
12e8adbdc4
OP-932: Fixes vitual com port and (not tested) raw comms over a UART on the OPLink.
2013-05-03 14:46:01 +01:00
Brian Webb
84a0f981e0
Merge branch 'next' of ssh://git.openpilot.org/OpenPilot into OP-932-Modularize_Radio_Driver
2013-05-03 14:08:40 +01:00
Richard Flay (Hyper)
0178d666d5
OP-931: Fixes the mag_updated test in revo Attitude module to use the square of the Be vector magnitude.
...
Also fixes the dT calculation issues in a few places, one of which was as suggested in OPReview-459.
+review OPReview-459
2013-05-03 19:24:54 +09:30
Corvus Corax
5d5a3389c4
missed removal of unneeded update chec
2013-05-03 02:48:06 +02:00
Corvus Corax
25c58ff074
Put all EKF initialisation values in a separate UAVObject EKFConfiguration,
...
adapted insgps13state.c/.h,
modules/Attitude/revolution,
configrevowidget.cpp,
accordingly.
2013-05-03 02:17:44 +02:00
Richard Flay (Hyper)
84e1a81f8b
OP-936: Moves the task monitor code out of the flight library and into PiOS.
...
This move and rework also breaks the dependency of the task monitor on the UAVO subsystem,
and pushes the responsibility for updating the TaskInfo UAVO into the System module.
+review OPReview
2013-05-03 07:01:14 +09:30
Corvus Corax
48288c740e
OP-931: some floating point math fixes, should make merge with other dev branch easier
2013-05-02 22:45:02 +02:00
Corvus Corax
201eed8d8f
when testing variances for validity dont allow negative variances
2013-05-02 20:09:57 +02:00
Werner Backes
b48665e59b
rfm22b receiver supervisor now properly indicates a timeout condition.
...
This allows upper layers to recognize control signal loss.
2013-05-02 12:57:00 +02:00
Werner Backes
8fa79377c3
Lowered rfm22b_rcvr supervisor timeout. Timeout values above 159 exceed uint8_t
...
range during timeout calculation and effectively disable the supervisor.
2013-05-02 12:56:57 +02:00
Sambas
f7b9223827
Merge remote-tracking branch 'remotes/origin/next' into sambas/diffnext
...
Conflicts:
flight/modules/System/systemmod.c
shared/uavobjectdefinition/taskinfo.xml
2013-05-02 09:00:12 +03:00
Brian Webb
66b048e280
OP-932: Fixes configuration of the remote serial connection when using VCP/raw comms.
2013-05-02 04:42:16 +01:00
Brian Webb
80cef9dbcc
OP-932: Fixes vitual com port and (not tested) raw comms over a UART on the OPLink.
2013-05-02 04:23:26 +01:00
Corvus Corax
467b22f294
I knew I had forgotten something (cos -> cosf ...)
2013-05-01 20:40:50 +02:00
Corvus Corax
ff5fd9c7c9
Safety modification, defer any change to RevoSettings (fusionalgorithm), RevoCalibration, and EKFInitialVariance until the craft has been disarmed!
2013-05-01 20:21:46 +02:00
Corvus Corax
e7dc665c14
Reworked Variance Objects, Setting for initial EKF variance
2013-05-01 19:16:29 +02:00
Corvus Corax
3ef2693dfc
use DEG2RAD and RAD2DEG everywhere
2013-05-01 18:16:22 +02:00
Corvus Corax
d77c690fe3
Merge branch 'next' into corvuscorax/Attitude-fixes
...
Conflicts:
flight/modules/Attitude/revolution/attitude.c
2013-05-01 17:51:05 +02:00
Brian Webb
3b5bec167e
Merge branch 'next' of ssh://git.openpilot.org/OpenPilot into OP-932-Modularize_Radio_Driver
2013-05-01 15:30:24 +01:00
Brian Webb
d8b09f132f
OP-932: Removes requirement to ACK PPM packets.
2013-05-01 15:28:33 +01:00
Brian Webb
344e5cbb66
Merge branch 'next' of ssh://git.openpilot.org/OpenPilot into OP-932-Modularize_Radio_Driver
2013-05-01 14:38:28 +01:00
Brian Webb
8c763c8ed3
OP-932: Improves the timing of channel changes on the radio device.
2013-05-01 14:37:47 +01:00
Corvus Corax
a0ca66b0cd
Merge branch 'corvuscorax/delayed_callbacks_with_delay' into next
2013-05-01 15:34:16 +02:00
Oleg Semyonov
7032d2a9d6
Merge remote-tracking branch 'origin/next' into os/uncrustify-config
2013-05-01 13:31:38 +02:00
Oleg Semyonov
654dd051c7
Merge remote-tracking branch 'origin/next' into os/debug-pins
2013-05-01 11:13:30 +02:00
Brian Webb
a7d606dfe9
OP-932: Syncronize start of transmissions using the same coordinated clock as used by FHSS.
2013-05-01 03:46:46 +01:00
Brian Webb
2201d9d2bb
OP-932: Continued cleanup and modularization of radio code. Also fixed a bug that held the SPI lock when an error occured in an Rx.
2013-05-01 03:14:35 +01:00
Brian Webb
ef18319306
OP-932: Continued cleanup and modularization of the RFM22B radio code. Low-level radio driver has mostly been split out of the higher-level state machine.
2013-05-01 03:14:23 +01:00
Brian Webb
94cb92f410
OP-932: Additional restructuring of radio code.
2013-05-01 03:14:11 +01:00
Brian Webb
cb24d3266e
OP-932: Hold SPI bus semephore through multiple read/write transactions.
2013-05-01 03:13:58 +01:00
Brian Webb
8c59271d48
OP-932: Store the device status in bitfields with meaningful names.
2013-05-01 03:13:48 +01:00
Brian Webb
c3ea1bf3c0
OP-932: Fixed GPIO debugging on RevoMini (both V1 and V2)
2013-05-01 03:13:36 +01:00
Brian Webb
39c6e81d07
OP-924: Ensures that the PPM pulse turns off between PPM frames.
2013-05-01 02:48:48 +01:00
Brian Webb
e642183dee
OP-924: Any disconnect between radios causes a reset, which causes a re-configuration of I/O devices (com ports, PPM, etc). This causes problems due to certain devices (PPM in particular) not supporting re-configuration. This patch forces configuration to only happen once (on initial connection), which should fix this issue.
2013-05-01 02:48:47 +01:00
Brian Webb
76e4638b8f
OP-924: Added back setting of Tracking to true when a new sample is set.
2013-05-01 02:48:46 +01:00
Brian Webb
56a524ab9e
OP-924: Completely turn off PPM output when it's not being refreshed. Also fixed testing of PPM input on the OPlink that was broken when the return values were changed to negative values. The PPM values were being stored in an unsigned datatype, which made detecting negative error returns impossible.
2013-05-01 02:48:45 +01:00
Brian Webb
ab926da507
OP-924: Added a supervisor timeout to the PPM output driver. This is based on the code in the PPM input driver. A (minor) uninitialize variable bug was also fixed in the PPM input driver.
2013-05-01 02:48:44 +01:00
Alessio Morale
37a0d2c99e
OP-917 included a "compatibility" linker script used by the bootloader updater to ensure its compatibility with previous bootloader versions
...
+review OPReview-456
2013-05-01 01:14:30 +02:00
Alessio Morale
d79887d223
OP-917 relocate IRQStack to CCSRAM
...
+review OPReview-456
2013-05-01 01:11:17 +02:00
Alessio Morale
e1fdc41d7f
OP-917 add Bootloader support for IRQStack to reside in CCSRAM
...
+review OPReview-456
2013-05-01 01:03:27 +02:00
Alessio Morale
1eef6a7f06
OP-917 Extended the program flash size to 3 128k sectors for F4 targets
...
+review OPReview-456
2013-05-01 01:00:48 +02:00
Oleg Semyonov
dbc35d2b71
Update flight/.gitattributes to include *.template files
2013-04-30 22:15:58 +02:00
Oleg Semyonov
7c6da1df65
OPLinkMini: remove duplicated pvPortMalloc defines, fix #ifdef macro name
...
When the #define is reformatted by uncrustify, it differs from the same
in FreeRTOS default config and gives error. So the removal of it serves
to 2 purposes: removes the duplication and fixes uncrustified builds.
2013-04-30 16:54:30 +02:00
Oleg Semyonov
0394a3511c
Rename template files to *.template to screen from uncrustify processing
2013-04-30 16:54:27 +02:00
Richard Flay (Hyper)
7937ae6296
OP-931: Makes flight code compile with -Wfloat-equal and -Wunsuffixed-float-constants enabled.
...
Also fixes warnings (and bugs) in F4 STM32_USB_OTG_Driver code, allowing -Werror to be enabled for all flight code.
Fixes all other compiler warnings that would otherwise cause the flight code to not compile with -Werror enabled.
Along the way, this also adds some uses of isnan() to various places rather than questionable tests for x != x and
x == x to check for NaNs.
+review OPReview
2013-04-30 20:36:42 +09:30
Corvus Corax
0536936d45
Safety checks for NAN and INF and invalid variance configuration to protect EKF from harm
2013-04-28 23:41:43 +02:00
Corvus Corax
c06f049e2a
adjusted initial variances and defaults to be closer to the original values to reduce possibly negative impacts of the previous changesets
2013-04-28 21:17:51 +02:00
Corvus Corax
6e2c9b3c46
New EKFStateVariance UAVObject with EKF state variance information
2013-04-28 19:38:37 +02:00
Corvus Corax
14f72459c6
Changed code for attitude initialisation so it works when the board is upside down
2013-04-28 16:57:40 +02:00
Corvus Corax
a47f092a9d
added missing function in header file
2013-04-28 16:37:12 +02:00
Corvus Corax
63c4dc1ff0
Expose gyro bias process variance to settings UAVObject, code cleanup in revolution/attitude to make it more readable
2013-04-28 14:46:27 +02:00
Oleg Semyonov
19e374e8d1
OP-917: Minor fix for indents and spacing
2013-04-28 15:35:28 +03:00
Corvus Corax
dff6c2cb98
handle GyroBias more gracefully:
...
Its now only a dynamic offset to a static calibration. Also have to complementary filter still work with uncorrected raw values.
2013-04-28 12:25:48 +02:00
Alessio Morale
41ecc09c3f
OP-917 Various review fixes:
...
-Fixed casing for PIOS_BL_HELPER_FLASH_ERASE_BOOTLOADER
-fixed wrong condition in f1 bl_helper
-other cosmetic changes and use of stdbool in f1 pios_bl_helper
-remove now unused macros
+review OPReview-456
2013-04-28 10:19:08 +02:00
Alessio Morale
9f56fe9a1e
OP-917 Makefiles cleanup. Get rid of ALL_BOARDS_BU as not all boards have one
...
+review OPReview-456
2013-04-28 10:14:50 +02:00
sambas
38d9d5dde3
Merge remote-tracking branch 'remotes/origin/next' into sambas/diffnext
...
Conflicts:
flight/modules/VtolPathFollower/vtolpathfollower.c
2013-04-28 09:46:14 +03:00
Richard Flay (Hyper)
80c917591e
Cherry-pick and hand-merge of Sami's math cleanup commit from branch sambas/diffnext: 5f3e0c3e1d
2013-04-28 10:45:28 +09:30
Corvus Corax
98c90a67f5
Undo James removal of gyro_bias and gyro_scale in revocalibration
...
Note that the EKF can only compensate for slow temperature drift, the gyros should be bias-zeroed before flight through calibration!
2013-04-27 23:59:52 +02:00
Corvus Corax
8d1baa2ceb
OP-929: disable OveroSync module while its broken
2013-04-27 23:20:23 +02:00
sambas
e3b3713139
HiTL simulation solution for GPS update
2013-04-27 16:31:37 +03:00
sambas
5f3e0c3e1d
Math cleanup
2013-04-27 16:30:02 +03:00
Alessio Morale
78498910cf
OP-917 Moved all the flash architecture related code to pios_bl_helper, get the flash addresses from board defines, major cleanup.
...
+review OPReview
2013-04-27 15:15:28 +02:00
Corvus Corax
e1233c7780
Merge branch 'next' into corvuscorax/delayed_callbacks_with_delay
...
Conflicts:
flight/targets/Revolution/System/inc/openpilot.h
flight/targets/SimPosix/System/inc/openpilot.h
flight/targets/boards/coptercontrol/firmware/inc/openpilot.h
flight/targets/boards/oplinkmini/firmware/inc/openpilot.h
flight/targets/boards/revolution/firmware/inc/openpilot.h
flight/targets/boards/revoproto/firmware/inc/openpilot.h
2013-04-27 13:26:03 +02:00
sambas
9fec3f5567
Merge remote-tracking branch 'remotes/origin/next' into sambas/diffnext
2013-04-27 13:39:58 +03:00
Alessio Morale
2e6835a2a3
Merge remote-tracking branch 'origin/next' into amorale/OP-917_f4_bootloader_updater
2013-04-27 12:25:54 +02:00
Richard Flay (Hyper)
fd1181959c
Merge branch 'hyper/OP-913-flight-uavo-alignment' into next
2013-04-27 18:19:01 +09:30
Brian Webb
bb6986ea04
OP-914 - Converted PIOS_RFM22B_Validate back into a normal function from an inline.
2013-04-27 01:45:19 +01:00
Brian Webb
9bb3b5870c
OP-914: Reformatted the RadioComBridge module.
2013-04-27 01:45:04 +01:00
Brian Webb
a9079bfb7e
OP-914: Additional cleanup of the RFM22B driver code. Updated to code to the current coding standard. Added Doxygen documentation. Rearranged functions into functional groups to simplify reading the code.
2013-04-27 01:44:55 +01:00
Brian Webb
77b99cdafa
OP-914 - Converted PIOS_RFM22B_Validate back into a normal function from an inline.
2013-04-27 01:44:39 +01:00
Alessio Morale
b21146b8e3
OP-917 bootloader updater for F4 targets. Initial commit
2013-04-27 00:56:47 +02:00
Oleg Semyonov
47619c9937
Make F4 pios debug pins compilable, still should be revised for real use
2013-04-26 21:04:10 +03:00
Oleg Semyonov
45f456580f
Fix pios debug pin functions and defines (thanks to Mathieu for the patch)
2013-04-26 18:18:31 +03:00
Oleg Semyonov
fa8c2f239c
Merge remote-tracking branch 'origin/amedee/OP-921' into next
2013-04-26 17:43:26 +03:00
Oleg Semyonov
18f7d7488b
Fix directory name case for merged sambas/diffnext
2013-04-26 17:07:44 +03:00
Oleg Semyonov
e2fd821e97
Merge remote-tracking branch 'origin/next' into sambas/diffnext
...
Conflicts:
make/common-defs.mk
2013-04-26 16:31:19 +03:00
sambas
e94c00e671
Fix revo BL compile error
2013-04-25 19:51:52 +03:00
sambas
abe3742217
Merge remote-tracking branch 'remotes/origin/next' into sambas/diffnext
...
Conflicts:
flight/Libraries/CoordinateConversions.c
flight/Libraries/paths.c
flight/Modules/System/systemmod.c
flight/PiOS/STM32F4xx/pios_sys.c
flight/targets/boards/coptercontrol/pios_board.h
flight/targets/boards/revolution/pios_board.h
flight/targets/boards/revoproto/pios_board.h
2013-04-25 17:26:49 +03:00
Oleg Semyonov
7d5d513e75
Move flight/PiOS.osx->flight/pios/osx
...
It did not work and and is not fixed yet. But at least it is in place now.
2013-04-25 13:23:47 +03:00
Oleg Semyonov
9a53843168
Move flight/PiOS.win32->flight/pios/win32
...
It did not work and and is not fixed yet. But at least it is in place now.
2013-04-25 13:19:06 +03:00
Oleg Semyonov
b6e1331e5d
Rename flight/PiOS->flight/pios
2013-04-25 13:13:41 +03:00
Oleg Semyonov
25d0e8fcab
Rename PiOS/STM32F10x->PiOS/stm32f10x, PiOS/STM32F4xx->PiOS/stm32f4xx
2013-04-25 13:13:39 +03:00
Oleg Semyonov
f20f89da35
Rename PiOS/Common->PiOS/common
2013-04-25 13:13:39 +03:00
Oleg Semyonov
66db978244
Rename Libraries->libraries, Modules->modules
2013-04-25 13:13:36 +03:00
Philippe Vanhaesendonck
b3de04d09f
Handle Mach-o object format for UAVOs
...
Jira OP-921
2013-04-24 22:39:39 +02:00
Oleg Semyonov
748b28f4f4
Move doxygen config from flight to make/doxygen/
2013-04-24 22:44:40 +03:00
Oleg Semyonov
71465232f0
Remove obsolete flight/Doc/* files (they do not contain actual info)
2013-04-24 22:39:50 +03:00
Oleg Semyonov
0f6599d949
Move GPLv3.txt from flight/Doc/License/ to top directory and convert to CRLF
2013-04-24 22:39:28 +03:00
Oleg Semyonov
8f784ac6cb
flight: remove unnecessary #include "systemmod.h" from boards
2013-04-24 22:35:34 +03:00
Oleg Semyonov
33ed88e696
Merge remote-tracking branch 'origin/next' into os/OP-899_board-rename-and-config-rework
2013-04-24 21:28:33 +02:00
Oleg Semyonov
21e7e95f87
Merge remote-tracking branch 'origin/os/add-uncrustify' into next
2013-04-24 02:31:41 +02:00
Oleg Semyonov
8a3881b0cf
Move README.txt from flight to top, it points to OpenPilot Developer Manual
2013-04-24 02:14:35 +03:00
Oleg Semyonov
f9f721a76a
Reset executable bits from non-executable files (Windows legacy)
2013-04-24 01:18:46 +03:00
Oleg Semyonov
fb207bdaf7
OP-896: rename SensorTest to RevoProto
2013-04-24 00:57:33 +03:00
Oleg Semyonov
406339eb49
Merge branch 'amorale/next_precheck' into os/OP-899_board-config-rework-rebased-3
...
Conflicts:
flight/Libraries/inc/op_dfu.h
flight/Libraries/op_dfu.c
flight/targets/Bootloaders/CopterControl/inc/op_dfu.h
flight/targets/Bootloaders/OSD/op_dfu.c
flight/targets/boards/coptercontrol/bootloader/inc/op_dfu.h
flight/targets/boards/coptercontrol/bootloader/op_dfu.c
flight/targets/boards/oplinkmini/bootloader/inc/op_dfu.h
flight/targets/boards/oplinkmini/bootloader/op_dfu.c
flight/targets/boards/osd/bootloader/inc/op_dfu.h
flight/targets/boards/osd/bootloader/op_dfu.c
flight/targets/boards/revolution/bootloader/inc/op_dfu.h
flight/targets/boards/revolution/bootloader/op_dfu.c
flight/targets/boards/sensortest/bootloader/inc/op_dfu.h
flight/targets/boards/sensortest/bootloader/op_dfu.c
make/boot-defs.mk
2013-04-24 00:37:39 +03:00
Alessio Morale
57ca1639cc
Merge branch 'amorale/amorale/OP-874_gcs_rescue_erase_settings_merged' into next
...
Conflicts:
flight/Libraries/op_dfu.c
flight/PiOS/STM32F10x/pios_iap.c
flight/PiOS/inc/pios_iap.h
flight/targets/BootloaderUpdater/main.c
flight/targets/Bootloaders/CopterControl/inc/op_dfu.h
flight/targets/Bootloaders/CopterControl/op_dfu.c
flight/targets/Bootloaders/OSD/inc/op_dfu.h
flight/targets/Bootloaders/PipXtreme/op_dfu.c
flight/targets/Bootloaders/RevoMini/inc/op_dfu.h
flight/targets/Bootloaders/RevoMini/op_dfu.c
flight/targets/Bootloaders/Revolution/inc/op_dfu.h
flight/targets/Bootloaders/Revolution/op_dfu.c
ground/openpilotgcs/src/plugins/uploader/uploader.ui
make/apps-defs.mk
make/boot-defs.mk
2013-04-23 23:14:11 +02:00
Oleg Semyonov
27195b7327
OP-899: move UAVObjects and UAVTalk one level up from targets
2013-04-24 00:07:07 +03:00
Oleg Semyonov
3f2431c04f
OP-899: move board-specific pios_board.h files into board directories
2013-04-24 00:07:06 +03:00
Oleg Semyonov
f7332f6905
OP-899: remove extra copy of pios_usb_data.c and move it level up
2013-04-24 00:07:06 +03:00
Oleg Semyonov
1dd20eca33
OP-899: move board_hw_defs.c under board directories and fix some includes
2013-04-24 00:07:06 +03:00
Oleg Semyonov
393b37fa7a
OP-899: move board-info.mk from make/boards to board directories
2013-04-24 00:07:06 +03:00
Oleg Semyonov
f7f842687a
OP-899: rename System to firmware and move Makefile into it
2013-04-24 00:07:06 +03:00
Oleg Semyonov
fce12662bc
OP-899: move bootloaders under board directories
2013-04-24 00:07:06 +03:00
Oleg Semyonov
f01655efed
OP-899: get rid of board_friendly names
2013-04-24 00:07:06 +03:00
Oleg Semyonov
c33ff12faa
OP-899: rename targets/common/CamelStyle to unix_style
2013-04-24 00:07:05 +03:00
Oleg Semyonov
63573fac16
OP-899: move EF and BU to targets/common
2013-04-24 00:07:05 +03:00
Oleg Semyonov
fc845888d3
OP-899: move board targets under targets/boards
2013-04-24 00:07:05 +03:00
Oleg Semyonov
399cafe7d7
OP-896: rename RevoMini to Revolution
2013-04-24 00:07:05 +03:00
Oleg Semyonov
6afbef01eb
OP-896: rename Revo to SensorTest
2013-04-24 00:07:04 +03:00
Oleg Semyonov
fdd0ed39e0
OP-896: remove old board configs (ESC, INS, OpenPilot)
2013-04-24 00:07:04 +03:00
Oleg Semyonov
1ded536056
OP-896: rename OPLink to OPLinkMini
2013-04-24 00:07:04 +03:00
Oleg Semyonov
fe1a6b1c5b
OP-896: Linux and Mac are case-sensitive
2013-04-24 00:07:04 +03:00
Oleg Semyonov
6cd963e423
OP-896: fix a conflict resolution typo
2013-04-24 00:07:04 +03:00
Brian Webb
ba7b712cf1
Changed all references to PipXtreme on flight side to OPLink.
2013-04-24 00:07:03 +03:00
Alessio Morale
b4a4ada1b0
Merge branch 'amorale/OP-900_update_freertos_740' into next
...
Conflicts:
flight/PiOS/Common/Libraries/FreeRTOS/Source/croutine.c
flight/PiOS/Common/Libraries/FreeRTOS/Source/include/FreeRTOS.h
flight/PiOS/Common/Libraries/FreeRTOS/Source/include/StackMacros.h
flight/PiOS/Common/Libraries/FreeRTOS/Source/include/croutine.h
flight/PiOS/Common/Libraries/FreeRTOS/Source/include/list.h
flight/PiOS/Common/Libraries/FreeRTOS/Source/include/mpu_wrappers.h
flight/PiOS/Common/Libraries/FreeRTOS/Source/include/portable.h
flight/PiOS/Common/Libraries/FreeRTOS/Source/include/projdefs.h
flight/PiOS/Common/Libraries/FreeRTOS/Source/include/queue.h
flight/PiOS/Common/Libraries/FreeRTOS/Source/include/semphr.h
flight/PiOS/Common/Libraries/FreeRTOS/Source/include/task.h
flight/PiOS/Common/Libraries/FreeRTOS/Source/include/timers.h
flight/PiOS/Common/Libraries/FreeRTOS/Source/list.c
flight/PiOS/Common/Libraries/FreeRTOS/Source/queue.c
flight/PiOS/Common/Libraries/FreeRTOS/Source/tasks.c
flight/PiOS/Common/Libraries/FreeRTOS/Source/timers.c
flight/PiOS/STM32F10x/Libraries/FreeRTOS/Source/portable/GCC/ARM_CM3/port.c
flight/PiOS/STM32F10x/Libraries/FreeRTOS/Source/portable/GCC/ARM_CM3/portmacro.h
flight/PiOS/STM32F10x/Libraries/FreeRTOS/Source/portable/MemMang/heap_1.c
flight/PiOS/STM32F10x/Libraries/FreeRTOS/Source/portable/MemMang/heap_2.c
flight/PiOS/STM32F10x/Libraries/FreeRTOS/Source/portable/MemMang/heap_3.c
flight/PiOS/STM32F10x/library.mk
flight/PiOS/STM32F4xx/Libraries/FreeRTOS/Source/portable/GCC/ARM_CM4F/port.c
flight/PiOS/STM32F4xx/Libraries/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h
flight/PiOS/posix/Libraries/FreeRTOS/Source/include/FreeRTOS.h
flight/PiOS/posix/Libraries/FreeRTOS/Source/include/StackMacros.h
flight/PiOS/posix/Libraries/FreeRTOS/Source/include/croutine.h
flight/PiOS/posix/Libraries/FreeRTOS/Source/include/list.h
flight/PiOS/posix/Libraries/FreeRTOS/Source/include/mpu_wrappers.h
flight/PiOS/posix/Libraries/FreeRTOS/Source/include/portable.h
flight/PiOS/posix/Libraries/FreeRTOS/Source/include/projdefs.h
flight/PiOS/posix/Libraries/FreeRTOS/Source/include/queue.h
flight/PiOS/posix/Libraries/FreeRTOS/Source/include/semphr.h
flight/PiOS/posix/Libraries/FreeRTOS/Source/include/task.h
flight/PiOS/posix/Libraries/FreeRTOS/Source/list.c
flight/PiOS/posix/Libraries/FreeRTOS/Source/queue.c
2013-04-23 21:57:50 +02:00
Richard Flay (Hyper)
146e082e74
OP-913: ensured that UAVO data structs in .bss/.data sections and on the stack have 4 byte alignment. Also changed linker options to sort common and sort sections by alignment, which reduces the amount of fill/padding in the .bss and .data sections.
...
+review OPReview-444
2013-04-23 22:34:58 +09:30
Richard Flay (Hyper)
b22204e939
Merge branch 'next' into hyper/OP-913-flight-uavo-alignment
2013-04-23 19:14:57 +09:30
Alessio Morale
2fe7139fc3
Merge branch 'amorale/OP-908_clean_float_math' into next
...
Conflicts:
flight/PiOS/Common/pios_rfm22b.c
2013-04-23 02:09:01 +02:00
Alessio Morale
37e17fb706
Merge branch 'os/OP-866_sanitychecks' into next
2013-04-22 23:56:59 +02:00
Alessio Morale
594b44118f
Merge branch 'next' into amorale/OP-911_mpu6000_fix_isr
2013-04-22 23:25:19 +02:00
Alessio Morale
84129dba40
OP-886 move systemalarm.h include inside guards in sanitycheck.h
...
+review OPReview-430
2013-04-22 22:58:37 +02:00
Oleg Semyonov
8d1e1fdbc0
tools: make uncrustify_install target, script and base config file
...
See also: OPIN-3
2013-04-22 21:35:25 +02:00
sambas
731ee3e19d
Merge remote-tracking branch 'remotes/origin/next' into sambas/diffnext
...
Conflicts:
shared/uavobjectdefinition/manualcontrolsettings.xml
2013-04-22 21:29:04 +03:00
Alessio Morale
d64b1e5c90
OP-908 clean some defines from sensor.c
...
+review OPReview-436
2013-04-20 23:46:32 +02:00
Oleg Semyonov
97d4e9178b
Merge remote-tracking branch 'origin/lilvinz/dsmx_zero_fix' into next
2013-04-20 22:14:23 +02:00
sambas
01df38008f
Merge remote-tracking branch 'remotes/origin/next' into sambas/diffnext
...
Conflicts:
flight/Libraries/sanitycheck.c
flight/Modules/System/systemmod.c
2013-04-20 21:25:22 +03:00