I think I'm ussing the latest one
but as you said I don't think it will fix my issue though.
But looking at the examples I found that they have a connect function which then can be used to reconnect whenever needed not constantly like it happens now,
But not sure how I could integrate that functionality in this sketch though, as I'm not that experienced with programming
To you think it will be possible?
/*
Reconnecting MQTT example - non-blocking
This sketch demonstrates how to keep the client connected
using a non-blocking reconnect function. If the client loses
its connection, it attempts to reconnect every 5 seconds
without blocking the main loop.
*/
#include <SPI.h>
#include <Ethernet.h>
#include <PubSubClient.h>
// Update these with values suitable for your hardware/network.
byte mac[] = { 0xDE, 0xED, 0xBA, 0xFE, 0xFE, 0xED };
IPAddress ip(172, 16, 0, 100);
IPAddress server(172, 16, 0, 2);
void callback(char* topic, byte* payload, unsigned int length) {
// handle message arrived
}
EthernetClient ethClient;
PubSubClient client(ethClient);
long lastReconnectAttempt = 0;
boolean reconnect() {
if (client.connect("arduinoClient")) {
// Once connected, publish an announcement...
client.publish("outTopic","hello world");
// ... and resubscribe
client.subscribe("inTopic");
}
return client.connected();
}
void setup()
{
client.setServer(server, 1883);
client.setCallback(callback);
Ethernet.begin(mac, ip);
delay(1500);
lastReconnectAttempt = 0;
}
void loop()
{
if (!client.connected()) {
long now = millis();
if (now - lastReconnectAttempt > 5000) {
lastReconnectAttempt = now;
// Attempt to reconnect
if (reconnect()) {
lastReconnectAttempt = 0;
}
}
} else {
// Client connected
client.loop();
}
}
I finally got this to work. Unlike what the description here says, this is how to update the value:
In Home Assistant, go to Developer->Service->YAML mode:
service: text.set_value
data:
value: "967067"
target:
entity_id: text.water_meter_100_2
(change 967067 with the value you want to add to the current counter)
The service "notify.mysensors" seems to be deprecated by Home Assistant.
bravo and good explanation
good to show that Arduino "8bits" and MySensors can do things simply, without gas factory
an extensible basis for further input/output
(door contact - relay control ...etc )
Thanks
Just completed 1 year of operation of a PIR sensor in the house that trigger 100-200 times a day. It is powered by 2xAA batteries and here is a graph of battery level over the year.