Slushosphere is a project to make slushies in the stratosphere via high-altitude-balloons (HAB) and record the altitude in which water becomes a slushie. When water is exposed to low pressure, it boils at a lower temperature. At the same time, it freezes because of the cold temperatures in the stratosphere. We predict because of this, water will turn into a slush in the stratosphere.
How we will achieve this is using an Arduino with an environmental shield that has ambient temperature, humidity, and pressure sensors. A GPS shield will be used to record the location and altitude of the balloon along with time. A connector carrier to connect a submersible temperature sensor to measure the temperature of the water. A microSD card on the environmental shield to record all the data and a battery connected to the Arduino to power it all.
This project is a part of Apex Hacks 2025 from Hack Club. Apex has provided us with the resources to make this project a reality including funding, travel and lodging, and a team of event organizers to help us along the way.
You can use either Arduino IDE 2 or Visual Studio Code with arduino-cli to upload the code to the Arduino MKR WiFi 1010.
The code for the Arduino is separated into two variants, the one measuring using a temperature sensor on the Arduino MKR ENV Shield and the one measuring using a submersible temperature sensor connected to the Arduino MKR Connector Carrier. The RecorderAmbient
was used for our launch because we did not have the submersible temperature sensor at the time. Note that the RecorderProbe
is outdated because of this and has never been tested.
The MKR WiFi 1010's built-in RGB LED is used to indicate the status of the Arduino and its components. The LED will show the following colors:
- Blue: Initializing
- The Arduino is starting up and initializing the components.
- Red: Error
- The Arduino has encountered an error and is unable to continue.
- Blinking Green: Fully working
- The Arduino is fully operational and all components are functioning correctly.
When you turn on the device, the LED will be blue while it initializes and then turn off when it finishes. If there is a GPS signal, the LED will turn green and start blinking. If there is an error with any of the components, the LED will turn red.
Each time the LED flashes green, it means that it has successfully recorded a data point.
We are using the Arduino Environmental Monitor Bundle which includes the following parts:
- Arduino MKR WiFi 1010
- This is the main board that will run the code and connect to the shields and carriers.
- Arduino MKR ENV Shield rev2
- This shield has the sensors to measure ambient temperature, humidity, and pressure. It also has a microSD card slot to record the data.
In addition to the bundle, we are using the following parts:
- Arduino MKR GPS Shield
- This shield has a GPS module to record the location and altitude of the balloon. It also has a real-time clock (RTC) which will be used to record 8983 the time of the data.
- Arduino MKR Connector Carrier
- This carrier has Seeed Studio Grove connectors to connect our submersible temperature sensor from Seeed Studio.
- One Wire Temperature Sensor DS18B20
- This is a submersible temperature sensor that will be used to measure the temperature of the water. It is connected to the MKR Connector Carrier.
The data collected by the Arduino MKR WiFi 1010 will be stored in a microSD card in the Arduino MKR ENV Shield. The data will be in CSV format with the following columns:
Timestamp (Epoch)
: The time the data was recorded in epoch format.Temperature (°C)
: The ambient temperature in degrees Celsius measured by the MKR ENV Shield.Humidity (%)
: The ambient humidity in percentage measured by the MKR ENV Shield.Pressure (kPa)
: The ambient pressure in kilopascals measured by the MKR ENV Shield.Illuminance (lx)
: The ambient illuminance in lux measured by the MKR ENV Shield.Liquid Temperature (°C)
: The temperature of the water in degrees Celsius measured by the submersible temperature sensor.Latitude
: The latitude of the balloon's location measured by the MKR GPS Shield.Longitude
: The longitude of the balloon's location measured by the MKR GPS Shield.Altitude (m)
: The altitude of the balloon's location in meters measured by the MKR GPS Shield.Speed (km/h)
: The speed of the balloon in kilometers per hour measured by the MKR GPS Shield.Satellites
: The number of satellites used to calculate the location and altitude measured by the MKR GPS Shield.
The data recorded is available in DATA.CSV
. You can process the data using the data.ipynb
Jupyter notebook.
We can see the Bill of Materials we used to make this project. It will contain the manufacturer and Amazon links for you to buy the materials. The total cost of the materials is under 400 USD.
All materials have been checked to operate as low as -20°C. You can see the Datasheet for each electronic's official datasheet with operating temperatures.
Discounts you can use if you are a student and doing this project.
- Ardiuno offers 25% off the Ardiuno MKR Family and more
- Helpful if you are only buying Arduino MKR WiFi 1010. We are not using this because is cheaper to buy the Arduino Environmental Monitor Bundle rather than individually with the discount.
- Adafruit offers discounts on certain Adafruit products
- None of the discounts are for our parts so we cannot use it.
- Amazon has Prime Student membership which is cheaper than Prime
- If you want faster and free delivery and exclusive Prime discounts. They were no exclusive Prime discounts for our materials at the time of the project.
If you're using a different GPS, make sure it works over 60,000 ft since most do not.
If you're using a barometer to get pressure and derive altitude from it, make sure records as low as 10 hPa or you may get inaccurate altitude. Most barometers don't measure that low.