NOAA Apt data Satellite decoder and image quality enhancer in python. NOAAs are american weather satellites, you can intercept them at 137mhz and receive live data from space, the data is mostly images. Once you record the signal, you can parse the images with several tools, this one not only converts raw data to images but also creates a map showing the tracked satellites.
- RTL SDR v4, or any other sdr receiver that operates at 137mhz;
- V-Dipole antenna, or any other antenna that recieves at uhf/vhf;
- Sdrpp software, or any other software that allows you to record incoming signals and save them in wav 16-bit file format.
- (optional) Satdump software, if you want to entirely replace my code : (
In order to do it plug the sdr radio you have in your pc, in my case i used a rtl sdr v4, be aware that the v4 requires new drivers which you will probably have to upload in satdump or sdrpp directories. The v3 version doesn't.
The sdr is plugged into a v-dipole antenna which aims at the sky, the antenna must have no obstacles in a 360° view, the sky view must be clean, no trees or metallic objects.
Once all is set you need to wait for the satellite to pass, i will soon upload a code which displays the next passes of a satellite of your choice (yes i dislike gpredict and ion wanna have 10 n2yo.com tabs open). Here's an example of the sdrpp software receiving signals, this sdrpp image is of an old version. Choose the opions: Audio, Wav, Int-16, Stream radio, ignore silence.
- First we resample the wav file into 200800hz format;

- Then we modfify it to correct the signal:
- We apply the hilbert transformaion for the iq;
- And we demodulate it to make it suitable for a png;
- Then we syncronize the data to detect the start of each row;
- We start searching for the rows and filter out the ones with a wrong lenght;
- Finally we stack them into a 2d image and we display it (a small part is cut out for error handling);
- If upgraded through color correction, the image will look like the one on the right.
- Once you enhance the image you also receive a dataset.json file which contains useful data on the satellite.
- First we collect all the json files containing info on the received signals;
- Second we define info such as color and name for each satellite, and we start creating the image;
- For each dataset we extract the data and upload it onto the image;
- Finally we adjust the timezone, pin the satellite trajectory and location on the map and display the final image.



