aboutsummaryrefslogtreecommitdiff
path: root/src/lib.rs
diff options
context:
space:
mode:
authordiogo464 <[email protected]>2025-12-09 22:30:42 +0000
committerdiogo464 <[email protected]>2025-12-09 22:30:42 +0000
commita5845673cf052b606f722be10d48c5d963958050 (patch)
treee21bf5848163d07fce4bf8e3d7474bfeed5d1aff /src/lib.rs
parent6bb6d358f39c31b5486621b49da463f97226fea5 (diff)
moved embedded-mqtt crate to a module
Diffstat (limited to 'src/lib.rs')
-rw-r--r--src/lib.rs14
1 files changed, 8 insertions, 6 deletions
diff --git a/src/lib.rs b/src/lib.rs
index 3e91272..714e186 100644
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -28,6 +28,8 @@ use heapless::{
28}; 28};
29use serde::Serialize; 29use serde::Serialize;
30 30
31mod mqtt;
32
31pub mod log; 33pub mod log;
32pub use log::Format; 34pub use log::Format;
33 35
@@ -215,7 +217,7 @@ pub struct DeviceResources {
215 waker: AtomicWaker, 217 waker: AtomicWaker,
216 entities: [RefCell<Option<EntityData>>; Self::ENTITY_LIMIT], 218 entities: [RefCell<Option<EntityData>>; Self::ENTITY_LIMIT],
217 219
218 mqtt_resources: embedded_mqtt::ClientResources, 220 mqtt_resources: mqtt::ClientResources,
219 publish_buffer: Vec<u8, 2048>, 221 publish_buffer: Vec<u8, 2048>,
220 subscribe_buffer: Vec<u8, 128>, 222 subscribe_buffer: Vec<u8, 128>,
221 discovery_buffer: Vec<u8, 2048>, 223 discovery_buffer: Vec<u8, 2048>,
@@ -422,7 +424,7 @@ pub struct Device<'a> {
422 waker: &'a AtomicWaker, 424 waker: &'a AtomicWaker,
423 entities: &'a [RefCell<Option<EntityData>>], 425 entities: &'a [RefCell<Option<EntityData>>],
424 426
425 mqtt_resources: &'a mut embedded_mqtt::ClientResources, 427 mqtt_resources: &'a mut mqtt::ClientResources,
426 publish_buffer: &'a mut VecView<u8>, 428 publish_buffer: &'a mut VecView<u8>,
427 subscribe_buffer: &'a mut VecView<u8>, 429 subscribe_buffer: &'a mut VecView<u8>,
428 discovery_buffer: &'a mut VecView<u8>, 430 discovery_buffer: &'a mut VecView<u8>,
@@ -585,8 +587,8 @@ pub async fn run<T: Transport>(device: &mut Device<'_>, transport: &mut T) -> Re
585 .expect("device availability buffer too small"); 587 .expect("device availability buffer too small");
586 let availability_topic = device.availability_topic_buffer.as_str(); 588 let availability_topic = device.availability_topic_buffer.as_str();
587 589
588 let mut client = embedded_mqtt::Client::new(device.mqtt_resources, transport); 590 let mut client = mqtt::Client::new(device.mqtt_resources, transport);
589 let connect_params = embedded_mqtt::ConnectParams { 591 let connect_params = mqtt::ConnectParams {
590 will_topic: Some(availability_topic), 592 will_topic: Some(availability_topic),
591 will_payload: Some(NOT_AVAILABLE_PAYLOAD.as_bytes()), 593 will_payload: Some(NOT_AVAILABLE_PAYLOAD.as_bytes()),
592 will_retain: true, 594 will_retain: true,
@@ -744,7 +746,7 @@ pub async fn run<T: Transport>(device: &mut Device<'_>, transport: &mut T) -> Re
744 client.publish_with( 746 client.publish_with(
745 availability_topic, 747 availability_topic,
746 AVAILABLE_PAYLOAD.as_bytes(), 748 AVAILABLE_PAYLOAD.as_bytes(),
747 embedded_mqtt::PublishParams { 749 mqtt::PublishParams {
748 retain: true, 750 retain: true,
749 ..Default::default() 751 ..Default::default()
750 }, 752 },
@@ -858,7 +860,7 @@ pub async fn run<T: Transport>(device: &mut Device<'_>, transport: &mut T) -> Re
858 .await 860 .await
859 { 861 {
860 Ok(embassy_futures::select::Either::First(packet)) => match packet { 862 Ok(embassy_futures::select::Either::First(packet)) => match packet {
861 Ok(embedded_mqtt::Packet::Publish(publish)) => publish, 863 Ok(mqtt::Packet::Publish(publish)) => publish,
862 Err(err) => { 864 Err(err) => {
863 crate::log::error!( 865 crate::log::error!(
864 "mqtt receive failed with: {:?}", 866 "mqtt receive failed with: {:?}",