
2026/02/22 5:14
MeshTNCは、消費者向けLoRa無線機をKISS TNCに対応させるためのツールです。
RSS: https://news.ycombinator.com/rss
要約▶
Japanese Translation:
## 改訂版まとめ MeshTNC は、アマチュア無線愛好家が使用するようなコンシューマーグレードのラジオを使って、LoRa パケットを簡易シリアルインターフェース経由で送受信できる軽量ソフトウェアツールです。GitHub(リポジトリ:datapartyjs/MeshTNC)にホストされており、事前コンパイル済みのファームウェアリリースが付属しています。フラッシュは MeshCore の Web フラッシャー(http://flasher.meshcore.co.uk/)またはその他の OEM ツールを使用して行うことができ、MeshCore Flasher に一覧表示されている任意のデバイスで動作します。デフォルトのシリアルボーレートは 115200 です。 このツールは以下のようなコマンドラインインターフェースを公開しています: - `txraw <hex…>` – 生の LoRa バイトを送信 - `rxlog on/off` – 受信パケットのログ取得 - `rxlog ble on/off` – BLE スニッフィングの有効化 - `serial mode kiss` – APRS/AX.25 互換性のため KISS‑TNC モードへ切替 - `set radio …`, `get radio …`, `reboot`, `clock sync`, `start ota`, `set/get txpower`, AGC, stats など KISS モードでは、ラジオを任意の周波数に調整し、その後 APRS ソフトウェア(例:xastir、APRSisce32)で使用できます。LoRa 上の AX.25 は `/etc/ax25/axports` を設定し、`kissattach /dev/ttyACM0 0` を実行することでサポートされ、その後仮想インターフェースに IP アドレスを割り当てることができます(例:`ip addr add 10.10.10.10/24 dev ax0`)。 複数のマシンは `tncattach` を使って Ethernet‑over‑LoRa 接続を作成できます。例えば:
sudo tncattach --mtu=230 -e -noipv6 --ipv4=/24 /dev/ttyACM0 115200
これらの低レベル制御と事前構築済みファームウェアを提供することで、MeshTNC はホビイスト、アマチュアオペレーター、および開発者がメッシュネットワークを構築し、APRS のカバレッジを拡張したり、LoRa 上で IP トラフィックをルーティングすることを可能にし、遠隔地やサービスが十分ではない地域の接続性を向上させます。
本文
MeshTNC
MeshTNC は、コンシューマーグレードのラジオを介して LoRa データを送受信するためのツールです。
- コード: https://github.com/datapartyjs/MeshTNC
- リリース: https://github.com/datアパーティjs/MeshTNC/releases
- サポート: ko-fi / dataparty
主な機能
- ファームウェアに組み込まれたシンプルなシリアル CLI
- シリアル CLI 経由で LoRa に生データ(16進)を送信
- LoRa パケットのシリアルログ(16進)
- BLE パケットスニッフィング
- KISS‑TNC モード
コンパイル方法
- Visual Studio Code へ PlatformIO をインストール。
- MeshTNC リポジトリをクローンし、開く。
- 例示アプリケーションの一つ(例えば Simple Repeater)を修正して実行。
フラッシュ方法
事前にコンパイルされたファームウェアは https://github.com/datapartyjs/MeshTNC/releases からダウンロードしてください。
専用フラッシャーはまだ無いので、以下のいずれかを使用します。
- MeshCore Flasher: http://flasher.meshcore.co.uk/
- OEM が提供するツール
- VS Code 用開発者向け手順
ハードウェア互換性
MeshTNC は MeshCore がサポートするデバイス用に設計されています。
MeshCore Flasher のサポートリストを確認し、ほとんど同じハードウェア変種に対応しています。
シリアル CLI
ファームウェアは人間が読めるシリアルモードで起動します。ターミナル(例:
minicom)で接続してください。
minicom -b 115200 -D /dev/ttyACM0
Linux でデフォルトボーレートを設定するには:
stty -F /dev/ttyACM0 115200
CLI コマンド
新規/拡張コマンド
- txraw <hex…> – パケットを送信
- get syncword <word> – 同期語設定を読み取り
- set kiss port <port> – KISS デバイスポートを設定
- set radio <freq>,,,,<syncword> – ラジオを構成
- serial mode kiss – KISS モードへ切替
- rxlog on/off – LoRa パケットログの有効化/無効化
- 出力形式:
[timestamp],[type=RXLOG],[rssi],[snr],[hex…]\n
- 出力形式:
- rxlog ble on/off – BLE パケットログの有効化/無効化
- 出力形式:
[timestamp],[type=RXBLE],[rssi],[snr],[MAC‑6octets][hex…]\n
- 出力形式:
- get ble – BLE 設定をダンプ
- set ble <active_scan>,<filter_dups>,<max_results>,<scantime>
: on/off(デフォルトは off)active_scan
: on/off(デフォルトは on)filter_dups
: スキャンあたりの最大結果数max_results
: ミリ秒単位でスキャン時間scantime
- set/get txpower – MeshCore の set/get tx をリネーム
既存コマンド
reboot clock sync start ota clock time tempradio clear stats get af get agc.reset.interval get name get lat get lon get radio get rxdelay get txdelay get freq set af set int.thresh set agc.reset.interval set name set radio set lat set lon set rxdelay set txdelay set freq erase ver log start log stop rxlog on rxlog off
KISS モード
KISS モードでは LoRa ラジオを KISS モデムに変換し、APRS や Linux カーネル等の既存ソフトウェアと互換性があります。
有効化
serial mode kiss
終了
KISS の終了シーケンスを送信:
echo -ne '\xC0\xFF\xC0' > /dev/ttyUSBx
(
ttyUSBx を自分のシリアルポートに置き換えてください。stty で正しいボーレートを設定してください。)
APRS over LoRa
- 周波数を設定し、KISS モードへ入る:
set radio 918.25,500.0,7,5,0x16 serial mode kiss
等のターミナル経由で APRS ソフトウェア(例: Xastir、APRSisce32)をデバイスに接続。minicom
AX.25 over LoRa
クイックスタート
-
MeshTNC を Linux システムに接続。
-
CLI でラジオ設定。
-
KISS モードへ入れ、ターミナルプログラムからシリアルポートを解放。
-
を編集:/etc/ax25/axports0 AL1CE-1 115200 220 2 AX25 test
は自分のコールサイン+SSIDに置き換えてください。AL1CE-1 -
接続:
kissattach /dev/ttyACM0 0 -
インターフェース作成を確認:
sudo dmesg | grep mkiss -
IP アドレスを割り当て(例):
ip addr add 10.10.10.10/24 dev ax0
Ethernet over LoRa
-
をクローンしてインストール:tncattachgit clone https://github.com/markqvist/tncattach.git cd tncattach && make && sudo make install -
各マシンでラジオ設定し、KISS モードへ入る:
set radio 916.75,500.0,5,5,0x16 serial mode kiss -
最初のマシン:
sudo tncattach --mtu=230 -e -noipv6 --ipv4=10.10.10.10/24 /dev/ttyACM0 115200 -
二番目のマシン:
sudo tncattach --mtu=230 -e -noipv6 --ipv4=10.10.10.11/24 /dev/ttyACM0 115200