3 бесплатных MQTT-сервера для тестирования ESP32
При разработке IoT-проектов на ESP32 почти всегда возникает один и тот же вопрос: где быстро взять MQTT-сервер для тестов?
Нужно ли поднимать брокер локально? Использовать компьютер, телефон, отдельный сервер? Платные сервисы или есть бесплатные варианты? А если сервер нужен всего на несколько дней для отладки скетча?
Именно эта неопределённость часто выбивает из рабочего потока. Вместо написания кода приходится тратить время на поиск, установку и настройку MQTT-брокера.
В этой статье я собрал 3 бесплатных MQTT-сервера, которые полностью готовы к использованию. Никаких установок, регистраций и сложной конфигурации — просто берёте параметры и сразу тестируете свои ESP32-скетчи.
Общий принцип тестирования MQTT на ESP32
Для демонстрации работы каждого брокера используется простой тестовый скетч:
- ESP32 подключается к Wi-Fi
- Затем подключается к MQTT-серверу
- Каждые 5 секунд отправляет сообщение-счётчик в MQTT-топик
- Принимает сообщения из того же топика и выводит их в Serial Monitor
В качестве клиента используется библиотека EspMQTTClient, которая автоматически управляет подключением к Wi-Fi и MQTT.
Рекомендуется использовать уникальные имена топиков, так как все серверы публичные и ими одновременно пользуются другие разработчики.
1. test.mosquitto.org — публичный брокер Mosquitto
Первый сервер — test.mosquitto.org. Это публичный MQTT-брокер, к доступу к которому не требуется регистрация.
Основные особенности
- Доступ без регистрации
- Несколько портов для тестирования
- Поддержка шифрования и сертификатов
Доступные порты
- 1883 — без шифрования, без логина и пароля
- 1884 — с логином и паролем
- Дополнительные порты с TLS и сертификатами
Сообщения на сервере хранятся примерно 20 секунд, что вполне достаточно для отладки.
Недостатки
- Настройки разбросаны по странице и неочевидны
- Сервер часто перегружен
- Первое подключение может занимать много времени
При тестировании через MQTT Explorer видно большое количество чужих топиков, поэтому крайне важно использовать собственные уникальные имена.
#include <EspMQTTClient.h>
const char* WIFI_SSID = " ";
const char* WIFI_PASSWORD = " ";
const char* MQTT_HOST = "test.mosquitto.org";
const int MQTT_PORT = 1884;
const char* MQTT_USER = "rw";
const char* MQTT_PASS = "readwrite";
const char* MQTT_CLIENT_ID = "esp32_client_1";
const char* MQTT_TOPIC = "esp32-wroom";
EspMQTTClient client(
WIFI_SSID,
WIFI_PASSWORD,
MQTT_HOST,
MQTT_USER,
MQTT_PASS,
MQTT_CLIENT_ID,
MQTT_PORT
);
unsigned long lastSend = 0;
int counter = 0;
void onConnectionEstablished() {
client.subscribe(MQTT_TOPIC, [](const String &payload) {
Serial.print("Получено из топика ");
Serial.print(MQTT_TOPIC);
Serial.print(": ");
Serial.println(payload);
});
}
void setup() {
Serial.begin(115200);
delay(1000);
Serial.println("Start ESP32 MQTT example");
}
void loop() {
client.loop(); // обязательно вызывать в loop()
unsigned long now = millis();
if (now - lastSend >= 5000) { // каждые 2 секунды
lastSend = now;
String msg = String(counter++);
if(client.isMqttConnected()){
client.publish(MQTT_TOPIC, msg);
Serial.print("Опубликовано в ");
Serial.print(MQTT_TOPIC);
Serial.print(": ");
Serial.println(msg);
}
}
}
2. mqtt.pro — удобная демо-песочница
Второй брокер — mqtt.pro. Это один из самых удобных вариантов для быстрых тестов и экспериментов.
Преимущества
- Готовые настройки для копирования
- Логин и пароль уже заданы
- Не требуется регистрация
Ограничения
- Не более 20 сообщений в секунду с одного IP
- Размер сообщения — до 1 КБ
- Все данные очищаются каждую ночь
Логин и пароль периодически меняются, что защищает сервер от злоупотреблений.
При тестировании сервер работает стабильно, подключение проходит уверенно, а количество лишних сообщений значительно меньше, чем у Mosquitto.
const char* MQTT_HOST = "public.mqtt.pro"; const int MQTT_PORT = 1883; const char* MQTT_USER = "ajbkvbp/test-user"; const char* MQTT_PASS = "mIajDWuzPaTcvsnj"; const char* MQTT_CLIENT_ID = "esp32_client_1"; const char* MQTT_TOPIC = "esp32-wroom";
3. HiveMQ (mqtt-dashboard.com) — быстрый и «чистый» сервер
Третий сервер предоставлен компанией HiveMQ. Настройки доступны через сервис mqtt-dashboard.com.
Особенности
- 4 доступных порта
- Нет логина и пароля
- Очень быстрое подключение
Отсутствие логина и пароля — серьёзный минус, если вы тестируете проекты для заказчиков. Однако для быстрых проверок это отличный вариант.
Главное преимущество
На сервере нет лишних системных и чужих топиков. Отображаются только пользовательские данные, что делает отладку максимально наглядной.
HiveMQ честно предупреждает, что сервер предназначен только для тестов и не подходит для продакшена.
const char* MQTT_HOST = "broker.hivemq.com"; const int MQTT_PORT = 1883; const char* MQTT_USER = ""; const char* MQTT_PASS = ""; const char* MQTT_CLIENT_ID = "esp32_client_1"; const char* MQTT_TOPIC = "esp32-wroom";
Сравнение MQTT-серверов

Все три брокера подходят для разных задач:
- HiveMQ mqtt-dashboard.com — если нужна максимальная простота без логина и пароля
- mqtt.pro/public-broker/ — если важна аутентификация
- test.mosquitto.org — если нужно поработать с TLS и сертификатами
Я сам периодически возвращаюсь к этому списку, чтобы быстро выбрать нужный сервер под конкретную задачу.
Разработка устройств и плат под заказ
Моя основная работа — проектирование и производство электронных плат, а также разработка устройств на базе программируемых контроллеров (ESP32, ESP8266, Arduino и другие).
Я специализируюсь на удалённом беспроводном сборе данных с электронных датчиков и отправке информации в облако.
Портфолио реализованных проектов
Если у вас есть идея — просто опишите задачу простыми словами, и мы вместе превратим её в рабочий коммерческий продукт.
Надеюсь, эта статья станет для вас таким же удобным справочником, каким она стала для меня.
Одна кнопка — три команды на Arduino UNO: клик, двойной клик и длинное нажатие
Одна кнопка — три команды: клик, длинное нажатие и двойной клик на Arduino UNO В большинств..
Диммер регулятор мощности симисторный 220В 8А
Регулятор мощности на основе симистора BTA16-600Принцип регулирования состоит в том, что через нагру..
111.67грн.
Штекер Micro USB 2.0 разборный
Разборный штекер микро-USB с выводами под пайкуЦвет чорный..
12.78грн.
Arduino Nano I2C связь между контроллерами
Давайте разберемся с самой удобной коммуникацией физически заложенной в контроллеры Arduino I2C э..
Умный дом #7: ESP32 — тёплый пол с автоматическим регулированием температуры по DS18B20 и WEB-управлением
Умный дом #7: ESP32 — тёплый пол с автоматическим регулированием температуры по DS18B20 и WEB-уп..





