Peter Barker
9aec1e48af
AP_Frsky_Telem: tidy mavlite message handling
...
Including calling into reboot-vehicle rather than the hal reboot method.
4 years ago
Peter Barker
e0f8e003ec
AP_Frsky_Telem: move mavlite message handling to own object
4 years ago
Peter Barker
b4e12da2c8
AP_Frsky_Telem: rework SPort-to-MAVlite conversion
...
Breaks the single object into three distinct parts objects, and hidesas
much information from the other parts as possible.
4 years ago
yaapu
988af83fce
AP_Frsky_Telem: added support for frsky sport/fport bidirectional telemetry
4 years ago
yaapu
a4297bcdd7
AP_Frsky_SPort: reduce acceptable response delay to 6500us
4 years ago
yaapu
33f19eec27
AP_Frsky_Telem: tidy parsers and splitting of statustexts
4 years ago
yaapu
6abf4ec2b5
AP_Frsky_Telem: tidy creation of frsky data
4 years ago
Peter Barker
6cbb553adc
AP_Frsky_Telem: reformat new filed using astyle.sh; no history to lose
4 years ago
Peter Barker
9c211d9847
AP_Frsky_Telem: move #defines to be static const members of AP_Frsky_Backend
4 years ago
Peter Barker
0bb7a31850
AP_Frsky_Telem: move all method implementations into correct files
4 years ago
Peter Barker
05d7950261
AP_Frsky_Telem: frontend/backend split
4 years ago
yaapu
683df64d86
AP_Frsky_Telem: fix frsky serial 10 parameters
...
param rotation now is frame_type, battery_1, battery_2 (only if present)
5 years ago
yaapu
13592cef91
AP_Frsky_Telem: removed time constraint to allow SITL regression testing
5 years ago
yaapu
6303c700d4
AP_Frsky_Telem: prevent SPort frame fragmentation by writing whole 8byte frames vs writing single bytes
...
general scheduler delays could introduce small delays when writing SPort frames to the uart one byte
at the time potentially leading to rx desyncs on the SPort bus.
This fix replaces single byte writes with full frame writes.
The library has around 10ms to repond to polling so to guarantee frame integrity responses taking
longer than 7500us are discarded
5 years ago
Andy Piper
44e5171f2b
AP_Frsky_Telem: refactor common code into AP_RCTelemetry
...
refactor naming
when using external data AP_Frsky_Telem::init() has to call AP_RCTelemetry::init() and exit.
No need to initialize serial ports
5 years ago
yaapu
fed8ecc3b0
AP_Frsky_Telem: fix for protocol=4 GAlt=0 and GSPd=0
...
This fixes protocol 4 GPS altitude and speed error, both were reported as constant 0
for cal_gps_position() was never called
5 years ago
yaapu
0c5618c9e7
AP_Frsky_Telem: add semaphores to ahrs access and fix potential array out of bounds access
...
use a semaphore for non atomic ahrs calls and fix a potential array out of bounds
access for faster than sport telemetry links.
5 years ago
yaapu
b606c0df64
AP_Frsky_Telem: added VSpd to telemetry protocol 4
...
The Frsky vario "virtual" sensor was reporting altitude but not vertical speed.
This patch adds VSpd as a new sensor when protocol 4 is selected.
GPS frsky sensor is migrated to 2 byte sensor ID and needs rediscovery if using the previous 1 byte version
5 years ago
yaapu
e9e02542f1
AP_Frsky_Telem: fix for missing WFQ scheduler initialization
...
this fixes a missing WFQ scheduler initialization and sets a rate limiter on
status text messages to prevent text corruption
5 years ago
Andrew Tridgell
3556f33051
AP_Frsky_Telem: fixed a race condition with statustext handling
...
this fixes an issue that can cause a hardfault. See this bug report:
https://discuss.ardupilot.org/t/hexa-crash-after-watchdog-reset/50917
ObjectArray is not thread safe
5 years ago
Andrew Tridgell
9579e64a03
AP_Frsky_Telem: make get_telem_data() static
...
auto-create the object when it is needed for FPort
5 years ago
Andrew Tridgell
49f81fbd18
AP_FrSky_Telem: allow for external library to send SPort data
...
this provides the API needed for AP_RCProtocol_FPort to send
passthrough data over FPORT
5 years ago
yaapu
dddfaa256f
Ap_Frsky_Telem: replaced the passthrough scheduler with a WFQ one.
...
This replaces the default scheduler with a WFQ one
5 years ago
Andrew Tridgell
7afd51d03e
AP_Frsky_Telem: move FrSky handling to it's own thread
...
we are getting timing issues sharing with the other users of the IO
thread. The FrSky protocols are quite timing sensitive, so this should
help
6 years ago
Michael du Breuil
ea82d6ea4c
AP_FrSkyTelem: Refactor battery current interface
6 years ago
Michael du Breuil
67898d7320
AP_FrSky_Telem: Don't statically allocate the statustext_queue
...
This saves 280 bytes of RAM
6 years ago
Michael du Breuil
59e62ca2fc
AP_FrSky_Telem: Make init return false if we failed to init
6 years ago
Michael du Breuil
889d9b7348
AP_Frsky: Fix AP_GPS.h include
6 years ago
Pierre Kancir
1abe8c04f2
AP_Frsky_Telem: move get_bearing_cd to Location and rename to get_bearing_to
6 years ago
Michael du Breuil
64c9705679
AP_Frsky_Telem: Improve includes
6 years ago
yaapu
efdad1fca7
AP_Frsky_Telem: fix for passthrough telemetry stall while sending message chunks
...
This prevents the library from giving message chunks a too high priority leading to
all telemetry packets but 0x5006(attitude) to starve.
6 years ago
yaapu
aca1651488
AP_Frsky_Telem: fix ap_status_timer handling
...
method should return only after ap_status_timer has elapsed and vehicle is initialized
otherwise we waste a chance to send a packet
6 years ago
Luis Vale Gonçalves
70c1414026
FrSky: Adjusted offsets
...
Following up on @yaapu comment https://github.com/ArduPilot/ardupilot/pull/10499#issuecomment-474625077
6 years ago
Peter Barker
1efc08b54e
AP_FrSky_Telem: eliminate use of Copter's _ap data
6 years ago
Peter Barker
0194cd69a1
AP_Frsky_Telem: take is_flying from AP_Notify
6 years ago
Peter Barker
680008ba4f
AP_Frsky_Telem: use gcs() to get frame string
6 years ago
Peter Barker
e5818308b9
AP_Frsky_Telem: move FRsky telemetry up into common GCS telemetry class
6 years ago
Michael du Breuil
fcb54c2d68
AP_Frsky_Telem: Enforce the use of 0 when velocity_NED is not available
6 years ago
Dr.-Ing. Amilcar do Carmo Lucas
f61523b378
AP_Frsky_Telem: replace location_offset() and get_distance() function calls with Location object member function calls
...
This allows removing duplicated code
6 years ago
Peter Barker
9023e6eb7d
AP_Frsky_Telem: use rangefinder singleton
6 years ago
Peter Barker
4776183554
AP_Frsky_Telem: use battery singleton
6 years ago
Peter Barker
53111129f2
AP_Frsky_Telem: use AHRS singleton
6 years ago
Peter Barker
db4b1aa7aa
AP_Frsky_Telem: use serialmanager singleton
6 years ago
Peter Barker
38a649033f
AP_Frsky_Telem: adjust for location flags being moved out of union
6 years ago
Peter Barker
902bd7dda6
AP_Frsky_Telem: use mavlink definition to get statustext size
...
Also, add one for null-termination
6 years ago
Jochen Anglett
1c60417d03
AP_Frsky_Telem: add IMU temperature reporting
6 years ago
Peter Barker
4168bd709c
AP_Frsky_Telem: use AP_FWVersion singleton
7 years ago
Michael du Breuil
3f581d0479
AP_Frsky_Telem: Remove unneeded battery failsafe parameters
7 years ago
Dr.-Ing. Amilcar Do Carmo Lucas
7d8aeefee4
AP_Frsky_Telem: NFC adapt to new AP_Battery method name
7 years ago
night-ghost
739c873991
AP_Frsky_Telem: fixed build warnings
7 years ago