You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用rfcomm实现Raspberry Pi 3与三台安卓手机的蓝牙连接?

解决树莓派3同时连接三台安卓蓝牙串口设备的方案

嘿,很高兴你已经搞定了单设备的蓝牙连接!要同时连三台,核心是给每台设备分配独立的RFCOMM端口,下面是一步步的实操方案:

一、先搞定每台安卓设备的蓝牙配对与信任

首先得让树莓派记住每台手机的蓝牙信息,确保自动连接不翻车:

  • 打开树莓派的蓝牙控制工具:bluetoothctl
  • 扫描周边蓝牙设备:scan on,找到三台安卓手机的MAC地址(格式类似AA:BB:CC:DD:EE:FF)
  • 对每台设备依次执行:
    • pair [手机MAC]:按提示在手机上确认配对
    • trust [手机MAC]:标记为信任设备,避免每次连接都要手动确认
    • 完成后输入exit退出蓝牙控制工具

二、绑定多个RFCOMM端口

默认的rfcomm0只能对应一个设备,我们需要给另外两台设备分别绑定rfcomm1和rfcomm2:

  • 绑定第一台设备到rfcomm0(如果你之前已经用过这个端口,也可以继续沿用):
    sudo rfcomm bind hci0 0 [手机1的MAC]
    
  • 绑定第二台到rfcomm1:
    sudo rfcomm bind hci0 1 [手机2的MAC]
    
  • 绑定第三台到rfcomm2:
    sudo rfcomm bind hci0 2 [手机3的MAC]
    

小贴士:执行完可以用rfcomm list命令查看绑定状态,确认三个端口都显示为bound

三、同时监听并验证多设备连接

现在可以分别启动监听,或者直接通过串口工具测试连接是否正常:

  • 如果你想让树莓派主动监听连接(适合手机端发起连接的场景),可以打开三个终端窗口,分别执行:
    窗口1:sudo rfcomm listen hci0 0
    窗口2:sudo rfcomm listen hci0 1
    窗口3:sudo rfcomm listen hci0 2
  • 然后在每台安卓手机上打开BlueTooth Serial Controller应用,连接对应的树莓派蓝牙设备
  • 验证连接:分别用三个终端窗口打开minicom测试每个端口:
    minicom -D /dev/rfcomm0  # 测试第一台手机
    minicom -D /dev/rfcomm1  # 测试第二台手机
    minicom -D /dev/rfcomm2  # 测试第三台手机
    
    此时在任意一台手机上发送消息,对应的minicom窗口应该能实时收到,说明多设备连接成功!

四、Python代码中处理多设备输入

在Python里,你可以用pyserial库分别打开三个串口对象,然后用多线程来监听每个设备的输入,避免单线程阻塞:

import serial
import threading

def listen_serial(port):
    # 波特率要和手机应用设置一致,默认一般是9600
    ser = serial.Serial(port, 9600, timeout=1)  
    print(f"开始监听{port}...")
    while True:
        data = ser.readline().decode('utf-8').strip()
        if data:
            print(f"来自{port}的输入: {data}")

# 启动三个独立的监听线程
threading.Thread(target=listen_serial, args=('/dev/rfcomm0',)).start()
threading.Thread(target=listen_serial, args=('/dev/rfcomm1',)).start()
threading.Thread(target=listen_serial, args=('/dev/rfcomm2',)).start()

注意:先安装pyserial库:pip install pyserial

一些注意事项

  • 确保树莓派的蓝牙模块供电充足,连接多个设备可能需要更多电力,建议用5V/2A以上的电源
  • 安卓端的BlueTooth Serial Controller应用要设置和树莓派一致的波特率
  • 如果出现连接失败,可以先解绑端口:sudo rfcomm release hci0 [端口号],然后重新绑定尝试

内容的提问来源于stack exchange,提问作者Rishaal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 10:10:06