Skip to main content

SyncWord

Enum SyncWord 

Source
pub enum SyncWord {
    Public,
    Private,
    Custom(u8),
}
Expand description

The LoRa sync word, which keeps one network’s frames apart from another’s.

Both families carry it as one byte. The SX127x writes the byte to RegSyncWord. The SX126x spreads its two nibbles over its two sync word registers with a 4 after each, so 0x34 is written as 0x3444 and 0x12 as 0x1424, which are the chip’s own public and private values, and any other byte takes the same layout, the one RadioLib’s setSyncWord writes.

§Examples

use pamoja_radios::radio::SyncWord;
use pamoja_radios::sx126x::config::SyncWord as Sx126xSyncWord;

assert_eq!(SyncWord::from_byte(0x34), SyncWord::Public);
assert_eq!(SyncWord::Custom(0x2B).sx126x(), Sx126xSyncWord::Custom(0x24B4));

Variants§

§

Public

0x34, for a public network such as LoRaWAN.

§

Private

0x12, for a private network, and both families’ reset value.

§

Custom(u8)

Another byte.

Implementations§

Source§

impl SyncWord

Source

pub const fn to_byte(self) -> u8

Returns the byte.

§Returns

0x34 for a public network, 0x12 for a private one, or the custom byte.

Source

pub const fn from_byte(byte: u8) -> SyncWord

Names a byte.

§Arguments
  • byte - the sync word byte.
§Returns

SyncWord::Public for 0x34, SyncWord::Private for 0x12, and a custom word for any other byte.

Source

pub const fn sx126x(self) -> SyncWord

Returns the word as the SX126x takes it.

§Returns

The two-byte word, each nibble of the byte followed by a 4.

Source

pub const fn sx127x(self) -> SyncWord

Returns the word as the SX127x takes it.

§Returns

The RegSyncWord value.

Trait Implementations§

Source§

impl Clone for SyncWord

Source§

fn clone(&self) -> SyncWord

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Copy for SyncWord

Source§

impl Debug for SyncWord

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Eq for SyncWord

Source§

impl Hash for SyncWord

Source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
Source§

impl PartialEq for SyncWord

Source§

fn eq(&self, other: &SyncWord) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl StructuralPartialEq for SyncWord

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.