SPLRadioRoom
SPLRadioRoom copied to clipboard
Add support for TCP/IP autopilot connection
Adding support for TCP autopilot connection looks pretty straightforward. You can try it if you have time. Here are a few tips:
- RadioRoom already has class MAVLinkTCP in mavio library that works as a TCP client for MAVlink protocol. It probably could be used as-is to communicate with the autopilot.
- MAVLinkAutopilot class has field 'MAVLinkSerial serial'. We can inherit MAVLinkTCP and MAVLinkSerial from a common abstract base class (interface), called say MAVLinkInterface and replace 'MAVLinkSerial serial' field by generic 'MAVLinkInterface autopilot'
- Add new init2(host, port, ...) method to MAVLinkAutopilot class that will initialize MAVLinkTCP and assign it to 'autopilot' field.
- Call either MAVLinkAutopilot:init or MAVLinkAutopilot:init2 in MAVLinkHandler depending on autopilot/protocol configuration property and get TCP host and port from [autopilot] section in radioroom.conf.