]> code.octet-stream.net Git - m17rt/blobdiff - m17core/src/reflector/convert.rs
Make netclient work against mrefd
[m17rt] / m17core / src / reflector / convert.rs
index 7ad54c375b588ffa202ce13a2806a33e4e242deb..716e68ac3beb2fdfafe8887f55a12e710895d8e3 100644 (file)
@@ -7,6 +7,7 @@ use super::packet::Voice;
 /// Accepts `Voice` packets from a reflector and turns them into LSF and Stream frames.
 ///
 /// This is the format required for the voice data to cross the KISS protocol boundary.
+#[derive(Debug, Default)]
 pub struct VoiceToRf {
     /// Link Setup most recently acquired
     lsf: Option<LsfFrame>,
@@ -61,6 +62,7 @@ impl VoiceToRf {
 ///
 /// For a series of transmissions this object should be re-used so that Stream ID is correctly
 /// changed after each new LSF.
+#[derive(Debug, Clone)]
 pub struct RfToVoice {
     lsf: LsfFrame,
     stream_id: u16,
@@ -68,7 +70,9 @@ pub struct RfToVoice {
 
 impl RfToVoice {
     pub fn new(lsf: LsfFrame) -> Self {
-        Self { lsf, stream_id: 0 }
+        // no_std "random"
+        let stream_id = &lsf as *const LsfFrame as u16;
+        Self { lsf, stream_id }
     }
 
     pub fn process_lsf(&mut self, lsf: LsfFrame) {