Skip to content

pfeerick/ISS-Notifier

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

56 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Gitpod ready-to-code

ISS Notifier

Neopixel notifier for when the ISS goes overhead

This project is inspired and based on this Hackster project, and is based on the code here.

As Open Notify no longer provides pass predictions this codebase this relied on, I have now switched to using N2YO.com. This is a free service that lets you track the location of the ISS, as well as many other satellites in orbit, as well as offering an API that you can query for both future passes, as well as visible passes. If you use this service, please show your appreciation by making a donation if you can afford to do so.

It has been adapted to be usable out of the box if you use PlatformIO, with the only changes needed being for you to update the include/secrets.h with your WiFi credentials, and location information, and the define flags at the top of the main code if you need different settings, such as which pin the status LED is on, or the length of the NeoPixel string you are using.

The code defaults to the NeoPixel string (or ring) being connected to D3, in order to allow LED_BUILTIN (D4 on the Wemos D1 Mini) to be used as a blinking indicator whilst the WiFi connection is being established. If you need to change this, or the length of the Neopixel string, you can change NEOPIXEL_PIN and NUM_OF_NEOPIXELS near the top of the main source code, as well as STATUS_LED and STATUS_LED_INVERTED which allow you to change the status LED and set if it is active high or active low.

There the start of OLED display support, which is designed around a 0.91" 128x32 SSD1306 OLED display. If you enable support via the USE_OLED define, status messages will be shown on the display, and there will be a countdown shown for time remaining until the next pass or alternately the time remaining for the current pass. The gap that is presently on the left side is where a mini ISS logo will eventually go.

The current UTC time is determined by querying the World Time API, which is a service that provides the local-time for a given time zone in both unixtime and ISO8601 format. This project runs at a loss, so if you like or found ISS Notifier useful, please consider a small monthly donation to keep the World Time API going, so other projects like this can continue benefit from its continued operation.

There is also the beginnings of rudimentary time zone support. You can configure this also in the include/secrets.h file. The instructions on how to format the timezone rule are here.

PlatformIO build environments can be used to set defines, and strings (via build_flags), so it is also possible to use different build environments for different SSIDs, configurations, etc. There is an example of this for the 17 pixel string I am using for testing, which also enables the OLED support.

About

Neopixel notifier for when the ISS goes overhead

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors