Meshtak — Meshtastic から TAK へのゲートウェイ
概要
Meshtak は Meshtastic の位置情報を TAK(Team Awareness Kit)で扱える形式に変換して中継する小型サービスです。Meshtastic ノードと TCP で接続して pubsub イベントを購読し、受信した位置パケットを Cursor-on-Target(CoT)イベントに変換して UDP で TAK サーバへ転送します。systemd ユニットとして動作し、setup.sh による APT/DNF 対応インストールで簡単に導入できます。軽量設計で現場のメッシュネットワークを指揮統制システムと連携させる用途に向きます。
リポジトリの統計情報
- スター数: 1
- フォーク数: 0
- ウォッチャー数: 1
- コミット数: 5
- ファイル数: 4
- メインの言語: Python
主な特徴
- Meshtastic の pubsub イベントを購読して位置パケットを取得
- パケットを Cursor-on-Target(CoT)イベントに変換
- CoT を UDP で TAK サーバへ送信(TAK と連携)
- systemd ユニット/インストールスクリプトでサーバ常駐を容易化
技術的なポイント
Meshtak のコアは Python 製の軽量ブリッジで、Meshtastic ノードへ TCP 接続して pubsub を購読することでリアルタイムなメッシュ位置データを受け取ります。受信した Meshtastic パケットを解析し、TAK が理解する Cursor-on-Target(CoT)フォーマットへ変換する点が主な役割です。CoT は一般に XML ベースのイベント表現を用いるため、Meshtak は位置情報(経度・緯度・高度、タイムスタンプ、ノード識別子など)を適切な CoT 要素へマッピングして XML を生成します。その後、生成した CoT イベントは UDP ソケット経由で指定した TAK サーバへ送信されます。サービスは systemd ユニット(meshtak.service)として提供され、常時起動および自動再起動、ログ管理が可能です。セットアップ用の setup.sh は APT/DNF ベースのディストリビューションに対応し、依存関係のインストールやユニットの配置を自動化します。実装面では軽量さを重視しており、低リソース環境でも動作しやすい構成が想定されます。一方で UDP による送信は暗号化や信頼性の保証が標準ではないため、運用時にはネットワークの信頼性や必要に応じたトンネル/VPN、ログ監視、認証周りの補強を検討する必要があります。
プロジェクトの構成
主要なファイルとディレクトリ:
- README.md: file
- meshtak.py: file
- meshtak.service: file
- setup.sh: file
(ファイルの役割)
- meshtak.py: Meshtastic からの購読、パケット解析、CoT 生成、TAK への UDP 送信を行うメインスクリプト。
- meshtak.service: systemd ユニット定義。サービスとして常駐させるための設定。
- setup.sh: APT/DNF に対応したインストール・セットアップスクリプト。依存関係の導入や systemd ユニットの配置を自動化。
- README.md: プロジェクト説明と導入手順の抜粋や概要。
まとめ
Meshtastic と TAK を簡潔に接続する軽量なブリッジで、現場の位置情報共有を迅速に統合できる。
リポジトリ情報:
- 名前: meshtak
- 説明: 説明なし
- スター数: 1
- 言語: Python
- URL: https://github.com/maui671/meshtak
- オーナー: maui671
- アバター: https://avatars.githubusercontent.com/u/184694311?v=4
READMEの抜粋:
Meshtak
Meshtastic → TAK Gateway
Meshtak is a lightweight Python service that bridges Meshtastic mesh position data to TAK (Team Awareness Kit) by converting Meshtastic packets into Cursor-on-Target (CoT) events and forwarding them to a TAK server over UDP.
It runs as a systemd service and supports both APT-based and DNF-based Linux distributions.
What Meshtak Does
- Connects to a Meshtastic node via TCP
- Subscribes to Meshtastic pubsub events
- Tracks …