Переадресация UDP

Тема в разделе "ESP8266, ESP32", создана пользователем Patriot, 4 май 2018.

  1. Patriot

    Patriot Нерд

    Всем привет, есть такая схема устройств:
    Приложение на ПК по UDP шлет на определенный IP и порт данные, на этом же ПК стоит socat настроенный на этот IP и порт, он получает данные и переадресовывает их на ком-порт в ардуино. Ардуина их получает и обрабатывает (далее шлет в по rs485).

    Хочу сделать беспроводной вариант передачи этих данных. От приложения сразу на ESP8266 - которая в первом варианте реализации будет пересылать на ардуино, а в случае успеха уже буду переписывать что бы выкинуть из схемы ардуино. Написал скет, данные идут, ардуина их получает судя по rx, но они некорректные. Может, в скетче ошибка?

    Код (C++):
    #include <ESP8266WiFi.h>
    #include <WiFiUdp.h>

    const char* ssid = "ssid";
    const char* password = "password";

    WiFiUDP Udp;
    unsigned int localUdpPort = 5010;  // local port to listen on
    char incomingPacket[255];

    void setup()
    {
      Serial.begin(250000);
      WiFi.begin(ssid, password);
      while (WiFi.status() != WL_CONNECTED)
      {
        delay(500);
      }
      Udp.begin(localUdpPort);
    }


    void loop()
    {
      int packetSize = Udp.parsePacket();
      if (packetSize)
      {
        Serial.print(Udp.read());
      }
    }