last note diondokter, I honestly find this works well, for `0..=32` connected peers over a shared RS-485 bus: ```rust pub struct Controller { peers: Mutex, } impl Controller { pub const fn uninit() -> Self { /* ... */ } pub async fn init(&self, sli: &mut RawFrameSlice) { /* ... */ } pub async fn send(&self, mac: u64, frame: FrameBox) -> Result<(), SendError> { /* ... */ } pub async fn recv_from(&self, mac: u64) -> Result { /* ... */ } pub async fn step(&self, serial: &mut T, rand: &mut Rand) { /* ... */ } pub async fn connected(&self) -> heapless::Vec { /* ... */ } } ```