公益MQTT Public MQTT Service
公益免费 · 无需备案 · 即开即用

免费公益 MQTT 服务
mqttyyc.top

面向物联网开发者和学习者的公共 MQTT Broker。支持 TCP、SSL、WebSocket、WSS 四种接入方式,注册账户即可免费连接使用,适用于设备接入、课程实验和个人项目开发。

接入方式

四种连接端口

根据你的设备和场景选择合适的接入方式。涉及密码传输的场景请优先使用加密端口(8883 / 8084)。

1883 明文

MQTT over TCP

标准 MQTT 协议端口,兼容所有 MQTT 客户端,适合内网测试和嵌入式设备快速接入。

mqtt://mqttyyc.top:1883
8883 加密

MQTT over SSL/TLS

TLS 加密的 MQTT 连接,凭据和数据全程加密传输,生产环境推荐使用此端口。

mqtts://mqttyyc.top:8883
8083 明文

MQTT over WebSocket

WebSocket 接入端口,适合浏览器前端、小程序等无法使用原生 TCP 的场景。

ws://mqttyyc.top:8083/mqtt
8084 加密

MQTT over WSS

加密的 WebSocket 连接,HTTPS 页面必须使用此端口(浏览器禁止 https 页面连接 ws)。

wss://mqttyyc.top:8084/mqtt
快速上手

三步开始使用

1

注册 MQTT 账户

前往 账户中心,填写用户名和密码即可完成注册,无需邮箱和手机号,密码仅用于连接认证。

2

选择端口接入

在你的 MQTT 客户端(MQTTX、ESP32、Python 等)中填入上方任意一个连接地址,以及刚注册的用户名和密码。

3

订阅与发布

连接成功后即可订阅和发布主题。建议使用带项目前缀的主题(如 myproj/sensor/temp),避免与他人冲突。

代码示例

常见平台接入参考

your_usernameyour_password 替换为你在账户中心注册的凭据。

JavaScript(MQTT.js)
Node.js / 浏览器 WebSocket
// npm install mqtt
const mqtt = require('mqtt');
const client = mqtt.connect('mqtts://mqttyyc.top:8883', {
  username: 'your_username',
  password: 'your_password',
});

client.on('connect', () => {
  client.subscribe('myproj/sensor/#');
  client.publish('myproj/sensor/temp', '26.5');
});

client.on('message', (topic, payload) => {
  console.log(topic, payload.toString());
});
Python(paho-mqtt)
树莓派 / 上位机 / 脚本
# pip install paho-mqtt
import paho.mqtt.client as mqtt

client = mqtt.Client(mqtt.CallbackAPIVersion.VERSION2)
client.username_pw_set('your_username', 'your_password')
client.tls_set()  # 8883 加密端口需要

client.on_connect = lambda c, u, f, rc, p: c.subscribe('myproj/sensor/#')
client.on_message = lambda c, u, msg: print(msg.topic, msg.payload.decode())

client.connect('mqttyyc.top', 8883)
client.loop_forever()
ESP32 / Arduino
PubSubClient 库
// Arduino IDE 安装 PubSubClient 库
#include <PubSubClient.h>

WiFiClient wifiClient;
PubSubClient mqtt(wifiClient);

mqtt.setServer("mqttyyc.top", 1883);
mqtt.connect("device-001", "your_username", "your_password");
mqtt.publish("myproj/sensor/temp", "26.5");
MQTTX 图形客户端
桌面 / Web 版通用配置
连接地址:mqtts://mqttyyc.top:8883
用户名:  your_username
密码:    your_password

# WebSocket 场景使用:
wss://mqttyyc.top:8084/mqtt
使用须知

公益服务公约

为了让服务长期稳定地为大家所用,请遵守以下约定。

使用限制

技术限制说明

为了保障所有用户共享资源,服务端已强制执行以下限制,请据此设计你的应用。

单条消息大小 ≤ 64 KB。超限消息将被丢弃并可能断开连接,请勿用 MQTT 传输文件或图片。
单客户端订阅数 ≤ 100 个主题,超出后订阅请求将被拒绝。
连接建立速率 每个接入端口限制 每秒 5 个新连接。仅在大规模并发接入时触发,正常设备接入不受影响;批量设备上线请加入错峰重连。
连接抖动封禁 同一客户端 1 分钟内反复连接断开 超过 15 次 将被自动封禁 15 分钟。请检查重连策略,避免断线后立即全速重连。
账户注册限制 单个 IP 每天最多注册 2 个账户。一个账户支持多台设备同时连接,但每台设备必须使用不同的 Client ID。
心跳(keepalive) 建议设置为 30~120 秒,既能及时感知断线,又减少空闲资源占用。
常见问题

FAQ

连接被拒绝 / 认证失败怎么办?

本服务已关闭匿名连接,必须使用账户中心注册的用户名和密码。请检查:① 账户是否已在 user.mqttyyc.top 创建成功;② 用户名密码是否复制完整(注意前后空格);③ 端口与协议是否匹配(如 mqtts:// 对应 8883)。

浏览器 / 小程序里如何连接?

浏览器和小程序无法使用原生 TCP,请使用 WebSocket 方式:HTTPS 页面用 wss://mqttyyc.top:8084/mqtt,HTTP 页面用 ws://mqttyyc.top:8083/mqtt。注意路径 /mqtt 不能省略。

为什么我的客户端连 8883 报证书错误?

请确认客户端已启用 TLS 并信任系统根证书。大多数客户端(MQTTX、paho-mqtt 等)默认信任公共 CA 证书即可直连;若使用自签校验,请关闭严格校验或导入服务端证书链。

一个账户可以给多台设备用吗?

可以,但注意同一账户的多台设备必须使用不同的 Client ID,否则相同 Client ID 会互相踢下线。建议为每台设备单独注册账户,便于管理和排查问题。

忘记密码或账户无法使用怎么办?

出于安全考虑密码不会被保存,也无法找回。请直接在 账户中心 注册一个新账户使用。

现在就开始连接

注册只需要 30 秒,无需邮箱和手机号。创建账户后即可在 MQTTX、ESP32、Python 或浏览器中接入 mqttyyc.top。

前往账户中心注册