diff --git a/barrier_controller/barrier_controller.ino b/barrier_controller/barrier_controller.ino index f9c4db9..b8c7a51 100644 --- a/barrier_controller/barrier_controller.ino +++ b/barrier_controller/barrier_controller.ino @@ -19,7 +19,7 @@ #define ETH_CLK_MODE ETH_CLOCK_GPIO17_OUT #define AP_SSID "Barrier-Setup" -#define FW_VERSION "1.8" +#define FW_VERSION "1.9" #define AP_PASS "barrier123" Preferences prefs; @@ -37,7 +37,7 @@ String cfg_token = "barrier_token_2026"; String cfg_self_ip = ""; // пусто = DHCP String cfg_gateway = ""; String cfg_subnet = "255.255.255.0"; -String cfg_peer_ip = ""; +String cfg_peers[5] = {"", "", "", "", ""}; unsigned long lastPress1 = 0; unsigned long lastPress2 = 0; @@ -82,7 +82,9 @@ void loadConfig() { cfg_self_ip = prefs.getString("self_ip", ""); cfg_gateway = prefs.getString("gateway", ""); cfg_subnet = prefs.getString("subnet", "255.255.255.0"); - cfg_peer_ip = prefs.getString("peer_ip", ""); + for (int i = 0; i < 5; i++) { + cfg_peers[i] = prefs.getString(("peer" + String(i)).c_str(), ""); + } prefs.end(); } @@ -96,17 +98,21 @@ void saveConfig() { prefs.putString("self_ip", cfg_self_ip); prefs.putString("gateway", cfg_gateway); prefs.putString("subnet", cfg_subnet); - prefs.putString("peer_ip", cfg_peer_ip); + for (int i = 0; i < 5; i++) { + prefs.putString(("peer" + String(i)).c_str(), cfg_peers[i]); + } prefs.end(); } void notifyPeer(int btn) { - if (cfg_peer_ip.length() == 0) return; - HTTPClient http; - http.begin("http://" + cfg_peer_ip + "/peer_led?b=" + String(btn)); - http.addHeader("X-Token", cfg_token); - http.GET(); - http.end(); + for (int i = 0; i < 5; i++) { + if (cfg_peers[i].length() == 0) continue; + HTTPClient http; + http.begin("http://" + cfg_peers[i] + "/peer_led?b=" + String(btn)); + http.addHeader("X-Token", cfg_token); + http.GET(); + http.end(); + } } void sendCommand(String ip) { @@ -200,9 +206,17 @@ input[type=text]:focus,input[type=password]:focus{outline:none;border-color:#219
-

Второй пульт

- - +

Другие пульты (синхронизация LED)

+ + + + + + + + + +

IP этого устройства

@@ -262,7 +276,9 @@ void setupRoutes() { cfg_self_ip = server.arg("self_ip"); cfg_gateway = server.arg("gateway"); cfg_subnet = server.arg("subnet"); - cfg_peer_ip = server.arg("peer_ip"); + for (int i = 0; i < 5; i++) { + cfg_peers[i] = server.arg(("peer" + String(i)).c_str()); + } String np = server.arg("pass"); if (np.length() > 0) cfg_pass = np; saveConfig();