twBLE2MQTT

A Bluetooth Low Energy (BLE) to MQTT gateway that discovers and decodes advertising packets from various sensors.

View on GitHub

twBLE2MQTT

English (英語)

twBLE2MQTT Infographic

twBLE2MQTTは、様々なセンサーのアドバタイズパケットを検出しデコードする、Bluetooth Low Energy (BLE) から MQTT へのゲートウェイです。Zigbee2MQTTにインスパイアされています。

特徴

動作環境

インストール / ビルド

Goを直接使用する場合

現在のプラットフォーム向けにバイナリをビルドするには:

  1. リポジトリをクローンします:
    git clone https://github.com/twsnmp/twBLE2MQTT.git
    cd twBLE2MQTT
    
  2. バイナリをビルドします:
    go build -o twble2mqtt
    

mise-en-place を使用する場合

このプロジェクトは、Goツールチェーンの管理とビルドタスクの自動化に mise をサポートしています。

  1. まだインストールしていない場合は、mise をインストールします。
  2. サポートされているすべてのプラットフォーム(Linux, macOS, Windows)とアーキテクチャ(amd64, arm64, armv7)向けにビルドします:
    mise run build
    

    ビルドされたバイナリは dist/ ディレクトリに生成されます。

  3. ビルド成果物を削除する場合:
    mise run clean
    

使い方

ゲートウェイの起動

MQTTまたはSyslogの少なくとも1つの転送先を指定する必要があります。

./twble2mqtt -mqtt tcp://localhost:1883 -syslog 192.168.1.100:514

コマンドラインフラグ

フラグ 環境変数 説明 デフォルト値
-mqtt TWBLUESCAN_MQTT MQTTブローカーの接続先 (例: tcp://broker:1883) ””
-mqttUser TWBLUESCAN_MQTTUSER MQTT ユーザー名 ””
-mqttPassword TWBLUESCAN_MQTTPASSWORD MQTT パスワード ””
-mqttClientID TWBLUESCAN_MQTTCLIENTID MQTT クライアント ID twBlueScan
-mqttTopic TWBLUESCAN_MQTTTOPIC MQTT 基本トピック twBlueScan
-syslog TWBLUESCAN_SYSLOG カンマ区切りのSyslog転送先リスト ””
-interval TWBLUESCAN_INTERVAL 定期レポート送信の間隔(秒) 600
-all TWBLUESCAN_ALL すべてのアドレス(プライベート/ランダムを含む)を報告 false
-debug TWBLUESCAN_DEBUG デバッグモードを有効化 false

環境変数

すべての設定フラグは、TWBLUESCAN_ プレフィックスを付けた環境変数で上書きできます。

モニタリング

twBLE2MQTTで収集したデータは、TWSNMP FKでモニターすることができます。

ライセンス

このプロジェクトは Apache License 2.0 の下でライセンスされています。詳細は LICENSE ファイルを参照してください。