В чем разница HC-06, HM-10 и обычный аппаратный Bluetooth?

Тема в разделе "Проводная и беспроводная связь", создана пользователем bigory, 16 мар 2019.

  1. bigory

    bigory Нерд

    Всем добрый день!
    Столкнулся с такой проблемой, как соединение по Bluetooth Честно, я даже и не знаю правильный ли раздел на форуме выбрал, так как тут тема bluetooth и Raspberry pi (который был куплен в Амперке).
    Беру 2 платы: arduino, туда загружен код для работы с модулями bluetooth по UART. К нему я подключаю HC-06 и HM-10 (не вместе, а один отключаю, второй подключаю).
    2я плата, это Rasbberry pi 3 со встроенным bluetooth.
    В Raspberry pi залил код на python

    Код (Python):
    from bluetooth import *
    import threading
    import select

    def read_bluetooth(ser):
      read=""
      while str!="exit":
        infds, outfds, errfds = select.select(inout, inout, [], 5)
        if "\r\n" in read:
          read = read.replace('\r\n','')
          print (read.decode('utf-8'))
          read=""
        if len(infds)!=0:
          read = read+sock.recv(1024)

    server_address = "00:21:13:02:A0:80"
    port = 1
    sock=BluetoothSocket( RFCOMM )
    sock.connect((server_address, port))
    inout = [sock]
    thread = threading.Thread(target=read_bluetooth, args=(sock,))
    thread.start()
    while True:
      str=''
      str=raw_input()
      if str=="exit":
        break
      sock.send(str+'\r\n')

    sock.close()
    thread.join()
    Пробую соединиться с ардуиной, у которого стоит модуль HC-06. Все отлично соединяется. Можно кидать в 2 стороны сообщения.
    Пробую соединиться с HM-10, пишет ошибку:
    Код (Text):
    Traceback (most recent call last):
      File "test_bluetooth12.py", line 20, in <module>
        sock.connect((server_address, port))
      File "<string>", line 5, in connect
    bluetooth.btcommon.BluetoothError: (112, 'Host is down')
     
    Вот в чем может быть проблема? Код на python не верный??? вроде в HC-06 все обрабатывает нормально.
    Разные версии Bluetooth друг с другом не дружат?? тогда почему у смартфона таких проблем нет, ведь ему пофиг с какими модулями общаться...