SonoffのZigbee 3.0 USB Dongle Plus

HomeKitを使う

SonoffのZigbee 3.0 USB Dongle PlusというZigbeeドングルを買いました。CC2652が搭載されていると思ったら、Silicon Labs社のEFR32MG21というSoCが搭載されてました。名前は同じですが両方のモデルが存在するようです。EFR32MG21は、Zigbee2MQTTでは実験的にサポートされているチップです。動くという報告もあるのですが、不安定だったので今後に期待してお蔵入りになりました。

今使っているドングル

AliExpressで売っていたドングルを使ってます。CC2652Rが載っていて、Zigbee2MQTTで動くファームウェアが書き込まれているので、挿せばすぐに動きます。Raspberry Piでも、Intel NUCのUbuntuでもZigbee2MQTTで問題なく安定して動いています。(写真をクリックするとAliExpressのページに飛びます)

予備にもう一個欲しいと思いました。同じのを買うのも面白くないので、あちこちで評判の良いSonoffのドングルを買いました。今使っている上記のものより安くて、ケースもかっこいいです。

動かない

Sonoffのドングルが届いたので、今使っているドングルと差し替えて動作確認を試みました。マウントされる場所が、今までは、/dev/ttyUSB0だったものが、/dev/ttyACM0に変わりました。/opt/zigbee2mqtt/data/configuration.yamlの設定を書き換えて、zigbee2mqttを再起動します。これですんなり動くと思いましたが、動きません。

sudo systemctl status zigbee2mqtt

とすると、Zigbeeのコントローラに問題があって停止したというようなメッセージが表示されました。これはファームウェアを更新しないとダメかなと思いました。でもTexas InstrumentsのSmartRF Flash Programmer 2で更新を試みるも、エラーが出て書き込めません。落ち着いて、基板上のチップを見ると違和感があります。どこにもCC2652の文字がありません。メインチップの写真は以下です。

MG21 A02011 B01YMD 2147というように読めます。この番号で検索したところ、Silicon Labsという会社のZigbee用SoCらしいです。SoCなので、ソフトウェア的にZigbeeの機能を実装しているようです。TIのチップでは無いので、TIのファームウェア書き込みツールが動かなくても当然でした。購入したAliExpressのページでは、CC2652P搭載と書かれてましたので、すっかりそのつもりでいました。

アップデートされてた

Sonoffのサイトで探してみたところ、SONOFF Zigbee 3.0 USB Dongle Plusという製品には、ZBDogle-Pというモデルと、ZBDongle-Eという2つのモデルがあるようです。

ZBDogle-PはCC2652Pを搭載している一方で、ZBDongle-EはEFR32MG21というチップを搭載しているそうです。ZBDongle-Eが後継機のようで、そちらがメインで紹介されてます。Zigbee2MQTTにも対応してますとも書いてあります。パッケージをよく見ると、箱の右下に、ZBDongle-Eと書いてありました。

さらに検索したら、Zigbee2MQTTでの使い方を説明した動画も見つかりました。最近の製品はEバージョンに置き換わっているけど、設定頑張ればZigbee2MQTTでも使えるとの内容でした。

www.youtube.com

それによると、設定ファイル、/opt/zigbee2mqtt/data/configuration.yamlのシリアルの項目に、

serial:
port: /dev/ttyACM0
adapter: ezsp

と書いておけば良いらしいです。Zigbee2MQTTのサイトもちゃんと探したら、ezspオプションのことが書いてありました。

これが対象とするアダプタは、実験的な段階なので、安定性を求めるなら使うなと書いてありました。

動いたけど不安定

ezspを指定して、Zigbee2MQTTを再起動したところ、systemctl statusコマンドで出ていたエラーは消え、無事動いているようでした。ただし、デバイスをペアリングして操作をしようとすると、動くこともありますが、エラーが出る場合もあります。動く時も、すぐには動作しないで、遅延した後、まとめてon/offを繰り返したりします。壁に埋め込んだスイッチなどは、不適切なコマンドを受け取る影響なのか、マニュアル操作すら動作しなくなってしまいました。壁から取り外して、線を外して接続し直すと復活します。

YouTubeの動画の人は、数日間安定して動作していると言ってましたが、あちらはRaspberry Piらしく、こちらの環境はIntel CPUのUbuntuなので、環境が違うせいかもしれません。とても不安定でした。今現在、安定して動いているドングルを、これに交換する必要性は無いので、SonoffのドングルはZigbee2MQTTが完全対応するまでお蔵入りにすることになりました。

まとめ

SonoffのZigbeeドングルは新モデルに更新されて、TIのチップでは無くなったようです。手元の環境ではZigbee2MQTTで安定して使用できませんでした。旧モデルのZBDongle-Pが入手できれば良いですが、その確証がなければ他を探した方が良いかもしれません。

追記:コメントで情報いただいたように、ZBDongle-Eも今はサポートされて安定動作する様です。詳細はコメント欄をご覧ください。2024/05/26

コメント

  1. もち より:
  2. Dimlos より:

    はじめまして、ネットで検索してたどり着いたHA初心者です。検索するとZBDongle-Pの情報ばかりでZBDongle-Eの情報が少ないので情報共有できたらと思います。Zigbee2MQTTの導入は結構つまずきまして、私は公式の情報を元にファームウェアを7.4.1にアップデートしました。
    https://www.zigbee2mqtt.io/guide/adapters/emberznet.html

    ファームウェアはWindowsパソコンがあればそのままUSBに刺してブラウザから直接焼けました。
    https://darkxst.github.io/silabs-firmware-builder/

    このフラッシャーだとそのままでは最新版は焼けないので下記サイトのfirmware_buildsよりncp-uart-hw-v7.4.1.0-zbdonglee-115200.gblをダウンロードして焼きました。
    https://github.com/darkxst/silabs-firmware-builder

    私はZBDongle-Pを持っていないので比較できないのですがZBDongle-EでもZigbee2MQTTを使えており、公式でもサポートしているという表記ですのでZBDongle-Eを買ってしまったユーザー(私を含む)の救済策になればと思い書き込ませていただきました。

  3. diysmartmatter より:

    情報ありがとうございます。試してみます。

タイトルとURLをコピーしました