Brian Webb
0d02df4d02
Uncrustified OPLink code.
2013-07-05 18:49:26 -07:00
Brian Webb
d0d8a0aadd
OP-932 Adds PWM outputs to OPLinkMini. Both gpio pins on the main and/or flexi port can be configured to output PWM for a total of up to 4 PWM outputs.
2013-07-03 18:58:34 -07:00
Brian Webb
c76ee7de9d
OP-932 Fixes the failsafe that detects when the Rx modem loses sync with the Tx modem. This was not working on one-way mode.
2013-06-30 16:08:50 -07:00
Brian Webb
491e5fe685
Adds a failsafe on PPM output on OPLink that kicks in when the link goes down. Also updates all air datarate settings and adds new 64 and 100 kbps modes.
2013-06-29 15:00:38 -07:00
Brian Webb
d5f16faaec
OP-932 Fixes the datarate used on PPM only mode, and fixes failsafe on PPM output on OPLM.
2013-06-26 20:11:39 -07:00
Brian Webb
caa8d3e70e
OP-932 Forces one-way to be set when PPM only is configured.
2013-06-26 18:02:08 -07:00
Brian Webb
2aea2342ab
OP-932 Adds a direct PPM channel on each Tx packet when in PPM mode, and adds a PPM only mode that uses a 9600 bps air datarate. Also updates the OPLink configuration tab and moves all OPLink configuration to the OPLink configuration tab on the Revo, and customizes the OPLink configuration tab for the Revo.
2013-06-26 18:01:54 -07:00
Brian Webb
44a0266e41
OP-932 Adds claiming of the SPI bus in the OPLink channel change function.
2013-06-26 18:00:02 -07:00
Brian Webb
56a60f2983
OP-932 Updates the 19.2 kbps datarate using the spreadsheet.
2013-06-26 17:59:49 -07:00
Brian Webb
61c453f6ff
Removes several of the air datarate settings, and fine tunes the calculation of the max packet length from the datarate and packet time. 9600, 19200, 36400, and 57600 modes tested. Tested 19200 in one-way mode for PPM only.
2013-06-26 17:59:33 -07:00
Brian Webb
cdd51537f1
Fixes the 9600 bps air datarate for the RFM33B modem.
2013-06-26 17:57:46 -07:00
Brian Webb
fc0328a3cd
OP-932 Adds working one-way mode to the OPLink radio connection. In this mode, packets will only flow from the ground side (coordinator modem) to the flight side modem.
2013-06-26 17:57:32 -07:00
Brian Webb
774a74884a
OP-932 Replaces the RFM22B PPM/receiver code with an OPLinkReceiver UAVObject. This object is generated on a coordinator OPLink, and is used by both the OPLink to generate PPM output, and the OPLinkReceiver on the Revo.
2013-06-26 17:57:11 -07:00
Brian Webb
8c370df319
OP-932 A significant re-work of the OPLink and configuration of the OPLink. Auto-configuration is removed, and remote modems are bound the coordinator, rather than the other way around. Timing of the radio link is also significantly changed. The rfm22b code is also simplified so that it only sends packet, and has no notion about what those packets are, so the rfm22b is converteded to simply a com type device.
2013-06-26 17:56:56 -07:00
Brian Webb
08efc8d152
OP-932: Adds an oplink receiver device, which is based on the gcs receiver device, but uses the OPLinkReceiver UAVObject. The OPLinkReceiver packets are generated on the OPLink modem.
2013-06-26 17:56:20 -07:00
Brian Webb
7c10623615
OP-932 Adds a semaphore to PPM input to signal when a new frame has been received. This can be used to process a new frame with as low a latency as possible.
2013-06-26 17:56:10 -07:00
Alessio Morale
5cc3645b96
Uncrustify
2013-06-18 20:23:46 +02:00
Alessio Morale
e9b3ee52f3
OP-997: add fields to SystemStatsUavo to monitor storage status
2013-06-09 19:20:00 +02:00
Brian Webb
e9f83bcc80
Fixes a bug in the rfm22b driver that was reading past the end of the bindings list when receiving a status message. Also adds some formatting changes that came about after doing a make uncrustify_all.
2013-05-26 08:36:38 -07:00
Brian Webb
ac4847c8ac
OP-932 Moves the configuration of the com ports on the coordinator OPLink to startup.
2013-05-21 19:48:21 -07:00
Brian Webb
dbce08a151
OP-932 Changes the radio task loop to loop every 1ms, and reduces the tx transmit period back down to 8ms. Also reduces the Tx windows to 1ms for each modem, and reserves the latter half of the Tx window for channel changing.
2013-05-21 17:40:05 -07:00
Brian Webb
d4a4588011
OP-932 Changes the RFM22 frequency hopping to change channels every Tx period. Also increases the Tx clock period from 8ms to 16ms, and adds a check on calculation the the time delta that it doesn't change the previous estimated time delta by too much. If the delta between the current time delta and the previously estimated time delta is too large it could indicate that there was a delay somewhere that makes the calculated time delta inaccurate.
...
Rearanges the packet send priority in the rfm22b driver so that PPM packets are top priority.
2013-05-20 20:49:24 -07:00
Sexy Pony
900f643bbd
Reformat source code with 'make uncrustify_all' run twice. NO CODE CHANGES
2013-05-19 17:37:30 +03:00
Alessio Morale
ab7af16be3
Merge branch 'amorale/OP-901_lib_udates-usb_fixes' into HEAD
...
Conflicts:
flight/pios/stm32f10x/library.mk
flight/targets/boards/revoproto/firmware/pios_board.c
2013-05-19 15:01:08 +02:00
Alessio Morale
37eabb0931
Pointed type is explicitly used with sizeof when dealing with struct pointers.
...
+review OPReview-474
2013-05-19 12:00:16 +02:00
Alessio Morale
2e458b5652
OP-901 USB OTG/Device Drivers are not targeted for f103 (they are targeted at f105) so move again to F4 library folder instead of common
2013-05-18 20:53:28 +02:00
Alessio Morale
3ec9447fdc
OP-901 Update CMSIS to r3p2-00rel1
2013-05-18 20:29:06 +02:00
Alessio Morale
c1f767b12d
Merge remote-tracking branch 'origin/amorale/OP-954_logfs_settings_in_internal_flash' into next
...
Conflicts:
flight/pios/common/pios_flashfs_logfs.c
2013-05-18 15:53:25 +02:00
Alessio Morale
66da2796e0
Merge remote-tracking branch 'origin/amorale/OP-905_revolution_watchdog_next' into next
2013-05-18 15:00:50 +02:00
Alessio Morale
976ad90211
OP-901 Updated F4 CMSIS startup files, Moved USB OTG and USB Device library to common
2013-05-18 14:03:03 +02:00
Alessio Morale
67e41c34fc
Merge remote-tracking branch 'origin/next' into amorale/usb_fixes
2013-05-17 22:46:42 +02:00
Alessio Morale
2735f8a620
OP-901 Updated common CMSIS files
2013-05-17 22:41:34 +02:00
Richard Flay (Hyper)
ae14c13195
Merge branch 'next' into hyper/OP-951_add--Wshadow-to-flight-CFLAGS
...
Conflicts:
flight/modules/ManualControl/manualcontrol.c
2013-05-16 06:28:56 +09:30
Richard Flay (Hyper)
ef5bb6f6fe
Merge branch 'next' into OP-950_spi_fixes_FreeRTOS
2013-05-16 05:41:09 +09:30
Alessio Morale
707e648457
OP-905: Fixes. Prevent LogFS from triggering watchdog
2013-05-14 18:43:39 +02:00
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
Oleg Semyonov
e5970ed25d
logfs: fix unit tests (requires MIN declaration from pios_math.h)
2013-05-12 03:51:00 +03: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
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
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
Werner Backes
7c9d2ce9a5
Merge branch 'D-Lite/OP-934_rfm22b_rcvr_timeout_handling_next' into next
2013-05-10 09:59:30 +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
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
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