Space Station Overhead Indicator
by Arpan Mondal in Circuits > Microcontrollers
5166 Views, 90 Favorites, 0 Comments
Space Station Overhead Indicator
If you’re a space enthusiast, you'll surely know the ISS. The ISS or The International Space Station revolves around the earth around 16 times per day. Being an aerospace engineering student, I'm very keen on things like the ISS.
This project is an updated version of my previous project - ISS globe. The previous project used Blynk app which is now updated and does not work in the same way anymore. This version uses Adafruit which is much reliable and free.
This easy-to-make device is a small lamp with an astronaut symbol attached to a wall. When the ISS passes over your location, the lamp starts blinking for about 30 seconds.
Supplies
NodeMcu
An LED
Female-Female jumpers (optional)
Cellophane tape(optional)
Adhesive
Besides these, you'll have to install a free app called IFTTT
Build the Lamp
This is very easy to do.
Take a sheet of butter paper (any normal paper will also do the job) and cut a circle.
Then cut out a silhouette of the astronaut from a black card paper. You can get a print on A4 paper and stick it on the black paper and then cut it out.
Then stick the silhouette on the butter paper circle.
I used an empty roll of cellophane tape for the lamp base. I then stuck the top circle onto the roll.
Setup Adafruit
Go to io.adafruit.com
Create an account and login. Now follow the steps as mentioned:
1. Click on Feeds from the top bar and select New feed. Give a name to your feed. I would suggest you to use the same name I have used, “ISS_LED”. This will make life easier during programming.
2. Click on Dashboards from the top bar and select New dashboard. Give the same name as your feed.
3. Click on the dashboard you created and select the gear icon on the right. Then select “Create a new block” and select the toggle switch.
4. Now select your feed name (ISS_LED in this case) in the popup window.
Then click on the next step. In the next window, don’t change anything. Just click “create block”
5 .Now your block is created. Click on “My key” on the top bar and note down your username and active key. This is unique to your project and make sure not to share it with anyone (Unless you want them to mess with your project that is)
Setup IFTTT
Download the IFTTT app (or you can just use the desktop site). Click to download
Now follow the steps:
1. Click on “create” (bottom left) and then select "if this". Search "space" in the search bar and click on it. Click on "ISS passes over a specific location" and select your location
2. Now click on "then that" and search for "adafruit" on the search bar.
Click on “Send data to Adafruit IO”. Here select the feed name (ISS_LED) and type ON in the “data to save” section.
That sure was a lot of configuration. But good news. We're almost done! All that is left is to upload the code.
What did we do all this time?
We created a toggle switch on adafruit that can control your Nodemcu via WiFi. Then we created an applet on IFTTT that toggles the adafruit switch ON every time the ISS passes over the location selected.
Upload the Code
The heart of the ISS globe is the NodeMcu, and we need to code it to make it work as we want it to.
Make sure you have the Nodemcu and adafruit mqtt libraries installed on your arduino IDE.
There are a few changes you need to do in order to get the code working.
1. Replace …….SSID……. with your WiFi (or mobile hotspot) name.
2. Replace ………PASSWORD……. with your WiFi (or mobile hotspot) password.
3. Replace …………Adafruit ID.............. with your Adafruit username
4. Replace …………AIO key............. with the active key you had noted after creating the Adafruit toggle switch
If you have named your Adafruit feed as ISS_LED then you are done with editing the code. But if you have used a different name, you’ll have to replace all the instances of ISS_LED in the code with the name you have used.
This code keeps the LED turned OFF by default. When the ISS arrives, it starts blinking. In case you want the LED to be ON by default, you can replace digitalWrite(led,LOW); with digitalWrite(led,HIGH); in the first line of the void loop() function.
Great job! Now you can go ahead and upload the code to your Nodemcu.
Downloads
Circuit and Assembly
Good news! We are in the last step of getting the project working.
Firstly, connect an LED to the D7 pin of your Nodemcu. It is recommended to connect a 330ohm resistor in series as shown in the circuit diagram above to limit the current through the LED.
I placed the LED under the nodemcu and bent the pins as shown in the last image. This will make placing the nodemcu inside the lamp easier.
Now all that is left to do is to place the nodemcu inside the lamp, close the back with a circular piece of cardboard and attach it to a wall. You need to power the Nodemcu with a 5v 1A adapter.
Your ISS lamp is ready!
Admire!
There you go. Your very own ISS overhead indicator is ready!
From now on, every time the ISS hovers over your location, the lamp will start glowing. I have noticed that the ISS passes over my location (India) about one to two times every day. Some days it doesn't show up though.
Well, it's always good to know there are people working up there, and really feels exciting when they hover overhead. And if it's after sunset, you can even run out and have a look at it sweeping through the sky!