diff --git a/embassy-net/src/lib.rs b/embassy-net/src/lib.rs index 3f915016..53693563 100644 --- a/embassy-net/src/lib.rs +++ b/embassy-net/src/lib.rs @@ -247,7 +247,7 @@ impl Stack { #[cfg(feature = "medium-ip")] Medium::Ip => HardwareAddress::Ip, #[cfg(feature = "medium-ieee802154")] - Medium::Ieee802154 => HardwareAddress::Ieee802154(Ieee802154Address::Absent), + Medium::Ieee802154 => HardwareAddress::Ieee802154(Ieee802154Address::Extended(device.ieee802154_address())), #[allow(unreachable_patterns)] _ => panic!( "Unsupported medium {:?}. Make sure to enable it in embassy-net's Cargo features.", @@ -747,6 +747,13 @@ impl Inner { ))); } + #[cfg(feature = "medium-ieee802154")] + if self.device.capabilities().medium == Medium::Ieee802154 { + s.iface.set_hardware_addr(HardwareAddress::Ieee802154(Ieee802154Address::Extended( + self.device.ieee802154_address(), + ))); + } + let timestamp = instant_to_smoltcp(Instant::now()); let mut smoldev = DriverAdapter { cx: Some(cx),