• Изменено

Для тех кто обновился на OPENWRT 24.10

1) System -> Software -> "Обновить пакеты"
2) Ставим bluez-daemon
3) Скачиваем файл ble2homed-custom_0.24.10-r12_arm_cortex-a7_neon-vfpv4.ipk Устанавливаем в систему.

Image description

Предварительно должны быть установлены mosquito и HOMEd-custom.
Файл конфигурации тут: etc\ble2homed-custom\config.json

Если в настройках HOMEd-custom включена опция "name", то и в файле конфигурации BLE необходимо прописать имена всем устройствам. Если HOMEd-custom => "name": false, то в конфиге BLE имена необходимо убрать. Устройства будут пробрасываться по MAC адресу.

Если служба не запускается: hciconfig hci0 up

    • Изменено

    датчик температуры "LYWSD03MMC"Image description
    пробросилось только это. что не так делаю

      LuCI openwrt-24.10 branch (25.055.6933767763a0) / OpenWrt 24.10.0 (r28427-6df0e3d02a)
      Image description

      • AVAKS ответили на это сообщение.
        • Изменено

        s6nx
        🤦‍♂️

        Скачиваем. Устанавливаем.

        Это не случайно разделено в два отдельных предложения!
        Нигде небыло написано: копировать ссылку.

          Tuya BTH01 никто не пробовал подключать? А то парочка валяется, случайно купил не зигби..

          • Alexaverdd ответили на это сообщение.

            Хотелось бы немного косметики ..
            Как сделать что бы Last отображалось в удобоваримом виде ?

            • AVAKS ответили на это сообщение.

              DaN66O last преднамеренно выводится в UnixTime. Для использования в автоматизациях.

              Из HOMEd передаю сущности в НА.
              Два вопроса.

              1. если в custom у устройсва поставить галочку Discovery то в НА данные не идут
                Данные в НА поступают если в etc\ble2homed-custom\config.json указать "homeassistant": true
                После этого данные в НА идут не зависимо от галочки Discovery в custom.
                Что не совсем коректно.
              2. В НА сущности приходят в таком виде sensor.dt_room_dt_room_181a_temperature
                и то если включить опцию "name", иначе сущность в НА выглядит еще "чуднее" с именем устройства от производителя и мак адресом.
                Можно как то настроить что бы не было задвоения в имени типа dt_room_dt_room ??

              AVAKS Подскажите какую прошивку ставить :

              • AVAKS ответили на это сообщение.
                • Изменено

                liga_blunt
                Если у вас уже установлена прошивка 23.05 то файлик приложения для нее брать тут
                Как поставить прошивку 24.10 написано тут
                Файл в этой статье для прошивки 24.10

                  • Изменено

                  Нужна помощь, пол дня ковыряю, не пойму где затуп.

                  Сервис ble2homed-custom работает.
                  В вебе сервиса на 1888 порту видит устройства (LYWSD03MMC)

                  22:22:37:72:37:f2 - ? (RSSI -57)
                  3b:e0:d9:11:87:4f - ? (RSSI -81)
                  48:5f:99:15:b0:5a - ? (RSSI -86)
                  58:b6:23:63:6e:17 - ? (RSSI -58)
                  a4:c1:38:14:d3:72 - ? (RSSI -41)
                  181a => {"temperature":24.57,"humidity":38.13,"voltage":2.923,"battery":90,"counter":83,"switch":0,"opening":0,"type":"PVVX (No encryption)"}
                  a4:c1:38:ba:09:f9 - ? (RSSI -68)
                  181a => {"temperature":23.71,"humidity":36.11,"voltage":2.763,"battery":70,"counter":132,"switch":0,"opening":0,"type":"PVVX (No encryption)"}
                  [CONNECT] Connections [] IDLE

                  в mqtt вроде тоже публикует

                  Image description

                  В HOMEd-custom не появляется устройство.

                  Может что в конфиге накосячил

                  {
                    "// Set this to true to only publish MQTT messages for known devices": 0,
                    "only_known_devices": false,
                    "scanTimeout": 0,
                    "scanInterval": 0,
                    "retain": false,
                    "// If a device's address is here, it'll be given a human-readable name": 0,
                    "known_devices": {
                  
                    },
                    "// skip advertise with a smaller signal": 0,
                    "min_rssi": -90,
                    "// How many seconds to wait for a packet before considering BLE connection": 0,
                    "// broken and exiting. Higher values are useful with slowly advertising sensors.": 0,
                    "// Setting a value of 0 disables the exit/restart.": 0,
                    "ble_timeout": 20,
                    "// How many seconds to wait for emitting a presence event, after latest time polled": 0,
                    "// Default is 60 seconds": 0,
                    "presence_timeout": 60,
                    "// Number of simultaneous bluetooth connection the device can handle (PI Zero=4)": 0,
                    "max_connections": 4,
                    "connection_timeout": 20,
                    "// MQTT path for history requests and output. Default is Empty (to disable).": 0,
                    "//history_path": "/ble/hist/",
                    "// We can add our own custom advertising UUIDs here with names to help decode them": 0,
                    "advertised_services": {
                      "ffff": {
                        "name": "level"
                      }
                    },
                    "// Make this nonzero to enable the HTTP server on the given port.": 0,
                    "// See README.md for more info on what it does": 0,
                    "http_port": 1888,
                    "// Set this to enable the HTTP proxy - it's off by default for safety": 0,
                    "// since it would be possible to spoof MAC addresses and use your": 0,
                    "// connection": 0,
                    "// NOTE: Some Bluetooth adaptors will cause the error: Command Disallowed (0xc)": 0,
                    "// when trying to connect if http_proxyis enabled.": 0,
                    "http_proxy": false,
                    "// If there are any addresses here, they are given access to the HTTP proxy": 0,
                    "// http_whitelist": [
                      "e7:e0:57:ad:36:a2"
                    ],
                    "mqtt_host": "mqtt://localhost",
                    "//mqtt_options": {
                      "username": "mqtt",
                      "password": "mqtt",
                      "clientId": "clientid"
                    },
                    "// Define the topic prefix under which the MQTT data will be posted. Defaults to /ble which is not adviced. For new installation, please activate the option below.": 0,
                    "mqtt_prefix": "homed",
                    "// These are the types of MQTT topics that are created": 0,
                    "// Send /ble/advertise/ad:dr:es:ss JSON with raw advertising data, as well as /ble/advertise/ad:dr:es:ss/rssi": 0,
                    "// This is used by the localhost:1888/ide service to detect devices": 0,
                    "mqtt_advertise": false,
                    "// Send /ble/advertise/ad:dr:es:ss/manufacturer/uuid raw manufacturer data as well as decoded /ble/advertise/ad:dr:es:ss/json_key for json-formatted 0x0590 advertising data": 0,
                    "mqtt_advertise_manufacturer_data": false,
                    "// Send /ble/advertise/ad:dr:es:ss/uuid raw service data": 0,
                    "mqtt_advertise_service_data": false,
                    "// Send /ble/json/ad:dr:es:ss/uuid for decoded service data - REQUIRED FOR HOMEASSISTANT": 0,
                    "mqtt_format_json": true,
                    "// Send /ble/service_name/ad:dr:es:ss for decoded service data": 0,
                    "mqtt_format_decoded_key_topic": false,
                    "// Whether to enable Home Assistant integration": 0,
                    "homeassistant": false,
                    "homed": true
                  }
                    • Изменено

                    Загрузите дефолтную конфигурацию.
                    Если MAC ваших датчиков уже известен, то добавьте их файл конфигурации и включите only_known_devices": true,

                    • Saber ответили на это сообщение.
                      • Изменено

                      AVAKS К сожалению не помогло.

                      config.json
                      3kB

                      Куда копать уже не знаю

                      В логе custom ничего

                      2025.03.08 17:37:16.131 (inf) custom: Starting version 2.0.7
                      2025.03.08 17:37:16.142 (inf) custom: Configuration file is "/etc/homed/homed-custom.conf"
                      2025.03.08 17:37:16.160 (inf) custom: MQTT connected to "localhost:1883"

                      • AVAKS ответили на это сообщение.

                        Судя по скриншоту данные от датчиков в mqtt идут. Перезапустите службу ble2homed и смотрите, что приходит в топик homed/command/custom

                          Насколько могу судить, тут тоже все нормально

                          {
                            "action": "updateDevice",
                            "device": "a4:c1:38:ba:09:f9",
                            "data": {
                              "active": true,
                              "cloud": false,
                              "discovery": false,
                              "id": "a4:c1:38:ba:09:f9",
                              "name": "TH_toilet",
                              "note": "",
                              "real": true,
                              "exposes": [
                                "temperature",
                                "humidity",
                                "voltage",
                                "battery",
                                "rssi",
                                "last"
                              ],
                              "options": {
                                "temperature": {
                                  "class": "temperature",
                                  "round": 1,
                                  "state": "measurement",
                                  "type": "sensor",
                                  "unit": "°C"
                                },
                                "humidity": {
                                  "class": "humidity",
                                  "round": 1,
                                  "state": "measurement",
                                  "type": "sensor",
                                  "unit": "%"
                                },
                                "voltage": {
                                  "class": "voltage",
                                  "round": 1,
                                  "state": "measurement",
                                  "type": "sensor",
                                  "unit": "v"
                                },
                                "battery": {
                                  "class": "battery",
                                  "round": 1,
                                  "state": "measurement",
                                  "type": "sensor",
                                  "unit": "%"
                                },
                                "rssi": {
                                  "class": "signal_strength",
                                  "round": 1,
                                  "state": "measurement",
                                  "type": "sensor",
                                  "unit": "dBm"
                                },
                                "last": {
                                  "round": 1,
                                  "state": "measurement",
                                  "type": "sensor"
                                }
                              }
                            }
                          }
                          • AVAKS ответили на это сообщение.

                            Saber в конфиге HOMEd-custom, что в параметре "names"?

                            • Saber ответили на это сообщение.

                              AVAKS На всякий случай весь конфиг

                              [log]
                              enabled=true
                              file=/var/log/homed.log
                              
                              [mqtt]
                              host=localhost
                              port=1883
                              username=
                              password=
                              prefix=homed
                              instance=MTC
                              names=true
                              
                              [homeassistant]
                              enabled=false
                              legacy=false
                              prefix=homeassistant
                              status=homeassistant/status
                              
                              [device]
                              database=/opt/homed-custom/database.json
                              properties=/opt/homed-custom/properties.json
                              expose=/usr/share/homed-common/expose.json