Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <ESP8266WiFi.h>
- #include <WiFiClient.h>
- #include <ESP8266WebServer.h>
- #include <ESP8266mDNS.h>
- #include <WiFiUdp.h>
- #include <PubSubClient.h>
- //Your MQTT Broker
- const char* mqtt_server = "xxx";
- const char* mqtt_user = "xxx";
- const char* mqtt_passwd = "xxx";
- const char* mqtt_topic = "Bewegung_01";
- const char* mqtt_ClientID = "Bewegung01";
- //Your Wifi SSID
- const char* ssid = "xxx";
- //Your Wifi Key
- const char* password = "xxx";
- ESP8266WebServer server(80);
- WiFiClient espClient;
- PubSubClient client(espClient);
- int Input3 = 3; //the RX pin is the input!!!
- int sensorValue3 = 0, oldValue3 = 0, tmp = 10, val = 0;
- char msg[40];
- void setup(void)
- {
- Serial.begin(115200);
- Serial.println("");
- //connect to WIFI
- WiFi.persistent(false);
- WiFi.mode(WIFI_OFF);
- WiFi.mode(WIFI_STA);
- WiFi.begin(ssid, password);
- // Wait for WiFi
- Serial.println("");
- Serial.print("Connecting to: ");
- Serial.println(ssid);
- while (WiFi.status() != WL_CONNECTED)
- {
- delay(500);
- Serial.print(".");
- if(tmp)
- {
- tmp--;
- }
- else
- {
- snprintf (msg, 40,"No connection to %s: ", ssid, " -> break");
- Serial.println(msg);
- break;
- }
- }
- tmp = 10;
- Serial.println("");
- Serial.print("IP-Adress: ");
- Serial.println(WiFi.localIP());
- //connect to mqtt broker
- client.setServer(mqtt_server, 1883);
- while (!client.connected())
- {
- if (client.connect(mqtt_ClientID, mqtt_user, mqtt_passwd))
- {
- client.subscribe(mqtt_topic);
- }
- else
- {
- if(tmp)
- {
- Serial.print("*");
- tmp--;
- }
- else
- {
- Serial.println("No connection to broker -> break");
- break;
- }
- }
- }
- Serial.println("switching to motion dectector...");
- delay(100);
- pinMode(Input3, INPUT);
- pinMode(2, OUTPUT);
- }
- void loop(void){
- sensorValue3 = digitalRead(Input3);
- if(sensorValue3 != oldValue3)
- {
- oldValue3 = sensorValue3;
- if(tmp)
- {
- snprintf (msg, 40, "%s: %s", mqtt_ClientID, (sensorValue3 == 0) ? "0" : "1");
- client.publish(mqtt_topic, msg);
- }
- else
- {
- digitalWrite(2,sensorValue3);
- }
- }
- delay(100);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement