TCP соединение и отправка комманд
- Войдите на сайт для отправки комментариев
Всем привет. Есть проблема, незнаю в какакую сторону копать. Короче. В локальной сети есть устройство которое через TCP порт может принимать команды. Я использую NodeMCU v3 для подключения и управления. С подключением, собственно проблем нет. Все подключается. А вот с управлением проблемы. Отправляю команды стандартным client.print(), устройство на них не реагирует. Подключаюсь к компьютеру для проверки, сообщеня приходят. Нашел информацию по устройству, что его протокол совместим с Telnet, который по умолчанию отправляет CRLF между строками, а устройство требует только LF. На тему Line Feed нашел кучу инфы для линуксовых программ и ничего для ардуины. Со строкой пробовал разные варианты и client.println(), и "\n", неработет... собственно неработающий кусок:
WiFiClient client; if (!client.connect (host, port)) { Serial.println("connect ERROR"); delay(3000); Serial.println("Monitor connected"); delay(1000); } client.println("MONITOR A:"); client.println("Brightness: 10"); client.println("Saturation: 0"); client.stop(); Serial.println("Всьо..."); delay(10000);
Пните хотябы в какую сторону копать, ато уже совсем из сил выбился...
Отправляю команды стандартным client.print(), устройство на них не реагирует.
В коде нет ни одного вызова client.print(). А как раз его и нужно использовать, с явными окончаниями строк.
P.S. Ошибку в (!client.connect (host, port)) уже увидел. Всеравно неработает.
client.println() - это один из вариантов остался.
Также неработает. Блин, где-то я совсем не там копаю по ходу...
client.print("MONITOR A:\n");
Тут проблем нет, разбирайся в устройстве.
Что-то я не вижу, где вы в вашем коде ответ принимаете. То что команды не срабатывают, не обязательно означает что они не доходят. Надо получать и анализировать ответы сервера
Да. Все верно. Я ответы от сервера ардуиной не принимаю. Я почему-то подумал что это не обязательно, так как при подключении с компьютера после отправки комманды ничего не возвращается. Единственное что при подключении устройство отправляет дамп состояния, а он там немалый такой, строк на 35-40. Вот я и поленился и проигнорировал его...