Bluetooth w HA, dongle BT, obsługa BLE, bramka ESP32

Moim zdaniem błąd rozumowania jest tu

Jeśli chcesz korzystać z PBM musisz używać bramki BLE na bazie projektu myhomeiot, a nie proxy (EBP)


EBP działa tylko z natywną integracją BLE w HA (a nie z PBM)

Opcja druga to zmiana firmware w urządzeniach BLE na takie, które są obsługiwane bez PBM

Alternatywne firmware ze wsparciem BTHome masz tu
https://github.com/pvvx/ATC_MiThermomete
czy i jak działa z CGG1 musisz przeczytać (tym modelem czujnika się nie interesowałem i nie wiem czy nie wymaga przeróbki sprzętowej), MiFlora jest obsługiwana w HA na fabrycznym firmware


Format logów w EBP się zmienił, więc nie wiem czy tak jak na ostatnim screenshocie to jest oznaka poprawnego działania (a nie mam jak zrobić prostego testu, bo mam za dużo sprzętu BLE), ale raczej EBP działą poprawnie tylko masz sprzęt niekompatybilny z natywną integracją w HA.

PS
Na przyszłość proponuję oprócz obrazków wklejać tekst (obłożony z obu stron linijkami z ``` ), normalnie posty z samą grafiką bez tekstowych logów czy konfiguracji w strawnym tekstowym formacie bywają ignorowane przez odpowiadających (bo generalnie to za dużo zbędnej roboty by przepisywać z tekst z obrazków, by się podeprzeć informacjami z sieci, więc skorzystanie z takich informacji jest praktycznie niemożliwe).

PPS
Klucz szyfrowania który zamalowałeś nie zalicza się do danych wrażliwych, więc zamalowywanie można sobie darować (by podsłuchać komunikację miedzy tym urządzeniem ESPHome, a twoim HA najpierw ktoś musiałby się włamać do twojej sieci LAN, w dodatku to jest losowo generowany klucz więc nie ujawnia niczego nawet jeśli używasz kiepskich zabezpieczeń).

2 polubienia

dziekuje, Twoje wyjasnnienie sklada sie w calosc.
Zaczne od opcji natywnej integracji (ktorej do tej pory nie uzywalem) i zobacze ile urzadzen uda mi sie podpiac, zweryfikuje tez czy EBP dziala wtedy poprawnie i zczytuje te czujniki najdalej umiejscowione (chociazby MiFlora ktora powinna dzialac bez zmiany firmware)

Mam zajecie na weekend, dziekuje

PS Dziekuje rowniez za hinty apropo przyszlych postow!

Hej, mam takie pytanie. Jak można sprawdzić, do której bramki podłączone jest urządzenie bluetooth?
Posiadam dwie bramki bluetooth na ESP32 (Bluetooth Proxy w ESPHome) i rozmieściłem je w domu na wyczucie, żeby objęły zasięgiem wszystkie termometry (LYWSD03MMC). Jednak widzę, że niektóre nadal mają słaby zasięg, ale nie jestem pewny do której bramki są podłączone. Da się to gdzieś sprawdzić? Ułatwiłoby mi to poprawne rozmieszczenie bramek.

Jeśli możesz umieścić bramki proxy w dowolnych miejscach (no prawie) to zmień najpierw miejsce jednej “na wyczucie” i testuj czy osiągasz lepsze rezultaty czy gorsze, po uzyskaniu optymalnych zrób to samo z drugą.

Próba obserwowania pojedynczych pakietów BLE wśród pakietów BLE pochodzących od kilku czy kilkunastu czujników, to jak próba obserwowania pojedynczych kropel w wodospadzie.
Ale owszem da się - do YAMLa urządzenia musisz dorzucić logger z ustawionymi bardzo szczegółowymi logami (i skompilować wsady)

# Enable logging
logger:
  baud_rate: 0
  level: VERY_VERBOSE

wtedy o każdym pakiecie będziesz miał mniej więcej takie info w logu`

[00:05:37][VV][esp32_ble_tracker:395]: Parse Result:
[00:05:37][VV][esp32_ble_tracker:412]:   Address: C4:7C:8D:6B:70:C2 (PUBLIC)
[00:05:37][VV][esp32_ble_tracker:414]:   RSSI: -87
[00:05:37][VV][esp32_ble_tracker:415]:   Name: ''
[00:05:37][VV][esp32_ble_tracker:423]:   Ad Flag: 6
[00:05:37][VV][esp32_ble_tracker:426]:   Service UUID: 0xFE95
[00:05:37][VV][esp32_ble_tracker:440]:   Service data:
[00:05:37][VV][esp32_ble_tracker:441]:     UUID: 0xFE95
[00:05:37][VV][esp32_ble_tracker:442]:     Data: 71.20.98.00.3B.C2.70.6B.8D.7C.C4.0D.09.10.02.08.00 (17)
[00:05:37][VV][esp32_ble_tracker:445]: Adv data: 02.01.06.03.02.95.FE.14.16.95.FE.71.20.98.00.3B.C2.70.6B.8D.7C.C4.0D.09.10.02.08.00 (28)
[00:05:37][VV][scheduler:032]: set_timeout(name='', timeout=500)
[00:05:37][VV][esp32_ble_tracker:395]: Parse Result:
[00:05:37][VV][scheduler:226]: Running timeout '' with interval=500 last_execution=1850945 (now=1851445)
[00:05:37][VV][scheduler:226]: Running timeout '' with interval=500 last_execution=1850951 (now=1851457)
[00:05:40][V][esp32_ble:178]: (BLE) gap_event_handler - 3
[00:05:40][V][bluetooth_proxy:058]: Proxying 1 packets
[00:05:40][VV][api.service:345]: send_bluetooth_le_raw_advertisements_response: BluetoothLERawAdvertisementsResponse {
  advertisements: BluetoothLERawAdvertisement {
  address: 181149790671451
  rssi: -79
  address_type: 0
  data: '[\x92\xec8\xc1\xa4\xbfQ\xa9d\xe3	ATC_EC925B'
}
}

tylko weź pod uwagę, że takich pakietów bywa sporo…


PS można podejść też do rzeczy “od tyłka strony” i zmienić tym LYWSD03MMC firmware na pvvx (z protokołem BTHome) i mieć wtedy możliwość sterowania wieloma parametrami, w tym mocą nadawania radia.

Rzeczywiście sporo zachodu z tym śledzeniem pakietów. Ciekawe ale nie na teraz.
Odnośnie zmiany FW to we wszystkich (8 szt) mam już zmienione (pvvx), tylko nie doszedłem jeszcze do opcji zmiany mocy nadawania. Póki co zmieniałem tylko wartość pokazywanej temperatury.