Compare commits

..

No commits in common. "795ac28caa38c49415bdc2cfe0471067d4f3d451" and "4a4ddc1d282e59c8ce91d0b543d8ab8f4894de05" have entirely different histories.

6 changed files with 34 additions and 37 deletions

Binary file not shown.

View File

@ -3,43 +3,54 @@
// Include the mqtt client lib // Include the mqtt client lib
#include <PubSubClient.h> #include <PubSubClient.h>
// Include the settings.h. // Include any secrets.
#include "window_control_settings.h" #include "window_control_secrets.h"
#define buzzer 2 #define wifi_ssid SECRET_SSID
#define motorForward 1 #define wifi_password SECRET_PASS
#define motorReverse 0
#define sense 3 #define mqtt_server "mqtt.kitsunehosting.net"
#define mqtt_port 1883
#define mqtt_user SECRET_MQTT_USER
#define mqtt_password SECRET_MQTT_PASS
#define window_name "window_0"
#define mqtt_root "/house/upstairs_lab/actuators/" window_name
#define in_topic "/testing/in"
#define out_topic "/testing/out"
// Replace by 2 if you aren't enable to use Serial Monitor... Don't forget to Rewire R1 to GPIO2!
#define in_led 2
WiFiClient espClient; WiFiClient espClient;
PubSubClient client; PubSubClient client;
void setup() { void setup() {
Serial.begin(115200);
setup_wifi(); setup_wifi();
client.setClient(espClient); client.setClient(espClient);
client.setServer(MQTT_SERVER, MQTT_PORT); client.setServer(mqtt_server, mqtt_port);
client.setCallback(callback); client.setCallback(callback);
// Initalize some pins! // initialize digital pin LED_BUILTIN as an output.
// Initalize buzzer pin pinMode(in_led, OUTPUT);
pinMode(buzzer, OUTPUT); digitalWrite(in_led, HIGH);
digitalWrite(buzzer, LOW);
} }
void setup_wifi() { void setup_wifi() {
delay(10); delay(10);
// We start by connecting to a WiFi network // We start by connecting to a WiFi network
Serial.println(); Serial.println();
WiFi.hostname("ESP-" WINDOW_NAME); WiFi.hostname("ESP-" window_name);
Serial.print("Connecting to "); Serial.print("Connecting to ");
Serial.println(WIFI_SSID); Serial.println(wifi_ssid);
WiFi.begin(WIFI_SSID, WIFI_PASS); WiFi.begin(wifi_ssid, wifi_password);
while (WiFi.status() != WL_CONNECTED) { while (WiFi.status() != WL_CONNECTED) {
delay(950); delay(500);
tone(buzzer, 1200, 50); Serial.println("Not yet connected.. Waiting 500ms to check again..");
Serial.println("Not yet connected.. Waiting 1s to check again..");
} }
Serial.println(""); Serial.println("");
@ -53,7 +64,7 @@ void reconnect() {
while (!client.connected()) { while (!client.connected()) {
Serial.print("Attempting MQTT connection..."); Serial.print("Attempting MQTT connection...");
// Attempt to connect // Attempt to connect
if (client.connect("ESP8266Client", MQTT_USER, MQTT_PASS)) { if (client.connect("ESP8266Client", mqtt_user, mqtt_password)) {
Serial.println("connected"); Serial.println("connected");
} else { } else {
Serial.print("failed, rc="); Serial.print("failed, rc=");
@ -73,26 +84,22 @@ void callback(char* topic, byte* payload, unsigned int length) {
char receivedChar = (char)payload[i]; char receivedChar = (char)payload[i];
Serial.print(receivedChar); Serial.print(receivedChar);
if (receivedChar == '0') if (receivedChar == '0')
//digitalWrite(in_led, LOW); digitalWrite(in_led, LOW);
if (receivedChar == '1') if (receivedChar == '1')
//digitalWrite(in_led, HIGH); digitalWrite(in_led, HIGH);
} }
Serial.println(); Serial.println();
} }
void loop() { void loop() {
// If we ever disconnect, reconnect.
if (!client.connected()) { if (!client.connected()) {
reconnect(); reconnect();
} }
// Run the client loop
client.loop(); client.loop();
// Publishes a random 0 and 1 like someone switching off and on randomly (random(2)) // Publishes a random 0 and 1 like someone switching off and on randomly (random(2))
client.publish(MQTT_ROOT "/random", String(random(2)).c_str(), true); client.publish(out_topic, String(random(2)).c_str(), true);
delay(1000); delay(1000);
client.subscribe(MQTT_ROOT "/in"); client.subscribe(in_topic);
tone(buzzer, 2000, 500); tone(2, 2000, 500);
delay(1000); delay(1000);
} }

View File

@ -1,10 +0,0 @@
#define WIFI_SSID "muner"
#define WIFI_PASS "apollo11"
#define MQTT_SERVER "mqtt.kitsunehosting.net"
#define MQTT_PORT 1883
#define MQTT_USER "device"
#define MQTT_PASS "iamnotacrook"
#define WINDOW_NAME "window_0"
#define MQTT_ROOT "home/upstairs_lab/actuators/" WINDOW_NAME