olliw42
c034f8a099
GCS_MAVLink: add find_by_mavtype_and_compid
2022-09-12 08:44:38 +09:00
Randy Mackay
8c19af72e0
GCS_MAVLink: learn routes even on private channels
...
Co-authored-by: Peter Barker <pbarker@barker.dropbear.id.au>
2022-06-06 15:50:13 +10:00
Peter Barker
7c8df47ac9
GCS_MAVLink: process messages sent to broadcast system
...
.... even if we've forwarded them to someone else.
2020-10-21 18:22:48 +11:00
Peter Barker
d3ba7a8409
GCS_MAVLink: don't learn a route to the broadcast component
...
Using a component ID of 0 for your source is invalid according to
common.xml
However, some clients do use it.
This stops us learning a route to that client for the broadcast client
for our own system ID.
2020-10-21 18:22:48 +11:00
Peter Barker
0c88af99da
GCS_MAVLink: revert removal of private channel check when forwarding
...
This reverts 6dc77c97ce
The commit caused a regression on Solo as the gimbal is "nodding",
indicating traffic from the autopilot is getting through to the gimbal.
2020-09-25 09:42:27 +10:00
Michael du Breuil
6dc77c97ce
GCS_MAVLink: Remove redundant check for private channels
...
We can't learn the route for sending to a private channel, so we
shouldn't need to actually check it when iterating the routes.
2020-08-11 09:49:42 +10:00
Michael du Breuil
6773821b3b
GCS_MAVLink: Don't forward MAVLink data on channels marked private, make private channels more private
2020-07-22 07:17:49 +10:00
Peter Barker
f158533fe9
GCS_MAVLink: allow private channels to also be active
...
This will allow for logging of private channels.
2020-06-09 10:37:32 +10:00
Peter Barker
d1bbe4f03b
GCS_MAVLink: correct output when ROUTING_DEBUG is set
...
This is a define in the code itself, so rarely a problem
2019-12-20 10:00:07 +11:00
Peter Barker
a96a4c0510
GCS_MAVLink: correct encoding used for send_to_components
...
These have to be packed onto the channel - otherwise they may ge
tencoded as mavlink1 instead of mavlink2 (or vice-versa)
2019-11-26 12:10:12 +11:00
Pierre Kancir
b1506ca652
GCS_MAVLink: pass mavlink_message_t by const reference
2019-07-16 20:51:42 +10:00
Matt
adf78ab8d3
MAVLINK: Forward to private channels if sysid and compid match
...
If the target system ID and target component ID match a private channel,
it is ok to forward that mavlink traffic. Any traffic without a
matching sysid or compid will not be forwarded on the channel
2018-11-28 11:33:23 +11:00
Andrew Tridgell
1e354d53c9
GCS_MAVLink: added private channel mask
...
this allows a channel to be marked "private". A private channel gets
heartbeats, but doesn't get forwarded packets or broadcast messages
This is used by solo gimbal driver
2018-11-24 11:00:37 +11: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
Tom Pittenger
3a38e29b39
GCS_MAVLink: do not auto-forward ADSB_VEHICLE packets
2016-06-19 11:24:29 -07:00
Andrew Tridgell
b855c70139
GCS_MAVLink: don't route RADIO and RADIO_STATUS packets
...
they don't mean anything off the local link
2016-05-31 22:13:05 +10:00
Andrew Tridgell
cd1f43a6ce
GCS_MAVLink: use generated target_system and target_component offsets
2016-05-21 15:25:17 +10:00
Andrew Tridgell
12c1d58511
GCS_MAVLink: cope with different packet overheads with signing
...
use common macros for determining if there is sufficient space to send
a packet
2016-05-21 15:25:14 +10:00
Ricardo de Almeida Gonzaga
3f92a64b99
GCS_MAVLink: Fix typos
2016-05-13 19:20:05 -03:00
proficnc
c8b3c527f9
GCS_MAVLink: add route mask for blocking MAVlink forwading
2016-05-12 17:44:06 +10:00
Jonathan Challinger
ac3b5a4400
GCS_MAVLink: add messages to routing switch statement
2016-01-23 10:35:44 +09:00
Andrew Tridgell
cefb32566f
GCS_MAVLink: fixed corner case in MAVLink routing
...
when a GCS sends a command to a system ID that isn't our system ID,
the GCS may use a non-advertised component ID such as
MAV_COMP_ID_SYSTEM_CONTROL. Those packets should be fowarded to the
target system even though the target system has not specifically
advertised that target sysid/compid tuple.
2015-11-13 13:38:53 +11:00
Gustavo Jose de Sousa
d7a2ef3e35
GCS_MAVLink: 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:38:25 +10:00
Randy Mackay
e092902613
GCS_MAVLink: add find_by_mavtype
2015-07-25 10:52:59 +09:00
Arthur Benemann
e3398648d7
GCS_MAVLink: fix debug formatting
2015-07-21 21:41:34 +09:00
Randy Mackay
521f3dc4b9
GCS_MAVLink: only forward msg once per channel
...
Issue found and alternative fix provided by Arthur Benemann
2015-07-21 21:41:32 +09:00
Randy Mackay
1f705eb6a3
GCS_MAVLink: add send_to_components method
2015-04-20 13:50:04 +09:00
Andrew Tridgell
2aae594371
GCS_MAVLink: handle serial loopback in routing
2015-03-04 20:24:11 +11:00
Andrew Tridgell
a1536d575b
GCS_MAVLink: added GIMBAL msgs to routing
2015-02-03 09:49:14 +11:00
Andrew Tridgell
b5a5b71512
GCS_MAVLink: reverse sense of check_and_forward()
...
also increase number of routes on larger systems and improved route
learning logic
2014-12-17 10:32:28 +11:00
Andrew Tridgell
7f817502c4
GCS_MAVLINK: implement new routing rules
...
see description in coments
2014-12-17 10:32:28 +11:00
Randy Mackay
b54b7b7448
GCS_MAVLink: fix compiler error
2014-12-11 16:26:26 +09:00
Andrew Tridgell
ade7f9e1a9
GCS_MAVLink: fixed forwarding of non-targetted messages
2014-12-11 12:32:50 +09:00
Andrew Tridgell
fcf17829cc
GCS_MAVLink: fixed addition to routing table
2014-12-11 12:32:48 +09:00
Andrew Tridgell
34be7f808e
GCS_MAVLink: only try to fwd packets to active channels
2014-12-11 12:32:30 +09:00
Andrew Tridgell
b91529622b
GCS_MAVLink: initial implementation of MAVLink routing object
...
will be used to auto-route packets over all available links
2014-12-11 12:30:50 +09:00