xoxota99 / metarduino

ESP8266/Arduino project, similar to METARMaps (https://metarmaps.com/)

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

metarduino

ESP8266/Arduino project, similar to METARMaps, but GPLv3.

This implementation uses the Wemos D1 Mini Pro (16MB), and Adafruit NeoPixels. Each LED is mapped to a specific ICAO airport code. Once every five minutes, we make a call to an AVWX endpoint, download the relevant METAR JSON document for each code, and update the LEDs.

Simple, really. Don't know what all the fuss is about.

This is a PlatformIO / VSCode project. If you use the Arduino IDE, you're on your own, but it should work with relatively little modification.

You can also do this on Raspberry Pi, with a ten-line python script, but since I would have to sell a kidney to buy an RPi right now, I figured I'd do this instead.

Dependencies:

  • Platform: "D1 Mini Pro"
  • Adafruit NeoPixel 1.10.7 or greater
  • bblanchon/ArduinoJson 6.19.4 or greater

What I did: I took my local VNC (VFR Sectional in the US), poked a hole for each airport I care about that broadcasts a METAR, mount a NeoPixel in the hole, plugged them into the Wemos D1 (I used pin D2, but any digital IO pin should work), and drove that pin with the NeoPixel library.

One Caveat: The Wemos is a 3V device, and NeoPixels need 5V, so you'll need a level shifter on the IO pin. You'll also want to provide the pixels with their own 5v supply, separate (or parallel) to the Wemos.

Future Improvements:

  • It might be cool to add a dimmer knob, connected to the Analog input on the Wemos, to control the NeoPixel brightness.
  • Parse weather information from other sources (such as NemoWX). AVWX has a parser API.
  • Make a version that parses TAFs, with a dimmer knob that moves the display forward / backward in time?
  • Open to other suggestions.

About

ESP8266/Arduino project, similar to METARMaps (https://metarmaps.com/)

License:GNU General Public License v3.0


Languages

Language:C++ 76.5%Language:C 18.4%Language:Python 5.1%