организация TCP на ESP8266 (подскажите)

Тема в разделе "Проводная и беспроводная связь", создана пользователем ostrov, 21 июн 2016.

  1. ostrov

    ostrov Гуру

    Задача соединить два ESP8266 для передачи данных. Нужен простой работающий код. Сервер из примеров и манулов с горем пополам собрать получилось, задача принимать байты и выводит в ком-порт, нужен клиент которые бы эти байты пересылал. Подскажите как его уже собрать?

    Сервер:
    Код (C++):
    #include <ESP8266WiFi.h>

    WiFiServer server(8888);
    WiFiClient client;

    void setup() {
      initHardware();
      setupWiFi();
      server.begin();
      Serial.println("begin");
    }

    void loop() {
      if (!client.connected()) {
        client = server.available();
      } else {
        if (client.available() > 0) {
          Serial.write(client.read());
        }
      }
      //    delay(50);
    }

    void setupWiFi() {
      WiFi.mode(WIFI_AP);
      WiFi.softAP("RControl", "12345678");
    }

    void initHardware() {
      Serial.begin(115200);
    }
     
  2. ИгорьК

    ИгорьК Оракул Модератор

    Может, не в тему... На Lua (NodeMCU) это делается шаблонно. Не могу показать код - не занимался этим. Всю передачу информации для дома делаю через MQTT брокер. Но по приведенной ссылке вроде бы все достаточно ясно расписано.
     
  3. ostrov

    ostrov Гуру

    Lua не хочу, по отзывам знающих и пробующих она тормозлива и глючна. В идеале на данном этапе использовать надстройку к Arduino IDE. Тестовые программы отлично работают, осталось допилить под свои нужды. А нужды максимально простые - передача данных между модулями.
     
  4. ИгорьК

    ИгорьК Оракул Модератор

    Мне так не повезло. Знающих не знал.
    Поэтому все мои проекты на этом модуле на Lua и ни одной жалобы на глючность. Можете проверить.
    И дома (включая дачу) их штук 15: все на Lua. Вот такая фигня...
     
  5. ostrov

    ostrov Гуру

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

    ostrov Гуру

    Да и еще, для справки. Может ли модуль под Lua делать что то еще кроме поддержки вай-фая, например опрашивать датчики, зажигать индикаторы и тп?
     
  7. ИгорьК

    ИгорьК Оракул Модератор

    http://nodemcu.readthedocs.io/en/dev/ посмотрите левую колонку
    а также еще модули, что не вошли в прошивку: https://github.com/nodemcu/nodemcu-firmware/tree/master/lua_modules

    модуль заточен под IoT, по-моему, все что есть в этой экологии - поддерживается.
     
  8. ostrov

    ostrov Гуру

  9. DIYMan

    DIYMan Guest

    Кстати за LUA - один из моих самых любимых языков - метатаблицы, нямка. Да и вообще - по смоему он очен красив, надо только вкурить. Как-то давно на нём писал скрипты под casual-игрушку самописную - вещь.
     
    ИгорьК нравится это.
  10. ИгорьК

    ИгорьК Оракул Модератор

    Если бы Вы объяснили кое-что про callback... Эх! Если создам отдельную тему - ответите? Чтобы не загромождать эту уважая автора.
     
  11. DIYMan

    DIYMan Guest

    Давайте попробуем. Правда честно скажу - давно LUA в руки не брал, но обещаю вспомнить ;)
     
  12. ИгорьК

    ИгорьК Оракул Модератор

    С надеждой: http://forum.amperka.ru/threads/callback-lua.8771/
     
  13. ostrov

    ostrov Гуру

    ИгорьК, как специалист по NodeMCU поделитесь как подключаете ее к PC. У меня стойкое ощущение, что питания от USB ему не хватает. Питаю извне на ножки 3V3, но помогает не особо. Определяет порт, через секунду пропадает. Иногда держится дольше, успеваю прошить, но все равно очень ненадежно. Платы две, симптомы одинаковые.
     
  14. ИгорьК

    ИгорьК Оракул Модератор

    Исключительно через pl2303 без всякой подпитки:
    [​IMG]
     
    Последнее редактирование: 22 июн 2016
  15. ИгорьК

    ИгорьК Оракул Модератор

    Если платы две а симптомы одинаковые то дело не в платах. Возможно USB порт не тянет, или проблема в той железке к чему они присоединены.
    Pl2303 отличная железка. У меня один тестовый датчик esp8266+DS18b20 до сих пор на ней висит.
     
    Последнее редактирование: 22 июн 2016
  16. ostrov

    ostrov Гуру

    У меня вот такие со своим портом:
    [​IMG]
    Внешне сделаны качественно. Наверное излишне нажористые ввиду массового обвеса. Они меня утомили, вместо того чтобы изучать и пробовать, я мучаюсь с запуском постоянно. (
     
  17. ИгорьК

    ИгорьК Оракул Модератор

    Это хорошая железка. Проблемы скорее с портом USB или дровами. Ничего на ней не навешано особо. У меня есть NodeMCU v 0.9 там смысл такой же - все работает.
    Посмотрите название микросхемы справа и Поищите дрова с её обозначением.
     
  18. Unixon

    Unixon Оракул Модератор

    CH340
     
  19. ИгорьК

    ИгорьК Оракул Модератор

    Не факт. Есть новее.
     
  20. ostrov

    ostrov Гуру

    Проблема все же в питании а не в чипе, портах или драйверах. Относительно недавно заметил, что питание через макетку хорошо работает только на малых токах, скажем до 0,5А. Если больше, то начинаются непонятные глюки. Так было с NRF, с сервой, теперь вот с ESP. Запитал дополнительно через вход 5В, вроде бы заработало. Программы шьются, работают. Теперь можно заняться непосредственно штурмом TCP.
     
    ИгорьК нравится это.