-
Testing Altitude Proof of Concept
05/07/2019 at 21:12 • 0 comments![]()
Last weekend, I decided to build a simple proof of concept that:
- Measured the altitude of a rocket at launch
- Send the peak altitude to a iOS device via Bluetooth
- Recorde altitude versus time (for later use in calculating velocity and acceleration)
The Build
Altitude Monitor
I decided to use an Adafruit nRF52 Bluefruit LE Feather as the BLE and MCU for the PoC. My rationale was that it expect to use a similar System on Chip device for the final product.
![]()
All of the components used for the PoC test are Adafruit products (wishlist here->http://www.adafruit.com/wishlists/486595).
- Adafruit nRF52 Bluefruit LE Feather (will use this same SoC for the final product)
- FeatherWing proto
- BMP280 Altitude Sensor
- MicroSD card breakout
- Battery and Stacking Headers
Rocket
I used a 3D printed nose code and wings from the US Water Rockets website. I used a 73 mm diameter 1 liter bottle for the body of my rocket.
Launcher
Finally, I built a makeshift launcher using:
- Scrap wood
- three 3D printed rocket stabilizers
- Cork
- Bicycle pump and needle
![]()
![]()
![]()
Instructions to assemble the cork, needle, and pump can be found here: https://www.instructables.com/lesson/Pump-Rocket/
Note: This is not an optimal launching solution, as the rocket will launch before adequate pressure is built. For this flight, I was only testing recording altitude, so I didn't care about getting a lot of "air"
The Flights
Going in, I knew there were going to be a few problems:
- My rocket launcher was not optimized for pressure build-up, so I wasn't going to get a lot of altitude
- I chose not to build a parachute deployment mechanism for this PoC, so my rocket 3D printed parts wouldn't last long
- My SD card might eject on landing
Given all that, I was able to get 5 test runs in before I destroyed all my nose cones. This was enough to validate the proof of concept. Each flight was about 2 seconds, and I was able to record altitude every 300 ms. In addition, I was able to send the peak altitude to by phone via BLE.
Time (ms) Altitude (m) 0 0 <300 1.99 600 8.33 900 10.91 1200 10.54 1500 7.56 1800 1.6 ![]()
Results/Concerns
The current PoC can accurately indicate top altitude, but the data increments (300 ms) is wider that I would like.
The SD card did eject on landing, so either we have to make the landing more stable or move to SPI flash (and sync data via BLE).
I also have a problem in that I am not able to start the test at launch (primarily because I start recording data, then I start pumping, and the rocket launches whenever the pressure imbalance forces the cork out). To fix this, I need to hold the rocket in place, achieve the designated pressure, then start the measurements at the same time of the launch, with smaller data increments.
Next Steps
- Plot data into online graphics tools to determine acceleration and velocity
- Ideate on the correct location for the altitude sensor for the final product.
- Work on parachute deployment
- Determine if we should stay with SD card or move to SPI Flash
- Determine best way to synch launch with data capture
-
Design decisions - Wireless connectivity
05/03/2019 at 03:45 • 0 commentsOverview
There are a lot of connectivity options out there, each with their pros/cons. At the end of the day, based on my project guiding principles, I wanted to choose an connectivity option that
- Could easily be coded/leveraged- e.g. large amount of learning material and examples available
- Supported easy configuration the sensors and the ability to sync data via a phone app
I ultimately decided on BLE (and saving the data on-device to an SD card prior to transmission). Here's my thinking:
Wired connectivity (part of the solution) -
![]()
Sometimes the best answer is the simplest answer, so I considered going with a "wired" solution... meaning that data was either saved to a flash drive and downloaded, or saved to a memory card. I decided to incorporate an SD card as part of the solution as a secondary option of getting data. That being said, I knew I would need a wireless solution as well. If nothing else, I envisioned some of the sensors being inside the rocket, and I didn't want someone to have to un-assemble/re-assemble part of the rocket if they had to reset or configure a device.
Bluetooth LE (the current decision, with an SD card) -
![]()
BLE only works short range (30m)... a rocket could travel 80-100+ meters (depending on the size)... so I knew that I couldn't stream data via BLE. Instead, I determined that I could save in-flight data on the device (via an SD card or flash drive). I could then use BLE to send the data (via a phone app) to the cloud. I could also use the app to initialize the device before flight.
Wifi -
![]()
Most flights will be done in parks or school playground (where there will be limited/no wifi available), so I knew pretty quickly that wifi wasn't the right solution to get data directly to the cloud. I considered setting up a local wifi network, where each sensor/device would join the wifi network AND the user would join their phone to the wifi network to control the devices. I may fall back on this approach, but for right now, it's not my preferred option.
LORA (Long Range) or RFM69 radio/radio packets -
![]()
I really wanted to go with either of these options (no issues with range and some really cool technology), but at the end of the day, I would have to build a hub (with either BLE or Wifi) to communicate between the phone app and the device. It would ultimately be a solution that was too costly.
-
Why Water Bottle Rockets: Family and Cub Scouts
05/02/2019 at 22:59 • 0 commentsI built my first water bottle rocket six and a half years ago, as a weekend project with my kids. We loved it; we didn't do anything fancy - just made fins out of cardboard, attached them to a 2-liter soda bottle, filled it with water, and used a cork and air pump to launch the device.
![Johnson Family Water Bottle Rocket Launch Johnson Family Water Bottle Rocket Launch]()
Our first water bottle rocket launch - 2012!!! A few years later, I became a leader in our local cub scout pack, and started incorporating water bottle rocket design and launched in our camping trips and pack meetings.
![Pack 891 Water Bottle Rocket Launch Pack 891 Water Bottle Rocket Launch]()
Pack 891 Water Bottle Rocket Launch In both cases, the kids loved it. They got a chance to make something with their hands, apply simple science principles (fins and nose cones for better flight), and immediately see the output of their design.
Last year, I decided to industrialize my designs - building a fleet of launchers so that all of my Cub Scouts would get multiple chances to launch their rockets. That got me thinking:
- Was there a way that I could make it a contest and award a prize to the rocket that went the highest?
- Was there a way to record flight data and give to to the kids for additional activities (plotting graphs, comparing their flights against the amount of water they used)
From there, I started expanding my thinking: could this be used in the classroom? How can I incorporate 3D printing, coding and electronics? How does Newton's Three Laws of Motion apply?
All that ideation lead up to this - a Water Bottle Rocket STEM Kit (still looking for something that's more catchy). My hope is that there are others out there like me - people that are passionate about making, science, electronics, and learning - and have a desire to contribute to a repository of tools, designs, lesson plans around these topics.
Darian Johnson










