Lx671 224 Жалоба Опубликовано 25 июля 1 час назад, VALKNUT сказал(а): Связь с чем? На удаленный сервер, где находится сайт. Например в сторону 1gb.ru . Там нужен Host name, usr name, password. С той стороны надо получить статус соединения, после этого есть доступ до каталога файлов... Если при этом ESP32 не потеряет возможность отличать "0" от "1" на входах, тогда мне есть смысл заняться. В статье, которую вы дали выше, написано ограничение, что при работе Wi-Fi не работает анализ входных уровней или я не так понял?? Поделиться сообщением Ссылка на сообщение
VALKNUT 2522 Жалоба Опубликовано 25 июля 38 минут назад, Lx671 сказал(а): На удаленный сервер, где находится сайт. Например в сторону 1gb.ru . Там нужен Host name, usr name, password. С той стороны надо получить статус соединения, после этого есть доступ до каталога файлов... Если при этом ESP32 не потеряет возможность отличать "0" от "1" на входах, тогда мне есть смысл заняться. В статье, которую вы дали выше, написано ограничение, что при работе Wi-Fi не работает анализ входных уровней или я не так понял?? - У меня нет ни удаленного сервера, ни необходимости подключаться по логину и паролю, по этому ответить не смогу. Я даже не могу для представить ситуацию, когда мне это могло бы пригодиться. - У соединений есть транспортные протоколы UDP и TCP, а еще есть состояние.. например established (установленное). UDP не требует подтверждения получения пакета адресатом (например видеопоток), а TCP ждет ответа от адресата (получен пакет или нет), это если совсем на пальцах. - Я не сталкивался с невозможностью ESP32отличить 1|0 на выходах, даже не слышал о таком. - Статья, ссылку на которую я дал, просто одна из статей, что попалась в поиске. Я Вам ее дал, чтоб было с чего начать, я ее даже не читал, только начало. 1ГБ.ру, это хостинг. Я думаю, что вопросы его возможностей надо задавать техподдержке хостинга. Тем не менее, ESPXX может выполнить запрос к серверу (если соединение установлено). Есть такой пример: Спойлер /* This sketch establishes a TCP connection to a "quote of the day" service. It sends a "hello" message, and then prints received data. */ #include <ESP8266WiFi.h> #ifndef STASSID #define STASSID "your-ssid" #define STAPSK "your-password" #endif const char* ssid = STASSID; const char* password = STAPSK; const char* host = "djxmmx.net"; const uint16_t port = 17; void setup() { Serial.begin(115200); // We start by connecting to a WiFi network Serial.println(); Serial.println(); Serial.print("Connecting to "); Serial.println(ssid); /* Explicitly set the ESP8266 to be a WiFi-client, otherwise, it by default, would try to act as both a client and an access-point and could cause network-issues with your other WiFi-devices on your WiFi-network. */ WiFi.mode(WIFI_STA); WiFi.begin(ssid, password); while (WiFi.status() != WL_CONNECTED) { delay(500); Serial.print("."); } Serial.println(""); Serial.println("WiFi connected"); Serial.println("IP address: "); Serial.println(WiFi.localIP()); } void loop() { static bool wait = false; Serial.print("connecting to "); Serial.print(host); Serial.print(':'); Serial.println(port); // Use WiFiClient class to create TCP connections WiFiClient client; if (!client.connect(host, port)) { Serial.println("connection failed"); delay(5000); return; } // This will send a string to the server Serial.println("sending data to server"); if (client.connected()) { client.println("hello from ESP8266"); } // wait for data to be available unsigned long timeout = millis(); while (client.available() == 0) { if (millis() - timeout > 5000) { Serial.println(">>> Client Timeout !"); client.stop(); delay(60000); return; } } // Read all the lines of the reply from server and print them to Serial Serial.println("receiving from remote server"); // not testing 'client.connected()' since we do not need to send data here while (client.available()) { char ch = static_cast<char>(client.read()); Serial.print(ch); } // Close the connection Serial.println(); Serial.println("closing connection"); client.stop(); if (wait) { delay(300000); // execute once every 5 minutes, don't flood remote service } wait = true; } Контроллер подлючится к Вафле и отправит сообщение серверу djxmmx.net "hello from ESP8266". В примере это есть. 1 Lx671 отреагировали на это Поделиться сообщением Ссылка на сообщение
Lx671 224 Жалоба Опубликовано 26 июля 16 часов назад, VALKNUT сказал(а): if (client.connected()) { client.println("hello from ESP8266"); } Прикольно конечно, не очень ясно как на сайт можно отправить просто сообщение)) Это вроде не монитор. client.writeln("\\pr1.txt"); - файл записывается в корень сайта должно быть... 16 часов назад, VALKNUT сказал(а): UDP и TCP, а еще есть состояние.. например established (установленное). UDP не требует подтверждения получения пакета адресатом (например видеопоток), а TCP ждет ответа от адресата (получен пакет или нет), Я протоколы "внутри" почти не изучал. Знаю только, что данные с сайта можно получить на комп и выполнить в браузере - это у всех, а можно связываться по FTP для обслуживания сайта - замены файлов... Если 1-е устройство кладет данные на сайт, а другое в другом месте их читает в браузере, то это есть общая доступность и сервис без ограничений - цифры, графики, как угодно... Поделиться сообщением Ссылка на сообщение
VALKNUT 2522 Жалоба Опубликовано 26 июля 11 минут назад, Lx671 сказал(а): Прикольно конечно, не очень ясно как на сайт можно отправить просто сообщение)) Это вроде не монитор. Полагаю, что и здесь Вам бы не мешало почитать "всякое".. например POST/GET запросы. Не применительно к ESP32, а вообще.. для понимания как всё работает. Но это не относится к данной теме. Думаю, что Вам стоило бы завести свою тему или что-то подобное и пообсуждать с заинтересованными хостинги, сайты, фтп.. Поделиться сообщением Ссылка на сообщение
Haaans 1014 Жалоба Опубликовано 26 июля Шеф @VALKNUT , вопрос по сабжу. В общем. Датчики температуры DS18B20 Китайцы предлогают с вот такой платой и без. Я так понимаю плата обвязки, там вроде резистор и кондер висит, для чего не понял. Вопрос надо эта плата или нет? Поделиться сообщением Ссылка на сообщение
VALKNUT 2522 Жалоба Опубликовано 26 июля 26 минут назад, Haaans сказал(а): Вопрос надо эта плата или нет? Нее... нужен только резистор 4,7кОм между пином питания платы* (3.3В) и пином, на котором данные с датчика. На датчике 3 провода. Черный красный и желтый. Между красным и желтым нужен резистор.. И по моим наблюдениям - лучше всё сразу паять, без "соплей" (скруток, разъемов) *Даже если плату будешь питать по USB или на пин VIN подавать напряжение 7-10В, всё равно на на пине 3.3 будет питание. Поделиться сообщением Ссылка на сообщение
Haaans 1014 Жалоба Опубликовано 26 июля 1 минуту назад, VALKNUT сказал(а): нужен только резистор 4,7кОм Китайцы не написали об этом... Благодарю. Поделиться сообщением Ссылка на сообщение
VALKNUT 2522 Жалоба Опубликовано 26 июля 2 минут назад, Haaans сказал(а): Китайцы не написали об этом... Благодарю. На один пин можно кучу датчиков подвесить.. Поделиться сообщением Ссылка на сообщение
Haaans 1014 Жалоба Опубликовано 26 июля 1 час назад, VALKNUT сказал(а): На один пин можно кучу датчиков подвесить Так это хорошо, но пока не придут датчики дальше задавать вопросы бесмысленно. Поделиться сообщением Ссылка на сообщение
VALKNUT 2522 Жалоба Опубликовано 26 июля 1 минуту назад, Haaans сказал(а): пока не придут датчики А сам контроллер уже есть? Поделиться сообщением Ссылка на сообщение
Haaans 1014 Жалоба Опубликовано 26 июля 45 минут назад, VALKNUT сказал(а): А сам контроллер уже есть? Едет((( А руки то чешутся уже Пойду модель акваса строить... 1 VALKNUT отреагировали на это Поделиться сообщением Ссылка на сообщение
Haaans 1014 Жалоба Опубликовано 26 июля 6 часов назад, VALKNUT сказал(а): На один пин можно кучу датчиков подвесить.. Не выдержал я все таки. Физически как соединить по схеме понимаю, но… как контроллеру объяснить, что там не один датчик висит? уточняю, чтобы говорили об одном и том же: на пин 12 (например) вешаем (физически) датчик 1 и датчик 2. Где датчик 1 лежит в воде, а датчик 2 в воздухе. Поделиться сообщением Ссылка на сообщение
VALKNUT 2522 Жалоба Опубликовано 26 июля 35 минут назад, Haaans сказал(а): но… как контроллеру объяснить, что там не один датчик висит? уточняю, чтобы говорили об одном и том же: на пин 12 (например) вешаем (физически) датчик 1 и датчик 2. Где датчик 1 лежит в воде, а датчик 2 в воздухе. Контроллер знает, что датчик не один, контроллеру вообще пофигу, он опрашивает оба датчика и эти данные можно вывести в терминал.. То есть показывать в терминале 2 показания температуры.. или три.. или 100500.. Берем в руку один из датчиков, температура пошла вверх - датчик такой-то... Калибровку датчиков надо делать на талой воде. (я так делаю). Заморозил стакан воды, сунул оба датчика.. пошло таяние.. измеряем воду, а не лёд = 0.00. Поправку можно сделать в скетче... программном коде.. обычно я сматываю 2-3 датчика изолентой, чтоб показания не зависли от глубины и близости льда. Потом в коде делаю поправку (юстировку). Поделиться сообщением Ссылка на сообщение
Haaans 1014 Жалоба Опубликовано 26 июля 2 минут назад, VALKNUT сказал(а): Потом в коде делаю поправку (юстировку). Об этом думал. Но пока вопрос не актуальный. Один из моих Наставников на первых шагах мир КИПиА (контрольно измерительных приборов и автоматики) говорил про юстировку, но не в коде 4 минут назад, VALKNUT сказал(а): Контроллер знает, что датчик не один, контроллеру вообще пофигу, он опрашивает оба датчика Вот это я не могу понять, вот КАК он знает? Кто ему сказал? Если что вопросы риторические. По причине того что это не влияет на обсуждаемый процесс. Поделиться сообщением Ссылка на сообщение
VALKNUT 2522 Жалоба Опубликовано 26 июля В примере, который я привел, датчики добавляются в некий список и уже со списком работает контроллер по индексу. У каждого датчика есть свой уникальный физический адрес, это как мак адрес сетевого интерфейса. Вот эти адреса и добавлчются пои запуске контроллера в некий массив, в котором каждый датчик имеет свой индекс или номер.. Потом уже контрлллер работает не с физическим адресом, а с индексным, что быстрей. Поделиться сообщением Ссылка на сообщение
Haaans 1014 Жалоба Опубликовано 26 июля 11 минут назад, VALKNUT сказал(а): это как мак адрес сетевого интерфейса Вот этого не хватало мне. Все. Я теперь понял. Я не думал, что у датчика по цене шаурмы есть свой мак внутри. 1 VALKNUT отреагировали на это Поделиться сообщением Ссылка на сообщение
VALKNUT 2522 Жалоба Опубликовано 26 июля 15 минут назад, Haaans сказал(а): Я не думал, что у датчика по цене шаурмы есть свой мак внутри. Почитай - https://voltiq.ru/esp32-with-multiple-ds18b20-temperature-sensors/ Но учти, что я в своих проектах не использую жесткую привязку, а использую именно массив, чтоб можно было менять датчики без изменения прошивки (кода). На мой взгляд, это практичней. Хоть инициализация датчиков (занесение найденных датчиков в массив) занимает процессорное время.. не много, сотые доли секунды, но занимает. Поделиться сообщением Ссылка на сообщение
Haaans 1014 Жалоба Опубликовано 26 июля 2 минут назад, VALKNUT сказал(а): Почитай - https://voltiq.ru/esp32-with-multiple-ds18b20-temperature-sensors/ Ок. Просто вот для примера. ссылка тыц. То с чем сталкивался. и тут ни о каких мак адресах даже речи не идет. Поделиться сообщением Ссылка на сообщение
VALKNUT 2522 Жалоба Опубликовано 26 июля 2 минут назад, Haaans сказал(а): Просто вот для примера. ссылка тыц. То с чем сталкивался. и тут ни о каких мак адресах даже речи не идет. Понятное дело, это аналоговый, а не цифровой датчик. Его показания, это сопротивление.. а в DS18B20 мы получаем преобразованное в цифру значение. Он сам преобразует аналог в цифру и отдает нам готовый результат. Поделиться сообщением Ссылка на сообщение
Haaans 1014 Жалоба Опубликовано 26 июля 1 минуту назад, VALKNUT сказал(а): Он сам преобразует аналог в цифру и отдает нам готовый результат. Так, я понял. Ушел читать инфо по тому что ко мне сейчас едет. 1 VALKNUT отреагировали на это Поделиться сообщением Ссылка на сообщение
Lx671 224 Жалоба Опубликовано 26 июля 11 часов назад, VALKNUT сказал(а): не мешало почитать "всякое".. например POST/GET запросы. Не применительно к ESP32, а вообще.. Спасибо за подсказку)) Если у вас будет время запустить на своем устройстве тот код, который показали, то впишите сайт - https://rvideo-kaluga.ru/sho/12.php Для метода get есть поля - get_field и kod напишите в них что-нибудь со своего устройства. Для метода POST - поле Dat_p. Я не знаю какой метод вы используете, но, думаю пойму. Данные будут записаны на сайт с учетом вашего IP. Буду благодарен, если найдете время... Поделиться сообщением Ссылка на сообщение
VALKNUT 2522 Жалоба Опубликовано 26 июля 25 минут назад, Lx671 сказал(а): Буду благодарен, если найдете время... Сегодня уже не до того.. сделаю конечно. мне не сложно. Поделиться сообщением Ссылка на сообщение
VALKNUT 2522 Жалоба Опубликовано 27 июля 10 часов назад, Lx671 сказал(а): Буду благодарен, если найдете время... На ESP8266 загрузил такой код: Спойлер #include <ESP8266WiFi.h> #include <ESP8266HTTPClient.h> #define SERVER_IP "rvideo-kaluga.ru/sho/12.php" #ifndef STASSID #define STASSID "Wi-Fi-Name" #define STAPSK "Wi-Fi-Pass" #endif void setup() { Serial.begin(115200); Serial.println(); Serial.println(); Serial.println(); WiFi.begin(STASSID, STAPSK); while (WiFi.status() != WL_CONNECTED) { delay(500); Serial.print("."); } Serial.println(""); Serial.print("Connected! IP address: "); Serial.println(WiFi.localIP()); } void loop() { // wait for WiFi connection if ((WiFi.status() == WL_CONNECTED)) { WiFiClient client; HTTPClient http; Serial.print("[HTTP] begin...\n"); // configure traged server and url http.begin(client, "http://" SERVER_IP "/postplain/"); // HTTP http.addHeader("Content-Type", "application/json"); Serial.print("[HTTP] POST...\n"); // start connection and send HTTP header and body int httpCode = http.POST("{\"hello\":\"world\"}"); // httpCode will be negative on error if (httpCode > 0) { // HTTP header has been send and Server response header has been handled Serial.printf("[HTTP] POST... code: %d\n", httpCode); // file found at server if (httpCode == HTTP_CODE_OK) { const String& payload = http.getString(); Serial.println("received payload:\n<<"); Serial.println(payload); Serial.println(">>"); } } else { Serial.printf("[HTTP] POST... failed, error: %s\n", http.errorToString(httpCode).c_str()); } http.end(); } delay(10000); } Получил в терминал такой ответ: Спойлер 08:02:22.251 -> [HTTP] begin... 08:02:22.251 -> [HTTP] POST... 08:02:24.158 -> [HTTP] POST... code: 200 08:02:24.158 -> received payload: 08:02:24.158 -> << 08:02:24.158 -> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 08:02:24.158 -> <html> 08:02:24.158 -> <head> 08:02:24.158 -> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 08:02:24.158 -> <title>transit page</title> 08:02:24.158 -> <style type="text/css" media="all" rel="stylesheet"> 08:02:24.158 -> input, 08:02:24.158 -> select, 08:02:24.158 -> .text1 { 08:02:24.158 -> background: #a1a145; 08:02:24.158 -> background: -moz-linear-gradient(top, #a1a145 0%, #fafa77 100%); 08:02:24.158 -> background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#a1a145), color-stop(100%,#fafa77)); 08:02:24.205 -> background: -webkit-linear-gradient(top, #a1a145 0%,#fafa77 100%); 08:02:24.205 -> background: -o-linear-gradient(top, #a1a145 0%,#fafa77 100%); 08:02:24.205 -> background: -ms-linear-gradient(top, #a1a145 0%,#fafa77 100%); 08:02:24.205 -> background: linear-gradient(top, #a1a145 0%,#fafa77 100%); 08:02:24.205 -> padding: 2px 5px 2px ; 08:02:24.205 -> line-height: 160%; 08:02:24.205 -> border-radius: 7px; 08:02:24.205 -> border: 1px solid rgb(2, 1, 250); 08:02:24.205 -> -webkit-border-radius: 7px; 08:02:24.205 -> -moz-border-radius: 7px; 08:02:24.205 -> } 08:02:24.205 -> 08:02:24.205 -> .tqtt { 08:02:24.205 -> color: #dff; 08:02:24.205 -> background: #2596aa; 08:02:24.205 -> } 08:02:24.251 -> } 08:02:24.251 -> </style> 08:02:24.251 -> <script type="text/javascript"> 08:02:24.251 -> 08:02:24.251 -> 08:02:24.251 -> 08:02:24.251 -> </script> 08:02:24.251 -> </head> 08:02:24.251 -> <body> 08:02:24.251 -> 08:02:24.251 -> Array 08:02:24.251 -> ( 08:02:24.251 -> ) 08:02:24.251 -> Array 08:02:24.251 -> ( 08:02:24.251 -> ) 08:02:24.251 -> 08:02:24.251 -> </body> 08:02:24.251 -> </html> 08:02:24.251 -> 08:02:24.251 -> 08:02:24.251 -> >> Смотрите логи на сервере.. Поделиться сообщением Ссылка на сообщение
Lx671 224 Жалоба Опубликовано 27 июля 50 минут назад, VALKNUT сказал(а): Получил в терминал такой ответ: В общем это наверное ваш IP - 9120422877. От него была серия запросов без данных get - post. Данные, которые вы получили - это текст страницы. Получается, что с вашей стороны был запрос типа как робот без запуска. Это тоже что-то, с этим можно работать, но очень ограничено. Получить в файле я должен "Post=get_field=865765765---kod=00000Post=454545454get_field=---kod=Post=begin11get_field=---kod=". Это я зашел 3 раза с разными методами и данными. Можете попробовать зайти просто с браузера по той ссылке, на странице(12) увидите тестовые поля... Если зайдете с такой же - 11.php от туда будет передача post - увидите разницу... Поделиться сообщением Ссылка на сообщение
VALKNUT 2522 Жалоба Опубликовано 27 июля 7 минут назад, Lx671 сказал(а): Получается, что с вашей стороны был запрос типа как робот без запуска. Это тоже что-то, с этим можно работать, но очень ограничено. Я отрезал от вашей ссылки "?get_field=865765765", т.к. в сообщении ваша просьба была послать запрос дословно: "то впишите сайт - https://rvideo-kaluga.ru/sho/12.php" Если надо с параметрами, могу переписать, не долго*. Собственно вот... Спойлер 09:11:13.246 -> [HTTP] begin... 09:11:13.246 -> [HTTP] POST... 09:11:13.340 -> [HTTP] POST... code: 200 09:11:13.340 -> received payload: 09:11:13.340 -> << 09:11:13.340 -> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 09:11:13.340 -> <html> 09:11:13.340 -> <head> 09:11:13.340 -> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 09:11:13.340 -> <title>transit page</title> 09:11:13.340 -> <style type="text/css" media="all" rel="stylesheet"> 09:11:13.340 -> input, 09:11:13.340 -> select, 09:11:13.340 -> .text1 { 09:11:13.340 -> background: #a1a145; 09:11:13.340 -> background: -moz-linear-gradient(top, #a1a145 0%, #fafa77 100%); 09:11:13.340 -> background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#a1a145), color-stop(100%,#fafa77)); 09:11:13.386 -> background: -webkit-linear-gradient(top, #a1a145 0%,#fafa77 100%); 09:11:13.386 -> background: -o-linear-gradient(top, #a1a145 0%,#fafa77 100%); 09:11:13.386 -> background: -ms-linear-gradient(top, #a1a145 0%,#fafa77 100%); 09:11:13.386 -> background: linear-gradient(top, #a1a145 0%,#fafa77 100%); 09:11:13.386 -> padding: 2px 5px 2px ; 09:11:13.386 -> line-height: 160%; 09:11:13.386 -> border-radius: 7px; 09:11:13.386 -> border: 1px solid rgb(2, 1, 250); 09:11:13.386 -> -webkit-border-radius: 7px; 09:11:13.386 -> -moz-border-radius: 7px; 09:11:13.386 -> } 09:11:13.386 -> 09:11:13.386 -> .tqtt { 09:11:13.386 -> color: #dff; 09:11:13.432 -> background: #2596aa; 09:11:13.432 -> } 09:11:13.432 -> } 09:11:13.432 -> </style> 09:11:13.432 -> <script type="text/javascript"> 09:11:13.432 -> 09:11:13.432 -> 09:11:13.432 -> 09:11:13.432 -> </script> 09:11:13.432 -> </head> 09:11:13.432 -> <body> 09:11:13.432 -> 09:11:13.432 -> Array 09:11:13.432 -> ( 09:11:13.432 -> [get_field] => 865765765/postplain/ 09:11:13.432 -> ) 09:11:13.432 -> Array 09:11:13.432 -> ( 09:11:13.432 -> ) 09:11:13.432 -> 09:11:13.432 -> </body> 09:11:13.432 -> </html> 09:11:13.432 -> 09:11:13.432 -> 09:11:13.432 -> >> Запрос повторяется каждые 10 сек. Пока не выключаю, пусть пуляется запросами... Поделиться сообщением Ссылка на сообщение
AlexLi 4128 Жалоба Опубликовано 27 июля Ну вы, блин, монстры!!!)))) 1 VALKNUT отреагировали на это Поделиться сообщением Ссылка на сообщение
Lx671 224 Жалоба Опубликовано 27 июля 56 минут назад, VALKNUT сказал(а): Если надо с параметрами, могу переписать, не долго*. Вы не совсем поняли. Повторять запрос не надо. https://rvideo-kaluga.ru/sho/user/9120422877.txt - Это файл, который после вас дописывается и вы его можете смотреть после каждого запроса - в конце будет дописано... Дословно вы правильно поняли, но надо задать поля (для POST - переменная Dat_p), я их написал. Тестовый GET вы видите в адресной строке после запроса из браузера. Ща файл зачищу. Если ваш IP не изменится, тот файл можете смотреть... 1 час назад, VALKNUT сказал(а): Запрос повторяется каждые 10 сек Вижу данные, проверьте, ваши?)) Файл смотрите... Поделиться сообщением Ссылка на сообщение
Lx671 224 Жалоба Опубликовано 27 июля 3 часов назад, VALKNUT сказал(а): если надо с параметрами, могу переписать, не долго Я 12 вернул, для проверки теперь файл txt будет переписываться при запросе. А этот текст вы запустили с чего? Поделиться сообщением Ссылка на сообщение
VALKNUT 2522 Жалоба Опубликовано 27 июля 4 часов назад, Lx671 сказал(а): А этот текст вы запустили с чего? ESP8266 WeMos D1 Mini Pro v.3 1 Lx671 отреагировали на это Поделиться сообщением Ссылка на сообщение
Haaans 1014 Жалоба Опубликовано 27 июля @Lx671 подскажите пожалуйста, а что вы пытаетесь проверить? Поделиться сообщением Ссылка на сообщение
Lx671 224 Жалоба Опубликовано 27 июля 38 минут назад, Haaans сказал(а): подскажите пожалуйста, а что вы пытаетесь проверить? Получить управление с любого устройства без установки приложений, драйверов... Для этого надо связывать через стандартные протоколы, которые у всех есть. И при этом обслуживание пишется самим как угодно, в дисковом пространстве для статистики сразу нет границ и в фантазии тоже)) Поделиться сообщением Ссылка на сообщение
Lx671 224 Жалоба Опубликовано 30 июля Ну вот 2-е такие схемы могут включить доступ до контроллера через звуковой выход любого устройства без интернета или через транзитный сайт. Кол-во команд при этом может быть почти безсчетным)) В 27.07.2024 - 17:08, VALKNUT сказал(а): ESP8266 WeMos D1 Mini Pro v.3 Я нахожу только похожую - https://www.ozon.ru/product/plata-razrabotchika-kontroller-esp8266-16mb-wemos-d1-mini-pro-v3-0-nodemcu-interfeys-wi-fi-usb-1367268255/?asb=7DONjzJLsdw51af225NgTTl0DhpMKNhgEX%2FZgKPnL6s%3D&asb2=FwO6nz0cT8i1e_Xhxy_XkE3hzRopN8vre07NG4a5f5VhZ_Tez5movzX_urJ_kgjh_6Q8q2hAsCL54mbPnZ2ZrA&avtc=1&avte=2&avts=1722333794&keywords=ESP8266+WeMos+D1+Mini+Pro+v.3 Гляньте, сильно похожая? Поделиться сообщением Ссылка на сообщение
VALKNUT 2522 Жалоба Опубликовано 30 июля 17 минут назад, Lx671 сказал(а): Гляньте, сильно похожая? Не совсем... на этой (по ссылке) керамическая антенна... эффективность ниже, чем у "нарисованной". Вот моделька получше.. Контроллер ESP8266 4Mb D1 Mini Поделиться сообщением Ссылка на сообщение
Lx671 224 Жалоба Опубликовано 30 июля 2 часов назад, VALKNUT сказал(а): Вот моделька получше.. К ней эта статья подходит? В плане проги автомигания диода для быстрой проверки? - https://arduinomaster.ru/datchiki-arduino/esp8266-wemos-d1-mini-raspinovka/?ysclid=lz8eypr28j99516998 И текст загруженной проги без питания сохраняется или переписывать надо? Поделиться сообщением Ссылка на сообщение