Inspiration
In the past decade, the popularization of CubeSats and rideshare programs has led to the democratization of space in which small companies, academic researchers, and even student organizations have gotten the opportunity to go to space.
As these opportunities become cheaper and more numerous, a new possibility of satellite system becomes very interesting. Namely, the opportunity to create a swarm of CubeSats that could do more advanced research than a single satellite at a fraction of the cost of a flagship satellite from a large company. For example, a single cubesat can't have a very high resolution camera, but a swarm of CubeSats could combine the results of each of their cameras to get a result similar to that possible from a multi million dollar satellite.
Furthermore, the StarLink constellation launched by SpaceX uses laser communication to maintain the relative positions of their hundreds of satellites. Inspired by this as well as by the work on chipsats by the rex lab at Stanford we chose to create a demonstration of laser communication using microcontrollers to act as our satellites.
What it does
HackerSat demonstrates laser communication between two independent satellites, allowing the transmission of text over long distances.
How we built it
This project was done using an Arduino Uno, a TI MSP430, a laser diode, a photoresistor, as well as various other electrical components. The software was written in C for the microcontrollers, allowing the Arduino to encode information and send it through the laser to the MSP430, which was able to then decode and display the information.
Challenges we ran into
Getting both HackerSats to synchronize in their data sending/receiving. Even if both devices' clock speeds are the same, the sampling times may be different, causing very noisy results. We fixed this by starting and ending with a specific flag and modifying the result to not include that sequence.
We also faced the challenge of dynamically changing lighting conditions, which caused the system to falsely detect when the laser was turned on. To fix this we began by taking baseline measurements of the ambient lighting and comparing incoming data against that, which was robust enough to remove essentially all false measurements.
Accomplishments that we're proud of
We were very excited to have a working demo in such a short period of time. There were many things to learn before we were able to even begin engineering including learning how to use the electronics, learning to program the microcontrollers, which use a modified version of C, and learning how communications systems work to adapt those ideas to our own project.
What's next for HackerSat
We hope to continue to develop this project using more advanced techniques like sending error correcting codes, implementing communications between more than two satellites at a time, and maybe even demonstrating it in space!
Log in or sign up for Devpost to join the conversation.