ESP8266 PlaneSpotterColorを動かした

ESP8266 PlaneSpotterColorはESP8266で旅客機の位置情報を取得し、小型カラー液晶に表示するプログラム。なんかHSES-LCD24で簡単に動きそうなので試してみた。

プログラムはArduinoのsketchでGitHubで公開されている。GitHub中のドキュメントに従い、ライブラリをインストール。setting.hでピン配置をHSES-LCD24用に変更後、Arduino-IDEで書き込む。

// Tft library connectors
#define TFT_DC 		15
#define TFT_CS 		 2
#define TOUCH_CS 	16
#define TOUCH_IRQ  	 4
#define LED_PIN 	 5

// Needed for loading the map. If you want to be save better get your own key here:
// https://developer.mapquest.com/plan_purchase/steps/business_edition/business_edition_free/register
#define MAP_QUEST_API_KEY "r19I8UVBfwIkmE4EZR9S6yMR43eMiRDZ"

// Need for loading map by google static map api. If you want to be save better create one here
// https://developers.google.com/maps/documentation/static-maps/get-api-key?hl=de
#define GOOGLE_API_KEY "AIzaSyBw0G8jCBry0IATNmysuyPd2fBblndS3jU"

#define MAP_ZOOM 11
#define MAP_WIDTH 320
#define MAP_HEIGHT 192

起動させると、WiFiの設定を待っている模様。iPhoneのWiFi設定を切り替え、ESP8266に接続するとSSIDの選択とパスワードの入力ができる。便利だ。入力が終ると、いきなり熊本周辺の地図が表示されて驚く。

どうも、現在地情報は受信できるSSIDの情報からWifi Geolocatorで取得しているらしい。が、しかし、リセットしたら位置情報を取得できず、東経0度北緯0度の地図、海が表示される。しかし、航空機の情報はいくつか表示される。抜本的な改良は時間がかかりそうなので、とりあえず羽田空港の位置をハードコードしてみる。

+#if 0
   locator.updateLocation();
   mapCenter.lat = locator.getLat().toFloat();
   mapCenter.lon = locator.getLon().toFloat();
+#else
+  // 羽田空港
+  mapCenter.lat = 35.549;
+  mapCenter.lon = 139.7798;
+#endif

GoogleMapを表示させたり、WiFiで位置情報を取得したり、非常に興味深い。もう少し調べてみようと思う。

Comment

  1. Buchu より:

    はじめまして。コメント失礼します。
    検索でたどりつきました。早速なのですがお聞きしたいことがあります。
    「ESP8266 Plane Spotter Color」を作ってみたのですが、地図も表示され、中心の点は点滅を繰り返しで動作はしているのですが、テキストでの航空機情報がまったく表示されません。
    航空機の機影も表示されていない状況です。
    それの原因と対策についてお分かりであればお教え願いたいのです。
    製作専門でプログラムにはあまり詳しくありませんが、ご教授願いたいと存じます。
    よろしくお願い致します。

  2. nari より:

    コメントありがとうございます。
    日本の旅客機情報が全て網羅されているようでは、なさそうで、自宅上空を旅客機が飛んでいる時でも、地図には表示されないことがよくあります。
    MAP_ZOOMの値を小さくして、地図の表示範囲を広げたら、いろいろと表示されることが多くなった気がしますので、試してみては如何でしょうか。

    • Buchu より:

      早々のお返事本当に有難うございます。
      実のところ、ハードが完成した時には一度だけ航空機情報も表示されていたので喜んでいたのですが、次に接続した時には情報がまったく表示されない状況だったのです。

      アドバイスの通り、ズームの値を小さくしたのですが、MAP_ZOOM値を7にしたところ、ようやくテキスト情報も機影も表示されました。

      ただ、関西空港と神戸空港の両方の座標で試したのですが、その空港を中心に半径数百km内は機影が消滅していることに気が付きました。
      つまり2つの試した空港周辺の情報が読み込まれていないのかなと、それでズーム値を上げると消滅する範囲より隠れるため表示されないのかなと思ってます。

      そこでデフォルトのMAP_ZOOM値を11のままで、試しに羽田空港の座標を入力させていただいたところ問題なく情報も機影も表示されました。
      でもまた関西周辺の空港だとやはり8以上のズーム値だと地図しか表示されません。

      不可解なのは、完成時に一度だけすべての情報が表示されていたし、両方の空港に機影もあったので、表示されなくなったのは、どうにも理解出来ないのです。
      説明下手ですみません。

      せっかく作ったので、とりあえず時間出来たらもう少し弄ってみようと思います。
      また質問させていただくかもしれませんが、よろしくお願い致します。
      それでは失礼します。

Leave a Reply

メールアドレスが公開されることはありません。