I built SolarEcho, an open-source Python DSP app that turns live NASA space weather data into ambient electronic audio. It polls NASA’s DONKI CME data, extracts values like speed, half-angle, latitude, and longitude, and maps them into synth parameters such as pitch, volume, tremolo, and stereo movement in real time.
The hardest part was getting the full real-time pipeline working end to end: NASA API ingestion, async data handling, DSP mapping, and live audio output. I also had to solve practical issues around NASA API rate limits, missing DONKI fields in some CME records, and correctly recording system audio for the live demo on Linux.
I’m proud that SolarEcho is not just a concept — it is a working prototype that uses real NASA data and turns it into a live sensory experience. I’m also proud that I debugged the full chain from API polling to audio synthesis and then figured out how to capture the actual output for a demo video instead of just showing code on screen.
To test SolarEcho, people need Python, the dependencies in requirements.txt, a free NASA API key from api.nasa.gov, and an audio setup that supports sounddevice. They should add their key as an environment variable, run python main.py, and note that NASA keys are rate-limited, with the default personal limit at 1,000 requests per hour and DEMO_KEY much lower, so slower polling is better for demos
- 1 devlog
- 2h