modified: .vscode/settings.json
deleted: esp_relay_controller_0.1.stable_highActive.bin modified: src/main.cpp
This commit is contained in:
parent
3b86fbc866
commit
a50196e1ba
13
.vscode/settings.json
vendored
13
.vscode/settings.json
vendored
@ -104,5 +104,16 @@
|
|||||||
"C_Cpp_Runner.msvcSecureNoWarnings": false,
|
"C_Cpp_Runner.msvcSecureNoWarnings": false,
|
||||||
"idf.portWin": "COM9",
|
"idf.portWin": "COM9",
|
||||||
"C_Cpp.errorSquiggles": "disabled",
|
"C_Cpp.errorSquiggles": "disabled",
|
||||||
"idf.adapterTargetName": "esp32s3"
|
"idf.adapterTargetName": "esp32s3",
|
||||||
|
"files.associations": {
|
||||||
|
"array": "cpp",
|
||||||
|
"deque": "cpp",
|
||||||
|
"list": "cpp",
|
||||||
|
"string": "cpp",
|
||||||
|
"unordered_map": "cpp",
|
||||||
|
"vector": "cpp",
|
||||||
|
"string_view": "cpp",
|
||||||
|
"initializer_list": "cpp",
|
||||||
|
"ranges": "cpp"
|
||||||
|
}
|
||||||
}
|
}
|
Binary file not shown.
107
src/main.cpp
107
src/main.cpp
@ -10,28 +10,78 @@ int UdpbeginPacketTest;
|
|||||||
int UdpendPacketTest;
|
int UdpendPacketTest;
|
||||||
int digitalStatus;
|
int digitalStatus;
|
||||||
|
|
||||||
const char *ssid = "YZTRoomWifi";
|
|
||||||
const char *password = "fpclink114roomwifi";
|
|
||||||
|
|
||||||
WiFiUDP Udp;
|
WiFiUDP Udp;
|
||||||
unsigned int localUdpPort = 443;
|
unsigned int localUdpPort = 443;
|
||||||
char incomingPacket[537];
|
char incomingPacket[537];
|
||||||
WiFiServer server(80);
|
WiFiServer server(80);
|
||||||
|
|
||||||
|
void loadWiFiSettings(char* ssid, char* password) { //Read WiFi settings from EEPROM
|
||||||
|
EEPROM.begin(64); //Initialize EEPROM with size 64 bytes
|
||||||
|
for (int i = 0; i < 32; i++) {
|
||||||
|
char c = EEPROM.read(i);
|
||||||
|
// Serial.print(c);
|
||||||
|
// Serial.print(" ");
|
||||||
|
// Serial.print((int)c);
|
||||||
|
// Serial.print(" ");
|
||||||
|
ssid[i] = c;
|
||||||
|
if(c =='\0'){
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
for (int i = 0; i < 32; i++) {
|
||||||
|
char c = EEPROM.read(i + 32);
|
||||||
|
// Serial.print(c);
|
||||||
|
// Serial.print(" ");
|
||||||
|
// Serial.print((int)c);
|
||||||
|
// Serial.print(" ");
|
||||||
|
password[i] = c;
|
||||||
|
if(c == '\0'){
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
EEPROM.end();
|
||||||
|
}
|
||||||
|
|
||||||
|
void saveWiFiSettings(const char ssid[32], const char password[32]) {
|
||||||
|
EEPROM.begin(64); //Initialize EEPROM with size 64 bytes
|
||||||
|
for(int i=0; i<32; i++) {
|
||||||
|
// Serial.print(ssid[i]);
|
||||||
|
// Serial.print(" ");
|
||||||
|
// Serial.print((int)ssid[i]);
|
||||||
|
EEPROM.write(i, ssid[i]); //Write SSID to EEPROM
|
||||||
|
Serial.print(ssid[i]);
|
||||||
|
if(ssid[i] == '\0') {
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
for(int i=0; i<32; i++) {
|
||||||
|
// Serial.print(password[i]);
|
||||||
|
// Serial.print(" ");
|
||||||
|
// Serial.print((int)password[i]);
|
||||||
|
EEPROM.write(i+32, password[i]); //Write Password to EEPROM
|
||||||
|
Serial.print(password[i]);
|
||||||
|
if(password[i] == '\0') {
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Serial.println("EEPROM.end");
|
||||||
|
EEPROM.end();
|
||||||
|
}
|
||||||
|
|
||||||
void setup(){
|
void setup(){
|
||||||
Serial.begin(115200);
|
Serial.begin(115200);
|
||||||
Serial.println("");
|
Serial.println(""); //Print firmware information
|
||||||
Serial.println("Smart Socket ESP8266EX Firmware Ver0.2.stable Build24");
|
Serial.println("Smart Socket ESP8266EX Firmware Ver.1.0");
|
||||||
Serial.println("Developed by Madobi Nanami");
|
Serial.println("Developed by Madobi Nanami");
|
||||||
Serial.println("Personal site: https://nanami.tech");
|
Serial.println("Personal site: https://nanami.tech");
|
||||||
pinMode(ledPin,OUTPUT);
|
pinMode(ledPin,OUTPUT); //Initialize LED pin
|
||||||
digitalWrite(ledPin,HIGH);
|
digitalWrite(ledPin,HIGH);
|
||||||
pinMode(relay,OUTPUT);
|
pinMode(relay,OUTPUT); //Initialize relay pin
|
||||||
digitalWrite(relay,LOW);
|
digitalWrite(relay,LOW);
|
||||||
EEPROM.begin(512);
|
char ssid[32];
|
||||||
EEPROM.read(0,32);
|
char password[32];
|
||||||
EEPROM.read(32,32);
|
loadWiFiSettings(ssid, password); //Load WiFi settings from EEPROM
|
||||||
if(strlen(ssid) == 0 || strlen(password) == 0){
|
if(strlen(ssid) == 0 || strlen(password) == 0){ //Check if WiFi settings are empty
|
||||||
Serial.println("No WiFi settings found in EEPROM, please set them.");
|
Serial.println("No WiFi settings found in EEPROM, please set them.");
|
||||||
Serial.println("Please enter SSID:");
|
Serial.println("Please enter SSID:");
|
||||||
while(!Serial.available());
|
while(!Serial.available());
|
||||||
@ -50,7 +100,7 @@ void setup(){
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
Serial.println("Trying to connect to WiFi...");
|
Serial.println("Trying to connect to WiFi...");
|
||||||
WIFI.begin(inputSsid.c_str(), inputPassword.c_str());
|
WiFi.begin(inputSsid.c_str(), inputPassword.c_str());
|
||||||
while(WiFi.status() != WL_CONNECTED){
|
while(WiFi.status() != WL_CONNECTED){
|
||||||
delay(500);
|
delay(500);
|
||||||
Serial.print(".");
|
Serial.print(".");
|
||||||
@ -61,9 +111,7 @@ void setup(){
|
|||||||
Serial.println("WiFi settings saved.");
|
Serial.println("WiFi settings saved.");
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
Serial.println("Loaded WiFi settings from EEPROM.");
|
Serial.println("Load WiFi settings from EEPROM.");
|
||||||
String ssid = EEPROM.getString(0, 32);
|
|
||||||
String password = EEPROM.getString(32, 32);
|
|
||||||
Serial.print("SSID: ");
|
Serial.print("SSID: ");
|
||||||
Serial.println(ssid);
|
Serial.println(ssid);
|
||||||
Serial.print("Password: ");
|
Serial.print("Password: ");
|
||||||
@ -75,7 +123,6 @@ void setup(){
|
|||||||
Serial.println(".");
|
Serial.println(".");
|
||||||
}
|
}
|
||||||
Serial.println("Connected.");
|
Serial.println("Connected.");
|
||||||
|
|
||||||
server.begin();
|
server.begin();
|
||||||
Udp.begin(localUdpPort);
|
Udp.begin(localUdpPort);
|
||||||
Serial.println("UDP server started. Listening on port 443");
|
Serial.println("UDP server started. Listening on port 443");
|
||||||
@ -83,20 +130,6 @@ void setup(){
|
|||||||
Serial.println(WiFi.localIP());
|
Serial.println(WiFi.localIP());
|
||||||
}
|
}
|
||||||
|
|
||||||
void saveWiFiSettings(const char* ssid, const char* password) {
|
|
||||||
EEPROM.begin(512);
|
|
||||||
EEPROM.putString(0, ssid);
|
|
||||||
EEPROM.putString(32, password);
|
|
||||||
EEPROM.commit();
|
|
||||||
EEPROM.end();
|
|
||||||
}
|
|
||||||
void loadWiFiSettings(char* ssid, char* password) {
|
|
||||||
EEPROM.begin(512);
|
|
||||||
EEPROM.getString(0, ssid, 32);
|
|
||||||
EEPROM.getString(32, password, 32);
|
|
||||||
EEPROM.end();
|
|
||||||
}
|
|
||||||
|
|
||||||
void loop(){
|
void loop(){
|
||||||
int packetSize = Udp.parsePacket();
|
int packetSize = Udp.parsePacket();
|
||||||
if(packetSize){
|
if(packetSize){
|
||||||
@ -118,26 +151,18 @@ void loop(){
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if(strcmp(incomingPacket, "device.read") == 0){
|
if(strcmp(incomingPacket, "device.read") == 0){
|
||||||
|
Serial.println("Device information requested.");
|
||||||
Udp.beginPacket(Udp.remoteIP(),Udp.remotePort());
|
Udp.beginPacket(Udp.remoteIP(),Udp.remotePort());
|
||||||
Udp.write("[Chipset]ESP8266EX");
|
Udp.write("[Chipset]ESP8266EX");
|
||||||
Serial.println("chipset");
|
|
||||||
Udp.write("[Manufacture]Espressif");
|
Udp.write("[Manufacture]Espressif");
|
||||||
Serial.println("manufacture");
|
|
||||||
Udp.write("[DeviceType]relayController");
|
Udp.write("[DeviceType]relayController");
|
||||||
Serial.println("devicetype");
|
|
||||||
Udp.write("[FirmwareName]Smart Socket");
|
Udp.write("[FirmwareName]Smart Socket");
|
||||||
Serial.println("firmwarename");
|
Udp.write("[FirmwareVersion]1.0.stable");
|
||||||
Udp.write("[FirmwareVersion]0.1.stable");
|
|
||||||
Serial.println("firmwareversion");
|
|
||||||
Udp.write("[FirmwareBuildVer]24");
|
Udp.write("[FirmwareBuildVer]24");
|
||||||
Serial.println("firmwarebuildver");
|
|
||||||
Udp.write("[Developer]Madobi Nanami");
|
Udp.write("[Developer]Madobi Nanami");
|
||||||
Serial.println("developer");
|
Udp.write("[BuildDate]2025.07.26");
|
||||||
Udp.write("[BuildDate]2024.08.07");
|
|
||||||
Serial.println("builddate");
|
|
||||||
delay(500);
|
delay(500);
|
||||||
Udp.write("[Command]EOF");
|
Udp.write("[Command]EOF");
|
||||||
Serial.println("eof");
|
|
||||||
Udp.endPacket();
|
Udp.endPacket();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user