Commit Graph

154 Commits

Author SHA1 Message Date
Andrew Tridgell
9579e64a03 AP_Frsky_Telem: make get_telem_data() static
auto-create the object when it is needed for FPort
2020-01-02 09:52:57 +11:00
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
2020-01-02 09:52:57 +11:00
yaapu
dddfaa256f Ap_Frsky_Telem: replaced the passthrough scheduler with a WFQ one.
This replaces the default scheduler with a WFQ one
2019-10-29 10:27:17 +11:00
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
2019-09-05 10:50:17 +10:00
Michael du Breuil
ea82d6ea4c AP_FrSkyTelem: Refactor battery current interface 2019-07-14 00:28:00 -07:00
Michael du Breuil
67898d7320 AP_FrSky_Telem: Don't statically allocate the statustext_queue
This saves 280 bytes of RAM
2019-06-26 11:59:41 +10:00
Michael du Breuil
59e62ca2fc AP_FrSky_Telem: Make init return false if we failed to init 2019-06-26 11:59:41 +10:00
Michael du Breuil
889d9b7348 AP_Frsky: Fix AP_GPS.h include 2019-06-18 10:02:05 +10:00
Pierre Kancir
1abe8c04f2 AP_Frsky_Telem: move get_bearing_cd to Location and rename to get_bearing_to 2019-04-06 09:10:28 +11:00
Michael du Breuil
64c9705679 AP_Frsky_Telem: Improve includes 2019-04-05 20:12:53 +11:00
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.
2019-03-26 13:01:59 +11:00
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
2019-03-24 09:56:37 +11:00
Luis Vale Gonçalves
70c1414026 FrSky: Adjusted offsets
Following up on @yaapu comment https://github.com/ArduPilot/ardupilot/pull/10499#issuecomment-474625077
2019-03-22 09:49:01 +11:00
Peter Barker
1efc08b54e AP_FrSky_Telem: eliminate use of Copter's _ap data 2019-03-19 14:39:14 +11:00
Peter Barker
0194cd69a1 AP_Frsky_Telem: take is_flying from AP_Notify 2019-03-19 14:39:14 +11:00
Peter Barker
680008ba4f AP_Frsky_Telem: use gcs() to get frame string 2019-03-19 14:39:14 +11:00
Peter Barker
e5818308b9 AP_Frsky_Telem: move FRsky telemetry up into common GCS telemetry class 2019-03-19 14:39:14 +11:00
Michael du Breuil
fcb54c2d68 AP_Frsky_Telem: Enforce the use of 0 when velocity_NED is not available 2019-03-19 11:42:54 +11:00
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
2019-02-28 11:44:09 +11:00
Peter Barker
9023e6eb7d AP_Frsky_Telem: use rangefinder singleton 2019-02-12 17:53:23 +00:00
Peter Barker
4776183554 AP_Frsky_Telem: use battery singleton 2019-02-12 17:53:23 +00:00
Peter Barker
53111129f2 AP_Frsky_Telem: use AHRS singleton 2019-02-12 17:53:23 +00:00
Peter Barker
db4b1aa7aa AP_Frsky_Telem: use serialmanager singleton 2019-02-12 17:53:23 +00:00
Peter Barker
38a649033f AP_Frsky_Telem: adjust for location flags being moved out of union 2019-01-16 11:45:29 +11:00
Peter Barker
902bd7dda6 AP_Frsky_Telem: use mavlink definition to get statustext size
Also, add one for null-termination
2018-10-16 10:11:28 +11:00
Jochen Anglett
1c60417d03 AP_Frsky_Telem: add IMU temperature reporting 2018-10-02 12:02:04 +01:00
Peter Barker
4168bd709c AP_Frsky_Telem: use AP_FWVersion singleton 2018-06-18 19:10:37 +01:00
Michael du Breuil
3f581d0479 AP_Frsky_Telem: Remove unneeded battery failsafe parameters 2018-03-27 22:12:21 +01:00
Dr.-Ing. Amilcar Do Carmo Lucas
7d8aeefee4 AP_Frsky_Telem: NFC adapt to new AP_Battery method name 2018-03-03 17:18:54 +00:00
night-ghost
739c873991 AP_Frsky_Telem: fixed build warnings 2018-02-10 09:14:41 +11:00
Peter Barker
aea460df2c AP_FrSky: use GPS singleton 2017-12-27 00:58:02 +00:00
Andrew Tridgell
c618a27ee0 AP_Frsky_Telem: removed create() method for objects
See discussion here:

  https://github.com/ArduPilot/ardupilot/issues/7331

we were getting some uninitialised variables. While it only showed up in
AP_SbusOut, it means we can't be sure it won't happen on other objects,
so safest to remove the approach

Thanks to assistance from Lucas, Peter and Francisco
2017-12-14 08:12:28 +11:00
Florent Martel
fee79afb8e AP_Frsky_Telem: add second battery info 2017-10-27 02:00:29 -07:00
Florent Martel
5d9299d72f AP_Frsky_Telem: add second battery capacity parameter 2017-10-27 02:00:29 -07:00
Lucas De Marchi
8b5d799885 AP_Frsky_Telem: add static create method 2017-09-26 03:01:21 +01:00
Florent Martel
949aa4d9ca AP_Frsky_Telem: replace VDOP with extra GPS status bits
This removes VDOP (not really that useful) and replaces two of those
bits with GPS status info that now allows to differentiate between 3D
fix, DGPS, RTK Float, and RTK Fixed. This is written to maximize
backwards compatibility (by not shifting any other bits of the
gps_status variable)
2017-04-19 17:43:17 +01:00
Francisco Ferreira
c0238be345
AP_FrSky_Telem: fix sending messages 3 times
Initialize variable
Also some small style changes
2017-03-22 01:23:26 +00:00
Florent Martel
02c0885cfd AP_Frsky_Telem: fixes #5862
MAVLink strings of exactly 50 characters are not NULL terminated, so
instead we must check that the 50th character has been reached.
2017-03-22 01:22:14 +00:00
Randy Mackay
65c8f87b17 AP_Frsky_Telem: only use downward facing rangefinder 2017-02-27 15:18:12 +09:00
Peter Barker
89afa913f1 AP_Frsky_Telem: Support for a GCS singleton 2017-02-13 09:32:01 +11:00
Florent Martel
abc2cdb61b AP_FrSky_Telem: fixed sign of vertical velocity (+ve up) 2016-12-04 15:05:16 -08:00
floaledm
60c59bea4d AP_Frsky_Telem: make frsky_telemetry available to GCS_MAVLINK 2016-11-08 07:42:39 +11:00
Florent Martel
530955c15f AP_Frsky_Telem: remove arming check for transmitting params
Otherwise, on Plane, if ARMING REQUIRED is set to 0 (automatically
armed), no parameters are transmitted.
2016-11-04 23:11:00 -07:00
Florent Martel
5a96db5a44 AP_Frsky_Telem: replaced timer cond > with >= 2016-11-04 12:17:40 -07:00
Florent Martel
e43b2a73da AP_Frsky_Telem: increase sending params priority
If there's a lot of messages in the queue, params would not be
transmitted for a while, until the queue is empty, which can take a bit
of time during init.
2016-11-04 12:17:40 -07:00
Florent Martel
75905be376 AP_Frsky_Telem: simplified set_is_flying and moved to header file 2016-11-04 12:00:02 -07:00
Florent Martel
bc4ab70c1c AP_Frsky_Telem: added const to some declarations 2016-11-04 11:18:28 -07:00
floaledm
68b10979c3 AP_Frsky_Telem: added extra parentheses around pointed to values for readability
As suggested by tridge
2016-11-04 11:18:28 -07:00
Florent Martel
328e6d6886 AP_Frsky_Telem: removed sending redundant VSpd, Alt, and VFAS sensor values, which can now be handled by OpenTX 2016-11-04 11:10:09 -07:00
murata
c808ee2f49 Global: To nullptr from NULL.
RC_Channel: To nullptr from NULL.

AC_Fence: To nullptr from NULL.

AC_Avoidance: To nullptr from NULL.

AC_PrecLand: To nullptr from NULL.

DataFlash: To nullptr from NULL.

SITL: To nullptr from NULL.

GCS_MAVLink: To nullptr from NULL.

DataFlash: To nullptr from NULL.

AP_Compass: To nullptr from NULL.

Global: To nullptr from NULL.

Global: To nullptr from NULL.
2016-11-02 16:04:47 -02:00
floaledm
5386edb791 AP_Frsky_Telem: fix setting of land_complete flag
When is_flying is true, land_complete should be set to 0, and
conversely.
2016-11-02 10:26:50 +11:00
floaledm
1aab5eec38 AP_Frsky_Telem: send ap_status only once initialized
Same as what is found in GCS_MAVLink.cpp for copter
2016-11-02 08:31:35 +11:00
floaledm
7045013933 AP_Frsky_Telem: use airspeed value w/o constraints of ground speed and AHRS_WIND_MAX 2016-10-27 11:11:38 -03:00
floaledm
6869dace08 AP_Frsky_Telem: moved msg queueing of fw string 2016-10-26 09:49:30 -07:00
floaledm
56432f04d3 AP_Frsky_Telem: fixed airspeed; now same as VFR_HUD 2016-10-26 09:36:22 -07:00
Mathieu OTHACEHE
152edf7189 Global: remove mode line from headers
Using a global .dir-locals.el file is a better alternative than
reincluding the same emacs header in every file of the project.
2016-10-24 09:42:01 -02:00
Peter Barker
6ccf36439d AP_Frsky_Telem: actually set _ap.value flags based in is_flying
Closes #5017
2016-10-18 22:17:07 -07:00
floaledm
49e47fd679 AP_Frsky_Telem: airspeed scaling factor fix 2016-10-10 15:29:49 -07:00
floaledm
602b81a4d7 AP_Frsky_Telem: add ekf_status check 2016-09-27 09:20:32 -07:00
Tom Pittenger
99d48d8bbd AP_FrSky_Telem: cleanup, non-functional change 2016-09-26 13:12:42 -07:00
floaledm
fcfaa98bb6 AP_Frsky_Telem: reworked _statustext_queue.empty() check 2016-09-26 13:07:18 -07:00
Tom Pittenger
8001cc403b AP_Frsky_Telem: fix is_flying assignment 2016-09-26 13:00:33 -07:00
floaledm
5e022bf631 AP_Frsky_Telem: fix *_ap.value issue for Plane
set_is_flying does operations on a nullptr, plus we loose the ability to
update ap_status accordingly for Plane
2016-09-26 12:35:47 -05:00
floaledm
ff0d0b1aa5 AP_Frsky_Telem: use ringbuffer for Frsky message queueing 2016-09-25 18:11:45 -07:00
Tom Pittenger
b3d5375aa0 AP_Frsky_Telem: simplify init by assuming everything is nullptr
- also always queue the firmware message regardless of protocol type
2016-09-25 10:42:02 -07:00
Tom Pittenger
6991ca53b3 AP_Frsky_Telem: allow default arguments in init() to set things to nullptr 2016-09-25 10:42:02 -07:00
floaledm
94aa6c4cfb AP_Frsky_Telem: consolidate into a single frsky.init() 2016-09-25 10:42:02 -07:00
Tom Pittenger
8eb7a062c7 AP_Frsky_Telem: tiny text change in statusText 2016-09-21 16:11:04 -07:00
floaledm
9e0cfc81ea AP_Frsky_Telem: updated sensor_status messages according to what is found in Mission Planner
added "NO RC Receiver" and "Bad Logging"
2016-09-21 15:51:04 -07:00
floaledm
5125846ac0 AP_Frsky_Telem: Plane support 2016-09-21 12:12:37 -07:00
floaledm
b2b6c88edf AP_Frsky_Telem: renamed vars and funcs for consistency/clarity 2016-09-21 11:32:21 -07:00
floaledm
4d03be94cf AP_Frsky_Telem: removed reliance on home_distance and home_bearing which are only in copter 2016-09-06 11:42:32 +10:00
floaledm
33bd359463 AP_Frsky_Telem: LANDCOMPLETE switched to to ISFLYING flag 2016-09-06 11:23:29 +10:00
floaledm
4dc98faa48 AP_Frsky_Telem: transmit airspeed instead of groundspeed, if available 2016-09-06 11:15:11 +10:00
floaledm
8deba69715 AP_Frsky_Telem: added 1 to control_mode passed on Frsky link 2016-09-06 11:14:48 +10:00
floaledm
4f8cea6844 AP_Frsky_Telem: simplified constructor 2016-09-06 11:14:48 +10:00
Andrew Tridgell
acbeb29fbe AP_Frsky_Telem: use const references where possible
save some stack space
2016-09-02 11:12:18 +10:00
Andrew Tridgell
a4ca4dbd9e AP_FrSky_Telem: use a constant string for firmware version 2016-08-25 11:00:17 +10:00
Andrew Tridgell
62388fc991 AP_FrSky_Telem: use constant strings in message queueing 2016-08-25 10:29:57 +10:00
Andrew Tridgell
183283ba07 AP_FrSky_Telem: make _msg non-static
there are no calls to this from outside the library. If we do add some
then we can change the API as needed
2016-08-25 10:23:03 +10:00
floaledm
2f54e67996 AP_FrSky_Telem: fixed sending last message chunk
Was sent only once, now sent 3 times (as planned)
2016-08-25 10:16:20 +10:00
Andrew Tridgell
185ef73684 AP_Frsky_Telem: fixed usage of sensor error bits
using these asyncronously via pointers is error prone as the updates
to these masks is not atomic relative to the IO callback in
AP_Frsky_Telem
2016-08-25 10:16:19 +10:00
Andrew Tridgell
f4d59d720a AP_FrSky_Telem: removed use of pointer to control_mode
it is an enum, and it is invalid to take a pointer to an enum as a
uint8_t*
2016-08-25 10:16:19 +10:00
Andrew Tridgell
ab77fdfa02 AP_FrSky_Telem: removed dependency on inertialnav
the AP_InertialNav library is deprecated in favor of AP_AHRS. We
should not introduce a new dependency on it
2016-08-25 10:16:19 +10:00
floaledm
b71e0d73b9 AP_FrSky_Telem: added SPort passthrough protocol 2016-08-25 10:16:19 +10:00
floaledm
a9b01b470c AP_FrSky_Telem: cosmetic changes 2016-08-25 10:16:17 +10:00
floaledm
de2a7013b4 AP_FrSky: simplified lib rework 2016-08-25 10:16:17 +10:00
Ricardo de Almeida Gonzaga
08a022fa6a AP_Frsky_Telem: Fix typos 2016-05-13 19:20:05 -03:00
Randy Mackay
ea3c44f9fa AP_Frsky_Telem: remove unnecessary abs
resolves a compiler warning
2016-04-23 23:06:22 -07:00
Lucas De Marchi
761ed7ae03 AP_Frsky_Telem: replace header guard with pragma once 2016-03-16 18:40:40 +11:00
Caio Marcelo de Oliveira Filho
2b982d6391 AP_FrSkyTelem: use millis/micros/panic functions 2015-11-20 12:30:41 +09:00
Gustavo Jose de Sousa
00219c5e0c AP_Frsky_Telem: standardize inclusion of libaries headers
This commit changes the way libraries headers are included in source files:

 - If the header is in the same directory the source belongs to, so the
 notation '#include ""' is used with the path relative to the directory
 containing the source.

 - If the header is outside the directory containing the source, then we use
 the notation '#include <>' with the path relative to libraries folder.

Some of the advantages of such approach:

 - Only one search path for libraries headers.

 - OSs like Windows may have a better lookup time.
2015-08-11 16:28:43 +10:00
Lucas De Marchi
435613de69 AP_Frsky_Telem: use functor macros
Functor is not yet being used but let's make is macro fallback to the
previous Delegate implementation for easy of transition between the two.
2015-05-26 13:46:53 +10:00
Tom Pittenger
12b604663c FrSky_Telem: fix compile warnings re float constants 2015-04-24 12:39:21 +09:00
Randy Mackay
c148330c2b FrSkyTelem: integrate Serial Manager instance 2015-04-01 14:59:18 -07:00
Andrew Tridgell
1d272e5a32 AP_Frsky_Telem: don't use flow control for FrSky
Pair-Programmed-With: Randy Mackay <rmackay9@yahoo.com>
2015-01-29 15:53:41 +11:00
Andrew Tridgell
085a926e61 AP_Frsky_telem: update for find_serial() change 2015-01-29 15:37:18 +11:00
Randy Mackay
19aa8939de FrSky_Telem: init uart when protocol is S-Port 2015-01-29 14:05:13 +11:00
Randy Mackay
5c086acc15 FrSky_Telem: comments, formatting and reordering
No functional change
Added comments and moved main functions to the top
Removed spaces between function name and brackets
2015-01-29 14:05:13 +11:00
Randy Mackay
6ef996d553 FrSky_Telem: init all members to zero and move to cpp 2015-01-29 14:05:13 +11:00