4 Commits

Author SHA1 Message Date
a90b1fa6c6 fix data template 2025-04-15 11:32:45 +02:00
e75eea3fb0 bump version 2025-04-15 11:31:37 +02:00
6780c41582 add data topic 2025-04-15 11:30:58 +02:00
f29ced6b61 update pin 2025-04-15 11:09:53 +02:00
5 changed files with 11 additions and 5 deletions

2
Cargo.lock generated
View File

@@ -139,7 +139,7 @@ checksum = "d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28"
[[package]]
name = "energyPulseCounter"
version = "1.0.0"
version = "1.0.1"
dependencies = [
"crossbeam",
"mqtt-client",

View File

@@ -1,6 +1,6 @@
[package]
name = "energyPulseCounter"
version = "1.0.0"
version = "1.0.1"
edition = "2021"
[dependencies]

View File

@@ -4,9 +4,9 @@ use rppal::gpio::{Gpio, Trigger};
pub fn pulse_counter(pulses: Arc<AtomicCell<u32>>) {
let gpio = Gpio::new().expect("failt to get gpio driver");
let mut pulse_gpio = gpio.get(15)
let mut pulse_gpio = gpio.get(23)
.expect("failt to get gpio pin")
.into_input();
.into_input_pullup();
pulse_gpio.set_interrupt(Trigger::FallingEdge, None)
.expect("failt to set inerupt");

View File

@@ -52,7 +52,7 @@ fn main() {
match read_config() {
Ok(conf) =>{
let pulses: Arc<AtomicCell<u32>> = Arc::new(AtomicCell::new(1));
let pulses: Arc<AtomicCell<u32>> = Arc::new(AtomicCell::new(0));
let pulses_counter = pulses.clone();

View File

@@ -41,6 +41,12 @@ impl PulseTx {
retain: false,
qos: mqtt_client::QoS::AtMostOnce,
}});
self.tx({ mqtt_client::MqttMessage {
topic: String::from("/kees/energy/metalbox/data"),
payload: format!("{{\"pulses\":{pulses},\"watt\":{}}}", pulses * 60),
retain: false,
qos: mqtt_client::QoS::AtMostOnce,
}});
}
}