TinyGSで人工衛星と通信する自宅地上局の運用をはじめた

Takahiro Miyoshi
·
公開:2024/6/16

6/5からTinyGSの地上局運用を自宅ではじめた。この記事執筆時点までに、300以上のパケットを人工衛星から受信できている。

TinyGSはオープンな地上局ネットワークだ。地上局とは、人工衛星と通信するための地上側の無線局を指す。巨大なアンテナのイメージが強いが、TinyGSが対象とするのはLoRaという小さな電力で長距離通信が可能な変調方式であり、大層な設備も(受信だけであれば)免許もいらない。TinyGSの前身は、2019年にスペインの超小型衛星FossaSAT-1のための週末プロジェクトとしてはじまった。現在は世界各地で様々なLoRa衛星の電波を受信する市民地上局のネットワークとなっている。

きっかけは、社内LT会の「TinyGS(衛星LoRa)やってみた!」という発表だった。仕事で人工衛星には携わっているが、自宅で人工衛星のテレメトリを受信できるとは思ってもいなかったので、驚くと同時に興味をそそられた。その発表をした同僚に話を聞いて、TinyGSのはじめかたを教えてもらった。公式のGitHub Wikiにも説明はあるのだが、無線の知識なしには難しく、自分ひとりでははじめられなかったと思う。

最初に必要なのは、次の2つのハードウェアである:

  1. LoRaモジュールを搭載したESP32開発ボード

  2. アンテナ

1つ目の開発ボードについては、SX1278という137MHzから525MHzの周波数に対応したLoRaモジュールを搭載したLILYGO T3-S3というESP32-S3開発ボードをAliExpressで購入した。

2つ目のアンテナに関して、上記の開発ボード付属のものもあるのだが、TinyGSにはほとんど使えないとのことだった。同僚に色々と(本当に色々と)教えてもらいながら、137MHzと400MHzをターゲットにしたダイポールアンテナをそれぞれ1本ずつ自作した。導線をSMAコネクタにはんだ付けするだけのシンプルなものである。

ハードウェアが用意できたら、開発ボードにTinyGSをインストールし、インターネットを介してTinyGSサーバとMQTTで通信するためのクレデンシャル等を設定する。TinyGSのインストールはWebインストーラ installer.tinygs.com が用意されていて、ボードをUSB接続して当該ページを開くと、数回クリックするだけで完了する。MQTTのクレデンシャルはTinyGSのTelegramグループに参加して、DMでbotに依頼すれば発行してもらえる。MQTTのセットアップができば、近くを通る衛星用の設定変更やソフトウェアアップデートなどが自動で行われるようになる。よくできた仕組みだ。

最初は137MHzのアンテナを養生テープで窓に貼りつけてはじめたのだが、パケット受信には至らなかった。自宅の窓は飛散防止用のワイヤーが網状に埋め込まれたタイプで、このワイヤーが邪魔しているのではないかという話だった。気を取り直して、400MHz用のものをベランダに置くとうまくいった。実際に人工衛星から受信したパケットを確認できると楽しい。

TinyGSはオープンソースであり、また(2024年6月現在開発中とのことでドキュメントがないが)Web APIも用意されている。ソフトウェアでできることが色々とありそうなので、気が向いたら遊んでみたい。

一方で、無線のことをあまりに知らなすぎることを痛感した。純粋に興味もわいたので、第三級アマチュア無線技士の資格試験に申し込んだ。試験駆動で無線について勉強してみようと思う。

@sankichi92
音楽とSF小説が好きなソフトウェアエンジニア