Возможно ли передавать данные с Arduino Nano на сервер Websocket через USB?
У меня есть Arduino Nano и локальный сервер WebSocket Java (ws://localhost:8888), управляемый файлом .jar на компьютере.
Мне интересно, можно ли отправлять данные (текст, цифры и т.д.) С Arduino Nano на сервер WebSocket через USB-кабель (USB-A к USB Mini, который обычно питает Nano).
Если да, то что мне нужно для этого?
Быстрый поиск в Google библиотек WebSocket для Arduino показывает:
Websockets и Arduino быстроподключаются к Websocket, но, глядя на примеры, в первом используется Ethernet.h, а во втором используется Wifi.h, и я не уверен, совместима ли моя плата с этим без других модулей.
@kevinlinxc, 👍1
Обсуждение3 ответа
Лучший ответ:
Я закончил тем, что использовал Python для подключения Serial к WebSocket. Я также хотел гибкости при отправке с WebSocket обратно в серийный, поэтому я не пробовал предварительно упакованное решение, такое как https://github.com/RandomStudio/serial-to-websocket
это то, что РаулГ рекомендовал несколько дней назад. было бы неплохо принять его ответ и не писать новый, @Juraj
Нет, ты не можешь. Arduino имеет последовательное соединение, а не сетевое подключение. Если программа Java разработана вами самостоятельно, вам нужно будет переписать ее, чтобы использовать последовательный вместо (или также) веб-пакетов. Либо это, либо напишите отдельную часть программного обеспечения для вашего компьютера, чтобы перейти между последовательным подключением Arduino и интерфейсом WebSockets.
Как уже сказал @Majenko, ATmega328 использует последовательное соединение для связи. Другой чип на плате переводит последовательные данные в USB-формат и наоборот. Это позволяет вашему компьютеру взаимодействовать с основным чипом Nano (ATmega328). Чтобы решить вашу проблему, вы можете попробовать использовать что-то вроде этого простого сервера узлов последовательного подключения к websocket, который прослушивает данные, поступающие из последовательного порта, и отправляет их через WebSocket.
- Как погасить светодиод за определенное время с помощью FastLED
- Чтение и запись в EEPROM
- Соединение ATTiny85 I2C с Arduino Nano
- Функция random() вообще не случайна
- Кто-нибудь может привести пример извлечения данных из массива char?
- Arduino работает правильно, только когда я прикасаюсь к нему
- Проблема с чтением данных из ELM327
- Не могу прочитать данные json esp 32 ошибка «parseObject() failed»
Я не знаю возможностей, которые у вас есть в WebSocket, но обычный способ связи с Arduino (когда у него нет шляпы Wi-Fi или Ethernet) - через последовательный. Вы можете использовать практически любую библиотеку последовательной связи для отправки строк с/на Arduino., @PMF
Я так и понял, я пробую библиотеку сериальных портов и сталкиваюсь с проблемой, смотрите здесь: https://github.com/serialport/node-serialport/issues/2297, @kevinlinxc
Вы не можете описать, какую ошибку вы получаете, а что не работает., @PMF
Это есть в названии номера и снова упоминается в выпуске, @kevinlinxc