Я пытаюсь подключить старую версию micro к серверу MQTT для проекта IoT. Я купил оценочную плату Inventek ISMART 43362-E, чтобы преобразовать существующий UART в MQTT через интерфейс WiFi, и я запускаю команды вручную, используя их демонстрационное приложение. Чтобы проверить это, я купил Raspberry Pi 3 Model B и оснастил его брокером / сервером MQTT из проекта Mosquitto. Я могу подключиться к брокеру и передавать сообщения туда и обратно между клиентами Mosquitto MQTT, работающими на одном Raspberry Pi (режим localhost), или клиентом Mosquitto MQTT, работающим на Windows 10 P C на том же маршрутизаторе.
Используя ISMART 43362-E, я могу подключиться к маршрутизатору и пропинговать сервер. Но когда я пытаюсь открыть к нему соединение, ISMART 43362-E возвращается с:
[MQTT ] Connecting to xx.yy.zz.ww
ERROR
Это не дает мне особого значения go. И я исчерпал всю документацию, которую можно предложить. Я sh брокер Mosquitto сказал бы мне, почему он отклоняет соединение. Есть ли способ настроить его на выдачу такой информации? Я ничего не могу найти ни в файлах man, ни где-либо еще.
Спасибо за любые предложения.
Следуя за ударами @ hardillb (спасибо!), Я нашел файл журнала.
Мой файл mosquitto.conf содержит запись: log_dest file /var/log/mosquitto/mosquitto.log
На странице руководства mosquitto.conf говорится, что если вы не укажете log_type, вы получите сообщения типа error, warning, notice и information, и все, что меня волнует, это сообщения об ошибках.
Когда я смотрю в журнал, я вижу записи следующего вида: 1596741864: New connection from 10.0.0.76 on port 1883.
1596741864: Socket error on client <unknown>, disconnecting.
1596741864: New connection from 10.0.0.76 on port 1883.
1596741864: Socket error on client <unknown>, disconnecting.
1596742037: New connection from ::1 on port 1883.
1596742037: New client connected from ::1 as mosqsub|17283-MyMQTTBro (c1, k60).
1596742089: New connection from ::1 on port 1883.
1596742089: New client connected from ::1 as mosqpub|17496-MyMQTTBro (c1, k60).
1596742089: Client mosqpub|17496-MyMQTTBro disconnected.
Адрес 10.0.0.76 совпадает с тем, который мой шлюз ISMART 43362-E сообщил после подключения к маршрутизатору, и отказал клиент.
Остальные клиенты (mosqsub | 17xxx-MyMQTTBro), поэтому должны быть мои приложения mosquitto_sub, работающие на Raspberry Pi.
В отчете об ошибке сообщается, что я совершил ошибку сокета.
Согласно ISMART 43362- Документация E Перед попыткой подключения я должен указать следующие параметры:
- IP-адрес сервера: 10.0.0.223
- Протокол: MQTT
- порт: 1883
Я пропустил что-то важное?