simplification
This commit is contained in:
parent
1814ebece2
commit
9ca0251153
@ -1,4 +1,4 @@
|
|||||||
#include <EEPROM.h>
|
// Bouton
|
||||||
#include <Ticker.h>
|
#include <Ticker.h>
|
||||||
|
|
||||||
// Wifi
|
// Wifi
|
||||||
@ -21,12 +21,7 @@ void setup() {
|
|||||||
Serial.begin(SERIAL_SPEED);
|
Serial.begin(SERIAL_SPEED);
|
||||||
Serial.println("\nresetting");
|
Serial.println("\nresetting");
|
||||||
|
|
||||||
pinMode(LED, OUTPUT);
|
setupSonOff();
|
||||||
pinMode(RELAY, OUTPUT);
|
|
||||||
pinMode(BUTTON, INPUT);
|
|
||||||
digitalWrite(LED, LOW);
|
|
||||||
digitalWrite(RELAY, HIGH);
|
|
||||||
btn_timer.attach(0.05, button);
|
|
||||||
|
|
||||||
// WIFI
|
// WIFI
|
||||||
setupWifi();
|
setupWifi();
|
||||||
@ -43,6 +38,15 @@ void setup() {
|
|||||||
testConnectMQTT();
|
testConnectMQTT();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void setupSonOff() {
|
||||||
|
pinMode(LED, OUTPUT);
|
||||||
|
pinMode(RELAY, OUTPUT);
|
||||||
|
pinMode(BUTTON, INPUT);
|
||||||
|
digitalWrite(LED, LOW);
|
||||||
|
digitalWrite(RELAY, HIGH);
|
||||||
|
btn_timer.attach(0.05, button);
|
||||||
|
}
|
||||||
|
|
||||||
// OTA
|
// OTA
|
||||||
void setupOTA()
|
void setupOTA()
|
||||||
{
|
{
|
||||||
@ -51,7 +55,6 @@ void setupOTA()
|
|||||||
ArduinoOTA.onStart([]() {
|
ArduinoOTA.onStart([]() {
|
||||||
Debug.println("OTA Starting");
|
Debug.println("OTA Starting");
|
||||||
Serial.println("OTA Starting");
|
Serial.println("OTA Starting");
|
||||||
OTAupdate = true;
|
|
||||||
blinkLED(LED, 400, 2);
|
blinkLED(LED, 400, 2);
|
||||||
digitalWrite(LED, HIGH);
|
digitalWrite(LED, HIGH);
|
||||||
});
|
});
|
||||||
@ -70,7 +73,6 @@ void setupOTA()
|
|||||||
Serial.printf("OTA Error[%u]: ", error);
|
Serial.printf("OTA Error[%u]: ", error);
|
||||||
Debug.printf("OTA Error[%u]: ", error);
|
Debug.printf("OTA Error[%u]: ", error);
|
||||||
blinkLED(LED, 40, 2);
|
blinkLED(LED, 40, 2);
|
||||||
OTAupdate = false;
|
|
||||||
if (error == OTA_AUTH_ERROR) {
|
if (error == OTA_AUTH_ERROR) {
|
||||||
Serial.println("Auth Failed");
|
Serial.println("Auth Failed");
|
||||||
Debug.println("Auth Failed");
|
Debug.println("Auth Failed");
|
||||||
@ -122,7 +124,7 @@ void testConnectMQTT()
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
Debug.print("OK\nSubscribe");
|
Debug.print("OK\nSubscribe");
|
||||||
client.subscribe(MQTT_TOPIC);
|
client.subscribe(MQTT_COMMAND);
|
||||||
|
|
||||||
blinkLED(LED, 40, 8);
|
blinkLED(LED, 40, 8);
|
||||||
if(digitalRead(RELAY) == HIGH) {
|
if(digitalRead(RELAY) == HIGH) {
|
||||||
@ -163,9 +165,8 @@ void callbackMQTT(char* topic, byte* payload, unsigned int length)
|
|||||||
digitalWrite(LED, HIGH);
|
digitalWrite(LED, HIGH);
|
||||||
digitalWrite(RELAY, LOW);
|
digitalWrite(RELAY, LOW);
|
||||||
} else if (msgString == "reset"){
|
} else if (msgString == "reset"){
|
||||||
requestRestart = true;
|
// TODO : esp restart
|
||||||
}
|
}
|
||||||
sendStatus = true;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void loop() {
|
void loop() {
|
||||||
@ -197,11 +198,10 @@ void button() {
|
|||||||
if (count > 1 && count <= 40) {
|
if (count > 1 && count <= 40) {
|
||||||
digitalWrite(LED, !digitalRead(LED));
|
digitalWrite(LED, !digitalRead(LED));
|
||||||
digitalWrite(RELAY, !digitalRead(RELAY));
|
digitalWrite(RELAY, !digitalRead(RELAY));
|
||||||
sendStatus = true;
|
|
||||||
}
|
}
|
||||||
else if (count >40){
|
else if (count >40){
|
||||||
Serial.println("\n\nSonoff Rebooting . . . . . . . . Please Wait");
|
Serial.println("\n\nSonoff Rebooting . . . . . . . . Please Wait");
|
||||||
requestRestart = true;
|
// TODO : esp restart
|
||||||
}
|
}
|
||||||
count=0;
|
count=0;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,44 +1,46 @@
|
|||||||
#define BUTTON 0 // (Don't Change for Original Sonoff, Sonoff SV, Sonoff Touch, Sonoff S20 Socket)
|
#define SERIAL_SPEED 115200
|
||||||
#define RELAY 12 // (Don't Change for Original Sonoff, Sonoff SV, Sonoff Touch, Sonoff S20 Socket)
|
|
||||||
#define LED 13 // (Don't Change for Original Sonoff, Sonoff SV, Sonoff Touch, Sonoff S20 Socket)
|
|
||||||
|
|
||||||
#define MQTT_CLIENT "sonoff_living" // mqtt client_id (Must be unique for each Sonoff)
|
// OTA
|
||||||
#define MQTT_SERVER "XXX" // mqtt server
|
#define OTA_PASSWORD "XXX"
|
||||||
#define MQTT_PORT 1883 // mqtt port
|
#define OTA_CLIENT "sonoff_living"
|
||||||
#define MQTT_TOPIC "sonoff/living" // mqtt topic (Must be unique for each Sonoff)
|
|
||||||
#define MQTT_USER "XXX" // mqtt user
|
|
||||||
#define MQTT_PASS "XXX" // mqtt password
|
|
||||||
|
|
||||||
#define WIFI_SSID "XXX" // wifi ssid
|
// DebugRemote
|
||||||
#define WIFI_PASS "XXX" // wifi password
|
#define REMDEB_CLIENT "sonoff_living"
|
||||||
|
RemoteDebug Debug;
|
||||||
|
|
||||||
#define VERSION "\n\n---------------- Sonoff Powerpoint v1.01pOTA -----------------"
|
// WIFI
|
||||||
|
#define WIFI_SSID "XXX"
|
||||||
|
#define WIFI_PASSWORD "XXX"
|
||||||
|
|
||||||
bool rememberRelayState = true; // If 'true' remembers the state of the relay before power loss.
|
WiFiClient espClient;
|
||||||
bool OTAupdate = false; // (Do not Change)
|
|
||||||
bool sendStatus = false; // (Do not Change)
|
|
||||||
bool requestRestart = false; // (Do not Change)
|
|
||||||
|
|
||||||
int kUpdFreq = 1; // Update frequency in Mintes to check for mqtt connection
|
#define BUTTON 0
|
||||||
int kRetries = 10; // WiFi retry count. Increase if not connecting to router.
|
#define RELAY 12
|
||||||
int lastRelayState; // (Do not Change)
|
#define LED 13
|
||||||
|
|
||||||
unsigned long TTasks; // (Do not Change)
|
// MQTT
|
||||||
unsigned long count = 0; // (Do not Change)
|
#define MQTT_SERVER "XXX"
|
||||||
|
#define MQTT_PORT 1883
|
||||||
|
#define MQTT_USER "XXX"
|
||||||
|
#define MQTT_PASS "XXX"
|
||||||
|
|
||||||
extern "C" {
|
#define MQTT_CLIENT "sonoff_living"
|
||||||
#include "user_interface.h"
|
#define MQTT_COMMAND "sonoff_living/switch"
|
||||||
}
|
#define MQTT_STATE "sonoff_living/status"
|
||||||
|
|
||||||
WiFiClient wifiClient;
|
char message_buff[100];
|
||||||
PubSubClient mqttClient(wifiClient, MQTT_SERVER, MQTT_PORT);
|
PubSubClient client(espClient);
|
||||||
|
|
||||||
|
// Bouton
|
||||||
Ticker btn_timer;
|
Ticker btn_timer;
|
||||||
|
unsigned long count = 0;
|
||||||
|
|
||||||
void callback(const MQTT::Publish& pub);
|
|
||||||
void setup();
|
void setup();
|
||||||
void loop();
|
void loop();
|
||||||
void blinkLED(int pin, int duration, int n);
|
void blinkLED(int pin, int duration, int n);
|
||||||
void button();
|
void button();
|
||||||
void checkConnection();
|
void setupOTA();
|
||||||
void checkStatus();
|
void setupWifi();
|
||||||
void timedTasks();
|
void testConnectMQTT();
|
||||||
|
void callbackMQTT(char* topic, byte* payload, unsigned int length);
|
||||||
|
void setupSonOff();
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user