Jump to content
VALKNUT

Ардуино в помощь аквариуму

Recommended Posts

Lx671    409
1 час назад, VALKNUT сказал(а):

Связь с чем?

На удаленный сервер, где находится сайт. Например в сторону 1gb.ru . Там нужен Host name, usr name, password.

С той стороны надо получить статус соединения, после этого есть доступ до каталога файлов... 

Если при этом ESP32 не потеряет возможность отличать "0" от "1" на входах, тогда мне есть смысл заняться.

В статье, которую вы дали выше, написано ограничение, что при работе Wi-Fi не работает анализ входных уровней или я не так понял??

Share this post


Link to post
VALKNUT    3954
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

Share this post


Link to post
Lx671    409
16 часов назад, VALKNUT сказал(а):

if (client.connected()) { client.println("hello from ESP8266"); }

Прикольно конечно, не очень ясно как на сайт можно отправить просто сообщение)) Это вроде не монитор.

client.writeln("\\pr1.txt"); - файл записывается в корень сайта должно быть...

16 часов назад, VALKNUT сказал(а):

UDP и TCP, а еще есть состояние.. например established (установленное). UDP не требует подтверждения получения пакета адресатом (например видеопоток), а TCP ждет ответа от адресата (получен пакет или нет),

Я протоколы "внутри" почти не изучал. Знаю только, что данные с сайта можно получить на комп и выполнить в браузере - это у всех, а можно

связываться по FTP для обслуживания сайта - замены файлов... 

Если 1-е устройство кладет данные на сайт, а другое в другом месте их читает в браузере, то это есть общая доступность и сервис без ограничений - цифры, графики, как угодно...

Share this post


Link to post
VALKNUT    3954
11 минут назад, Lx671 сказал(а):

Прикольно конечно, не очень ясно как на сайт можно отправить просто сообщение)) Это вроде не монитор.

Полагаю, что и здесь Вам бы не мешало почитать "всякое".. например POST/GET запросы. Не применительно к ESP32, а вообще.. для понимания как всё работает.
Но это не относится к данной теме. Думаю, что Вам стоило бы завести свою тему или что-то подобное и пообсуждать с заинтересованными хостинги, сайты, фтп..

Share this post


Link to post
Haaans    2013

Шеф @VALKNUT , вопрос по сабжу. В общем. Датчики температуры DS18B20 Китайцы предлогают с вот такой платой и без. Я так понимаю плата обвязки, там вроде резистор и кондер висит, для чего не понял. Вопрос надо эта плата или нет?

Screenshot_2024-07-26-11-12-13-502_com.alibaba.aliexpresshd.jpg

Screenshot_2024-07-26-11-12-11-485_com.alibaba.aliexpresshd.jpg

Share this post


Link to post
VALKNUT    3954
26 минут назад, Haaans сказал(а):

Вопрос надо эта плата или нет?

Нее... нужен только резистор 4,7кОм между пином питания платы* (3.3В) и пином, на котором данные с датчика. На датчике 3 провода. Черный красный и желтый. Между красным и желтым нужен резистор..

И по моим наблюдениям - лучше всё сразу паять, без "соплей" (скруток, разъемов)

*Даже если плату будешь питать по USB или на пин VIN подавать напряжение 7-10В, всё равно на на пине 3.3 будет питание.

Share this post


Link to post
Haaans    2013
1 минуту назад, VALKNUT сказал(а):

нужен только резистор 4,7кОм

Китайцы не написали об этом... Благодарю.

Share this post


Link to post
VALKNUT    3954
2 минут назад, Haaans сказал(а):

Китайцы не написали об этом... Благодарю.

На один пин можно кучу датчиков подвесить..
image.jpg.1c92fb5146722983d48a20919c6a5947.jpg

Share this post


Link to post
Haaans    2013
1 час назад, VALKNUT сказал(а):

На один пин можно кучу датчиков подвесить

Так это хорошо, но пока не придут датчики дальше задавать вопросы бесмысленно.

Share this post


Link to post
VALKNUT    3954
1 минуту назад, Haaans сказал(а):

пока не придут датчики

А сам контроллер уже есть?

Share this post


Link to post

Haaans    2013
45 минут назад, VALKNUT сказал(а):

А сам контроллер уже есть?

Едет(((

А руки то чешутся уже :) Пойду модель акваса строить...

  • Хи-хи-хи 1

Share this post


Link to post
Haaans    2013
6 часов назад, VALKNUT сказал(а):

На один пин можно кучу датчиков подвесить..

Не выдержал я все таки. Физически как соединить по схеме понимаю, но… как контроллеру объяснить, что там не один датчик висит? 
уточняю, чтобы говорили об одном и том же: на пин 12 (например) вешаем (физически) датчик 1 и датчик 2. Где датчик 1 лежит в воде, а датчик 2 в воздухе.

Share this post


Link to post
VALKNUT    3954
35 минут назад, Haaans сказал(а):

но… как контроллеру объяснить, что там не один датчик висит? 
уточняю, чтобы говорили об одном и том же: на пин 12 (например) вешаем (физически) датчик 1 и датчик 2. Где датчик 1 лежит в воде, а датчик 2 в воздухе.

Контроллер знает, что датчик не один, контроллеру вообще пофигу, он опрашивает оба датчика и эти данные можно вывести в терминал..
То есть показывать в терминале 2 показания температуры.. или три.. или  100500..
Берем в руку один из датчиков, температура пошла вверх - датчик такой-то...

Калибровку датчиков надо делать на талой воде. (я так делаю).

Заморозил стакан воды, сунул оба датчика.. пошло таяние.. измеряем воду, а не лёд = 0.00.
Поправку можно сделать в скетче... программном коде.. обычно я сматываю 2-3 датчика изолентой, чтоб показания не зависли от глубины и близости льда. Потом в коде делаю поправку (юстировку).

Share this post


Link to post
Haaans    2013
2 минут назад, VALKNUT сказал(а):

Потом в коде делаю поправку (юстировку).

Об этом думал. Но пока вопрос не актуальный. Один из моих Наставников на первых шагах мир КИПиА (контрольно измерительных приборов и автоматики) говорил про юстировку, но не в коде ;)

 

4 минут назад, VALKNUT сказал(а):

Контроллер знает, что датчик не один, контроллеру вообще пофигу, он опрашивает оба датчика

Вот это я не могу понять, вот КАК он знает? Кто ему сказал? Если что вопросы риторические.

По причине того что это не влияет на обсуждаемый процесс.

Share this post


Link to post
VALKNUT    3954

В примере, который я привел, датчики добавляются в некий список и уже со списком работает контроллер по индексу.

У каждого датчика есть свой уникальный физический адрес, это как мак адрес сетевого интерфейса. Вот эти адреса и добавлчются пои запуске контроллера в некий массив, в котором каждый датчик имеет свой индекс или номер..

Потом уже контрлллер работает не с физическим адресом, а с индексным, что быстрей.

Share this post


Link to post
Haaans    2013
11 минут назад, VALKNUT сказал(а):

это как мак адрес сетевого интерфейса

Вот этого не хватало мне. Все. Я теперь понял. Я не думал, что у датчика по цене шаурмы есть свой мак внутри.

  • Хи-хи-хи 1

Share this post


Link to post
VALKNUT    3954
15 минут назад, Haaans сказал(а):

Я не думал, что у датчика по цене шаурмы есть свой мак внутри.

Почитай - https://voltiq.ru/esp32-with-multiple-ds18b20-temperature-sensors/

Но учти, что я в своих проектах не использую жесткую привязку, а использую именно массив, чтоб можно было менять датчики без изменения прошивки (кода). На мой взгляд, это практичней. Хоть инициализация датчиков (занесение найденных датчиков в массив) занимает процессорное время.. не много, сотые доли секунды, но занимает.

Share this post


Link to post
Haaans    2013
2 минут назад, VALKNUT сказал(а):

Ок. Просто вот для примера. ссылка тыц. То с чем сталкивался. и тут ни о каких мак адресах даже речи не идет.

Share this post


Link to post
VALKNUT    3954
2 минут назад, Haaans сказал(а):

Просто вот для примера. ссылка тыц. То с чем сталкивался. и тут ни о каких мак адресах даже речи не идет.

Понятное дело, это аналоговый, а не цифровой датчик. Его показания, это сопротивление.. а в DS18B20 мы получаем преобразованное в цифру значение. Он сам преобразует аналог в цифру и отдает нам готовый результат.

Share this post


Link to post
Haaans    2013
1 минуту назад, VALKNUT сказал(а):

Он сам преобразует аналог в цифру и отдает нам готовый результат.

Так, я понял. Ушел читать инфо по тому что ко мне сейчас едет.

  • Лайк 1

Share this post


Link to post

Lx671    409
11 часов назад, VALKNUT сказал(а):

не мешало почитать "всякое".. например POST/GET запросы. Не применительно к ESP32, а вообще..

Спасибо за подсказку)) 

Если у вас будет время запустить на своем устройстве тот код, который показали, то впишите сайт - https://rvideo-kaluga.ru/sho/12.php

Для метода get есть поля - get_field и kod напишите в них что-нибудь со своего устройства.

Для метода POST - поле Dat_p. Я не знаю какой метод вы используете, но, думаю пойму. Данные будут записаны на сайт с учетом вашего IP.

Буду благодарен, если найдете время...

Share this post


Link to post
VALKNUT    3954
25 минут назад, Lx671 сказал(а):

Буду благодарен, если найдете время...

Сегодня уже не до того.. сделаю конечно. мне не сложно.

Share this post


Link to post
VALKNUT    3954
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 -> >>

 

Смотрите логи на сервере..

Share this post


Link to post
Lx671    409
50 минут назад, VALKNUT сказал(а):

Получил в терминал такой ответ:

В общем это наверное ваш IP - 9120422877. От него была серия запросов без данных get - post.

Данные, которые вы получили - это текст страницы. Получается, что с вашей стороны был запрос типа как робот без запуска. Это тоже что-то, с этим можно работать, но очень ограничено. 

Получить в файле я должен "Post=get_field=865765765---kod=00000Post=454545454get_field=---kod=Post=begin11get_field=---kod=".

Это я зашел 3 раза с разными методами и данными. 

Можете попробовать зайти просто с браузера по той ссылке, на странице(12) увидите  тестовые поля... Если зайдете с такой же - 11.php от туда будет передача post - увидите разницу...

Share this post


Link to post
VALKNUT    3954
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 сек. Пока не выключаю, пусть пуляется запросами... :ap:

Share this post


Link to post
AlexLi    6483

Ну вы, блин, монстры!!!))))

  • Хи-хи-хи 1

Share this post


Link to post
Lx671    409
56 минут назад, VALKNUT сказал(а):

Если надо с параметрами, могу переписать, не долго*.

Вы не совсем поняли. Повторять запрос не надо.

https://rvideo-kaluga.ru/sho/user/9120422877.txt - Это файл, который после вас дописывается и вы его можете смотреть после каждого запроса - в конце будет дописано...

Дословно вы правильно поняли, но надо задать поля (для POST - переменная Dat_p), я их написал. Тестовый GET вы видите в адресной строке после запроса из браузера.  Ща файл зачищу.

Если ваш IP не изменится, тот файл можете смотреть...

1 час назад, VALKNUT сказал(а):

Запрос повторяется каждые 10 сек

Вижу данные, проверьте, ваши?)) Файл смотрите...

Share this post


Link to post
Lx671    409
3 часов назад, VALKNUT сказал(а):

если надо с параметрами, могу переписать, не долго

Я 12 вернул, для проверки теперь файл  txt будет переписываться при запросе.

А этот текст вы запустили с  чего?

Share this post


Link to post
VALKNUT    3954
4 часов назад, Lx671 сказал(а):

А этот текст вы запустили с  чего?

ESP8266 WeMos D1 Mini Pro v.3
image.jpg.d0fc3f874502eb7a7f4fb40738c924fa.jpg

  • Лайк 1

Share this post


Link to post
Haaans    2013

@Lx671 подскажите пожалуйста, а что вы пытаетесь проверить?

Share this post


Link to post

Lx671    409
38 минут назад, Haaans сказал(а):

подскажите пожалуйста, а что вы пытаетесь проверить?

Получить управление с любого устройства без установки приложений, драйверов... Для этого надо связывать через стандартные протоколы, которые у всех есть.

И при этом обслуживание пишется самим как угодно, в дисковом пространстве для статистики сразу нет границ и в фантазии тоже))

Share this post


Link to post
Lx671    409

Ну вот 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

Гляньте, сильно похожая?

LC_acp.jpg

Share this post


Link to post
VALKNUT    3954
17 минут назад, Lx671 сказал(а):

Гляньте, сильно похожая?

Не совсем... на этой (по ссылке) керамическая антенна... эффективность ниже, чем у "нарисованной".

Вот моделька получше..
Контроллер ESP8266 4Mb D1 Mini

Share this post


Link to post
Lx671    409
2 часов назад, VALKNUT сказал(а):

Вот моделька получше..

К ней эта статья подходит? В плане проги автомигания диода для быстрой проверки? - https://arduinomaster.ru/datchiki-arduino/esp8266-wemos-d1-mini-raspinovka/?ysclid=lz8eypr28j99516998

И текст загруженной проги без питания сохраняется или переписывать надо?

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×