Пример #1
0
 private void HandleHeartbeat(RawTelemetryConfig config)
 {
     _inputPackets
     .Where(_ => _.MessageId == HeartbeatPacket.PacketMessageId)
     .Cast <HeartbeatPacket>()
     .Subscribe(OnHeartBeat, _disposeCancel.Token);
     Observable
     .Timer(TimeSpan.FromMilliseconds(config.HeartbeatTimeoutMs), TimeSpan.FromMilliseconds(config.HeartbeatTimeoutMs))
     .Subscribe(CheckConnection, _disposeCancel.Token);
 }
Пример #2
0
        public RawTelemetry(IMavlinkV2Connection connection, RawTelemetryConfig config)
        {
            _config       = config;
            _inputPackets = connection.Where(FilterVehicle);

            HandleStatistic();
            HandleHeartbeat(config);
            HandleSystemStatus();
            HandleGps();
            HandleHighresImu();
            HandleVfrHud();
            HandleAttitude();
            HandleBatteryStatus();
            HandleAltitude();
            HandleExtendedSysState();
            HandleHome();
        }