Top.Mail.Ru
Ответы

Люди добрые, помогите пожалуйста выбрать способ передачаи данных

Дано:
Плата esp32 подключенная к интерниету
Пк с python и подключением к инету
Необходимо:
Организовать стабильную передачу данных между esp32 и пк(они НЕ в локальной сети)
(Программа для пк должна быть на python)
Формат передаваемых данных
С esp32 на pc: Небольшой текстовый файл(до 2 мб), и картинка(да 2 мб), частота передачи: не чаще одного раза в 5 минут
Желательно, чтобы программа имела возможность и обратной передачи данных

По дате
По Рейтингу
Аватар пользователя
Мастер

Для передачи данных между esp32 и ПК вне локальной сети, можно использовать протокол MQTT (Message Queuing Telemetry Transport). MQTT является легковесным протоколом для передачи сообщений между устройствами в реальном времени.

Шаги для организации стабильной передачи данных:

1. Настройка брокера MQTT: Вы можете использовать облачный брокер MQTT, такой как CloudMQTT или Mosquitto, или установить собственный брокер на удаленном сервере.

2. Настройка esp32: Настройте esp32 для подключения к брокеру MQTT и публикации сообщений с данными. Это можно сделать с использованием библиотеки MQTT для esp32.

3. Настройка ПК: Создайте программу на Python с использованием библиотеки paho-mqtt для подписки на сообщения от esp32. Когда esp32 отправляет данные, программа на ПК будет получать эти сообщения.

4. Передача файлов: Для передачи текстового файла и изображения по MQTT, вы можете закодировать их в формат Base64, отправить как текстовые сообщения и затем декодировать на стороне получателя.

5. Обратная передача данных: Для обратной передачи данных с ПК на esp32, вам нужно будет подписать esp32 на соответствующий топик на брокере MQTT и отправлять команды или данные с ПК.

Этот способ обеспечит стабильную передачу данных между esp32 и ПК вне локальной сети, а также позволит осуществлять обратную передачу данных при необходимости.