can_pus_handler #4
1
src/interface/can.rs
Normal file
1
src/interface/can.rs
Normal file
@ -0,0 +1 @@
|
|||||||
|
//! This is a preliminary implementation of the necessary infrastructure to enable communication over OPS-SAT's internal CAN Bus.
|
@ -1,2 +1,3 @@
|
|||||||
|
pub mod can;
|
||||||
pub mod tcp;
|
pub mod tcp;
|
||||||
pub mod udp;
|
pub mod udp;
|
||||||
|
@ -11,7 +11,7 @@ use satrs::{
|
|||||||
tmtc::{CcsdsDistributor, CcsdsError, ReceivesCcsdsTc, TmPacketSourceCore},
|
tmtc::{CcsdsDistributor, CcsdsError, ReceivesCcsdsTc, TmPacketSourceCore},
|
||||||
};
|
};
|
||||||
|
|
||||||
use crate::ccsds::CcsdsReceiver;
|
use crate::tmtc::ccsds::CcsdsReceiver;
|
||||||
|
|
||||||
#[derive(Default, Clone)]
|
#[derive(Default, Clone)]
|
||||||
pub struct SyncTcpTmSource {
|
pub struct SyncTcpTmSource {
|
||||||
|
@ -82,6 +82,7 @@ mod tests {
|
|||||||
sync::{Arc, Mutex},
|
sync::{Arc, Mutex},
|
||||||
};
|
};
|
||||||
|
|
||||||
|
use ops_sat_rs::config::{components, OBSW_SERVER_ADDR};
|
||||||
use satrs::{
|
use satrs::{
|
||||||
spacepackets::{
|
spacepackets::{
|
||||||
ecss::{tc::PusTcCreator, WritablePusPacket},
|
ecss::{tc::PusTcCreator, WritablePusPacket},
|
||||||
@ -89,7 +90,6 @@ mod tests {
|
|||||||
},
|
},
|
||||||
tmtc::ReceivesTcCore,
|
tmtc::ReceivesTcCore,
|
||||||
};
|
};
|
||||||
use ops_sat_rs::config::{components, OBSW_SERVER_ADDR};
|
|
||||||
|
|
||||||
use super::*;
|
use super::*;
|
||||||
|
|
||||||
|
@ -18,22 +18,20 @@ use satrs::{
|
|||||||
use crate::pus::stack::PusStack;
|
use crate::pus::stack::PusStack;
|
||||||
use crate::pus::test::create_test_service_dynamic;
|
use crate::pus::test::create_test_service_dynamic;
|
||||||
use crate::pus::{PusReceiver, PusTcMpscRouter};
|
use crate::pus::{PusReceiver, PusTcMpscRouter};
|
||||||
use crate::tm_funnel::TmFunnelDynamic;
|
use crate::tmtc::tm_funnel::TmFunnelDynamic;
|
||||||
use crate::tmtc::TcSourceTaskDynamic;
|
use crate::tmtc::TcSourceTaskDynamic;
|
||||||
use crate::{
|
use crate::{
|
||||||
ccsds::CcsdsReceiver,
|
|
||||||
interface::tcp::{SyncTcpTmSource, TcpTask},
|
interface::tcp::{SyncTcpTmSource, TcpTask},
|
||||||
interface::udp::{DynamicUdpTmHandler, UdpTmtcServer},
|
interface::udp::{DynamicUdpTmHandler, UdpTmtcServer},
|
||||||
logger::setup_logger,
|
logger::setup_logger,
|
||||||
|
tmtc::ccsds::CcsdsReceiver,
|
||||||
tmtc::PusTcSourceProviderDynamic,
|
tmtc::PusTcSourceProviderDynamic,
|
||||||
};
|
};
|
||||||
|
|
||||||
mod ccsds;
|
|
||||||
mod interface;
|
mod interface;
|
||||||
mod logger;
|
mod logger;
|
||||||
mod pus;
|
mod pus;
|
||||||
mod requests;
|
mod requests;
|
||||||
mod tm_funnel;
|
|
||||||
mod tmtc;
|
mod tmtc;
|
||||||
|
|
||||||
#[allow(dead_code)]
|
#[allow(dead_code)]
|
||||||
|
@ -10,6 +10,9 @@ use satrs::{
|
|||||||
use std::sync::mpsc::{self, SendError, Sender, TryRecvError};
|
use std::sync::mpsc::{self, SendError, Sender, TryRecvError};
|
||||||
use thiserror::Error;
|
use thiserror::Error;
|
||||||
|
|
||||||
|
pub mod ccsds;
|
||||||
|
pub mod tm_funnel;
|
||||||
|
|
||||||
#[derive(Debug, Clone, PartialEq, Eq, Error)]
|
#[derive(Debug, Clone, PartialEq, Eq, Error)]
|
||||||
pub enum MpscStoreAndSendError {
|
pub enum MpscStoreAndSendError {
|
||||||
#[error("Store error: {0}")]
|
#[error("Store error: {0}")]
|
Loading…
Reference in New Issue
Block a user