Перейти к содержанию
VALKNUT

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

Рекомендуемые сообщения

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

Связь с чем?

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

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

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

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

Поделиться сообщением


Ссылка на сообщение
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". В примере это есть.

 

Поделиться сообщением


Ссылка на сообщение
16 часов назад, VALKNUT сказал(а):

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

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

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

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

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

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

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

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

Поделиться сообщением


Ссылка на сообщение
11 минут назад, Lx671 сказал(а):

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

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

Поделиться сообщением


Ссылка на сообщение

Шеф @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

Поделиться сообщением


Ссылка на сообщение
26 минут назад, Haaans сказал(а):

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

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

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

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

Поделиться сообщением


Ссылка на сообщение
1 минуту назад, VALKNUT сказал(а):

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

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

Поделиться сообщением


Ссылка на сообщение
2 минут назад, Haaans сказал(а):

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

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

Поделиться сообщением


Ссылка на сообщение
1 час назад, VALKNUT сказал(а):

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

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

Поделиться сообщением


Ссылка на сообщение
1 минуту назад, Haaans сказал(а):

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

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

Поделиться сообщением


Ссылка на сообщение

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

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

Едет(((

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

Поделиться сообщением


Ссылка на сообщение
6 часов назад, VALKNUT сказал(а):

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

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

Поделиться сообщением


Ссылка на сообщение
35 минут назад, Haaans сказал(а):

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

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

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

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

Поделиться сообщением


Ссылка на сообщение
2 минут назад, VALKNUT сказал(а):

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

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

 

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

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

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

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

Поделиться сообщением


Ссылка на сообщение

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

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

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

Поделиться сообщением


Ссылка на сообщение
11 минут назад, VALKNUT сказал(а):

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

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

Поделиться сообщением


Ссылка на сообщение
15 минут назад, Haaans сказал(а):

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

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

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

Поделиться сообщением


Ссылка на сообщение
2 минут назад, VALKNUT сказал(а):

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

Поделиться сообщением


Ссылка на сообщение
2 минут назад, Haaans сказал(а):

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

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

Поделиться сообщением


Ссылка на сообщение
1 минуту назад, VALKNUT сказал(а):

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

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

Поделиться сообщением


Ссылка на сообщение

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

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

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

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

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

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

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

Поделиться сообщением


Ссылка на сообщение
25 минут назад, Lx671 сказал(а):

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

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

Поделиться сообщением


Ссылка на сообщение
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 -> >>

 

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

Поделиться сообщением


Ссылка на сообщение
50 минут назад, VALKNUT сказал(а):

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

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

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

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

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

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

Поделиться сообщением


Ссылка на сообщение
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:

Поделиться сообщением


Ссылка на сообщение
56 минут назад, VALKNUT сказал(а):

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

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

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

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

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

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

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

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

Поделиться сообщением


Ссылка на сообщение
3 часов назад, VALKNUT сказал(а):

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

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

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

Поделиться сообщением


Ссылка на сообщение
4 часов назад, Lx671 сказал(а):

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

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

Поделиться сообщением


Ссылка на сообщение

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

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

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

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

Поделиться сообщением


Ссылка на сообщение

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

Поделиться сообщением


Ссылка на сообщение
17 минут назад, Lx671 сказал(а):

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

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

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

Поделиться сообщением


Ссылка на сообщение
2 часов назад, VALKNUT сказал(а):

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

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

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

Поделиться сообщением


Ссылка на сообщение

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

×