Coding 101

This is a rocketry blog. It’s primarily dedicated to all my misadventures building and flying rockets. I try to document my successes, my failures, and lessons I’ve learned. But I do occasionally venture outside of rockets and try other things.

When math is prologue

For example, last year (2019) I decided to take some math classes at my local community college. There is an explanation for this, and as you might guess, ultimately it goes back to rocketry. I’m not an engineer or scientist, and I didn’t really get a solid education in math and science at the university level. My interests at the time were more in liberal arts – politics and history in particular – and so I ended up with an education in political science and law. I took a few math and science courses, but generally tried to avoid them.

But fast forward a few years, and here I am today building high power rockets. And rockets require a basic understanding of math and science and engineering, at some fundamental level. And it’s interesting, and I enjoy learning. So that’s my story.

black chalkboard full of math equations and drawings in white chalk
seems legit

I took a placement test last year at the local college and placed into calculus I (the first of a three part series). I ended up taking it, and then successfully completing the entire series over three quarters, each more grueling than the last:

  • Calc I covered the foundational topics: limits, continuity, derivatives, etc. as well as anti-derivatives and definite integrals.
  • Calc II covered techniques of integration and their application to definite and indefinite integrals, as well as some differential equations and polar and parametric equations.
  • Calc III covered a variety of topics including vectors, multivariable functions, partial differentiation, and double and triple integration, as well as series and sequences.

I’m proud to say I got an A in all three of these courses, but it wasn’t easy. In fact, each of them really pushed me to the limit to understand and master a tremendous amount of new (and complicated) material. The studying was intense, and calc III really pushed it to a feverish pitch. But I survived.

There’s something to be said for really expanding your mind and stretching your brain, regardless of the subject matter. I don’t deal with any math in my daily job, and a lot of the concepts in calculus are really fascinating. (If you don’t believe me, you might just need to try a better instructor. Check out Sal Khan’s lessons on Khan Academy, which I used early and often.)

On a related note: did you know that whenever you learn something new, your brain is literally physically re-wiring itself, growing new pathways and connections between neurons? That alone is a great reason to dive into something new and learn.

But I’m off on a tangent (no math pun intended). While 2019 was the year of math for me, 2020 has been the year of the rocket. I’ve documented this elsewhere on the blog, but this past year has been a wild ride: I built and flew my first (and second, and third) high power rockets. I got my level 1 and level 2 certifications in high power rocketry from NAR, and I made two attempts for level 3, which is the pinnacle of high power, at least in terms of formal certifications. (Admittedly both L3 attempts were unsuccessful, but I learned a lot, and I’ll get my L3 eventually.) I got an amateur “ham” radio license so I could use a flight computer with radio telemetry in my rockets, and I retooled the garden shed in the backyard as a rocket workshop. I think I did some other stuff in the past year, too, but I can’t remember everything.

Coding: all the rage

But 2020 doesn’t exclusively revolve around rockets for me. I also resumed my formal education by taking another class: a computer science course on programming, specifically in the Python language.

computer screen with python programming code
python programming language

I decided on this course partly because it seemed interesting – coding is, after all, extremely popular nowadays, with parents enrolling their kids in coding “boot camps” from an early age, and app development seems like a guaranteed lucrative career if not an outright path to billionaire status. But from my perspective, there’s a more practical reason – there are several engineering courses I’d like to take, and some of them require this basic computer science course as a pre-requisite. It’s nothing more complicated than that.

I’m just wrapping up the class this week, and I enjoyed it more than I thought I would. I’m not planning to quit my day job, but there’s a certain element of satisfaction in facing a problem that initially seems baffling or insurmountable, and then gradually solving it. This is just an introductory course and we only learned a few basic techniques, but once you understand them, they can be pretty powerful and can solve a wide variety of problems.

The concepts include things like: input, processing, and output; working with numbers; functions; decision structures (if/elif/else statements to test conditions) and boolean logic; repetition structures (for/while loops); value-returning functions; working with files; and sequences or lists. There’s a nice logical consistency to everything.

Now that fall quarter is ending, I have to decide what (if anything) to do for winter quarter. There are more science courses I would like to take: one is general chemistry – quite important in rocketry – and another is a geology course all about dinosaurs (!). Or I could just throw myself back into building and flying rockets. What do you think?

Going down in flames: how to self-destruct with rockets

The big day was finally here.

man standing in front of small trailer holding large red and white rocket
my pride and joy

I finished building the L3 Fusion rocket in early September and was ready to launch – once the wildfire smoke cleared in the PNW – as soon as the opportunity arose. And in late October, I had my chance.

The plan

On a frigid Saturday morning, with my wife joining the small crowd gathered at the rocket launch out near Walla Walla, WA, I went through my pre-launch checklist and got the rocket ready for flight. It was mostly ready to go – the black powder charges were prepared and loaded inside the rocket, the M-1297 reloadable motor was already built, the wiring for all the electronics was nearly complete. All I needed to do was plug each flight computer into its respective battery, turn on the GoPro camera, and seal up the rocket with a few rivets. And, of course, install the motor. Easy enough.

I’ve described this rocket before but just to quickly recap, the L3 Fusion is a 5.5″ diameter, nearly 8 ft tall high power rocket specifically designed for level 3 certification. It’s available from SBR at fusionrocket.biz and I highly recommend it. The rocket is cardboard and therefore lightweight (only 11 lbs before adding the M motor, which itself weighs another 11 lbs), but it’s reinforced and double-tubed from top to bottom, and then coated with an epoxy – basically making the rocket incredibly strong despite the light weight. On an M-1297 motor, this thing should fly to 9,000 ft or higher.

The key word, of course, is “should.”

I was a bit nervous, but mostly hopeful and excited. The temperature that morning was brisk – around 30 degrees F – and it didn’t take long for my fingers to get cold and then start to feel numb. It’s particularly difficult when you’re trying to mess with very tiny wires and electronics – think eyeglasses screwdriver (which is literally what I was using to attach wires to flight computers).

man holding large rocket horizontally above his head, walking through field
getting the rocket on the pad

But I had built this rocket entirely under the watchful eye of the man who designed it, with his recommendations. We even filmed the entire build as a tutorial for future generations, so this event might go down in history. I can’t say I built the rocket flawlessly, but I was pretty confident the flight would be successful.

As you have probably guessed by now, it was not.

rocket launching with cloud of smoke underneath
L3 Fusion liftoff!

The disaster

The countdown began: 5… 4… 3… 2… 1…

With a thunderous roar, the rocket shot off the pad and climbed into the sky with lightning speed. An M motor is a pretty powerful one, and so this was expected. What was not expected was just a few seconds into the flight, as we watched it ascend and disappear into the sky, was another loud boom. The smoke behind the rocket, which was otherwise basically a vertical line, suddenly changed as the rocket veered sharply from its trajectory.

It broke up and fell back to the ground in multiple pieces, and the certification attempt was a bust.

We mounted a search with half a dozen people scouring the hilly area where we saw the parts land, and we were able to find and recover everything except for the rocket’s three fins. The fins were completely torn off, but a lot of the rest of the rocket was largely undamaged. We even found the electronics, despite the fact that the e-bay fell separately from the rest of the rocket and it’s quite small and difficult to spot in small bushes and tall grasses on a hill.

damaged rocket parts scattered on ground
the aftermath

The aftermath

You can learn a lot from studying a rocket failure, just by seeing what happened to the airframe. You can sometimes learn even more if you recover the electronics and download the flight data (assuming they’re still working properly), and/or from an onboard camera like a GoPro.

In this case, it seemed obvious that the fins experienced fin flutter, which is a phenomenon where the forces acting on the fins are much higher than they should be under normal flight conditions, and the extreme vibrations can either change the rocket’s trajectory or even destroy the fins.

Leaving aside complicated discussions of aerodynamics, fins are really important to a rocket. The rocket itself is streamlined and has a motor at the bottom which accelerates the rocket upwards (vertically), but anytime the rocket deviates from that vertical path, the fins stabilize it. The air pushing against the broad fins with large surface area pushes the bottom of the rocket back into place. It’s an ingenious system that self-corrects without the need for a sophisticated computerized guidance system. (Very sophisticated and large rockets tend not to have fins precisely because they do have such computerized guidance systems.)

Without fins, the rocket has no stability. In this case, the moment one or more fins were damaged due to flutter, the rocket careened significantly off its straight trajectory. Since it was still traveling at very high speeds just a few seconds into the flight, the forces acting on the rocket were tremendous and it was almost instantly destroyed.

close up view of damaged rocket with missing fins
the fin can, minus fins

As you can see in the picture above, the entire bottom of the booster section of the airframe was destroyed and all three fins were torn off. Some of the rest of the airframe was damaged, despite the fact that it was double tubed and reinforced with some serious epoxy. And the drogue (smaller) parachute disappeared into oblivion.

But much of the rocket was surprisingly undamaged. The larger parachute never even unraveled and was completely fine, along with both white shock cords connecting everything together. The nose cone and electronics were in great condition as well. Unfortunately both flight computers had their batteries ripped out during this event so they lost power and stopped recording data after the first few seconds, but both are in perfect working order and only needed new batteries, an easy fix.

The conclusion

It also seems clear that the cause of the fin issue was my own flawed construction technique. Typically, with previous rockets, I’ve built the fin can (i.e. the section of the rocket consisting of the motor mount tube and the fins) outside of the larger diameter rocket airframe, and then inserted the fin can into the airframe. This allowed me to use plenty of epoxy attaching the fins to the motor mount tube at the root edge of the fin, and to build up thick epoxy fillets.

In this case, however, I inserted the motor mount tube into the airframe first, and then attached the fins “through the wall” of the airframe tube. I likely didn’t use nearly enough epoxy on the root edge of the fins when inserting them – and because of this, at least one was yanked off during flight when it experienced flutter.

The reboot

I knew what I had to do. Rebuild the entire rocket (salvaging a few parts from the original if possible, like the parachute and shock cords) and this time, build the fin can outside the airframe and use plenty of epoxy on the fins. Make sure those fins are securely attached and incredibly strong.

Which is exactly what I did, for my level 3 certification attempt #2, just three weeks later.

How did that attempt go, you ask? Well, let me go put on some coffee and I’ll tell you all about it..

Going viral

I’ve periodically uploaded videos of some of my rocket launches during the past year (with more to come soon, of course). Generally, my YouTube videos don’t get a ton of views. Most of them have maybe 50 or 60 views; some of the more interesting ones have about 600-700. But one video seems to have really taken off – no pun intended.

What’s fascinating to me about this is: why? This is just a twelve second video clip of a rocket launch. It’s the Darkstar Extreme rocket that I built earlier this year, and this particular flight is on a K-535 motor, a common and standard workhorse motor. This video is not very different from several others that I’ve uploaded recently. Yet suddenly and without warning, the views started to dramatically increase: as of when I’m writing this, it’s topped 94,000 views.

As a nice side effect, it’s caused my YouTube channel to gain a bunch of new subscribers. Some sizeable fraction of people who casually see this clip want to subscribe – my total number of subscribers has risen from about 30 to over 170 in the past week or so. This is awesome, from my perspective.

I’m just not sure what accounts for this sudden interest. YouTube provides some analytics and it looks like most traffic (82 percent) is coming from YouTube Shorts, which is something new YouTube rolled out: a vertical video format that’s basically meant to compete with TikTok.

YouTube Shorts logo
YouTube Shorts logo

Another 13 percent of viewers are finding this through their suggested videos. Very few people are finding the video by using specific search terms (e.g. rocket launch).

But it’s still mysterious: why this particular video when I have several similar ones? Why now?

If anyone has any suggested explanations, I’d definitely be interested, since I’m still relatively new to this and figuring out how it all works!

Rocket flight data

Just to follow up on my last post, I wanted to provide some additional information and the actual flight data, and briefly explain what this all means, especially for all those folks reading this who are not familiar with anything related to rockets or flight computers. And for anyone who has significant experience flying rockets, you may find the below information interesting as well, without any explanation!

As a starting point: a flight computer is basically a very small circuit board that you put inside your rocket, and it has a bunch of neat built-in gadgets to measure exactly how high the rocket went, and how fast, and what interesting events happened when. I’ll explain more below.

This is the relevant flight data for the flight I mentioned in my last post, which went over one mile high:

flight data
flight data

So what does all of this mean?

First of all, it means that the rocket flew to a maximum height of about 7,579 ft – you can see this in “maximum height.” This measurement is made by a barometer taking air pressure readings in the flight computer, starting at ground level on the launch pad, and then many times while it’s in flight. There’s also a GPS chip on this flight computer and you can see it also independently measures the height using GPS, but I’m just going to assume the lower value is more likely correct.

The flight computer also records the maximum speed, which in this case was 904 feet per second (fps), which is equivalent to Mach 0.8, or a little bit slower than the speed of sound.

The total flight time was 145 seconds (just over two minutes), and there’s a further breakdown of how long the rocket spent going up and then coming back down.

The graph is even more intuitive:

graph of flight data
flight data graph

This reflects the same data described above. The black line is the easiest to understand: it represents the rocket’s actual height over time. As is generally the case (unless you experience a catastrophic failure), the rocket zooms off the launch pad extremely rapidly and hits a maximum height early (here, just over 7,500 ft, as you can see from the black units to the left side), and then after parachutes deploy, it descends more slowly.

The red line is speed (extremely high at first and then plummets quickly), and the orange or gold line is acceleration. Both of these units are off to the right side of the graph.

It’s definitely fun to build and fly a rocket, but with modern flight computers and the ability to record all kinds of really precise data, you can really geek out on this stuff. How high can I fly? How fast can my rocket go? Is it descending at the right speed, or do I need a bigger (or smaller) parachute next time? This can really help refine your building and flying skills through a trial and error process, because you have access to reliable data. And needless to say, this can also help you find your rocket if you lose it because it lands really far away out of sight. In that situation, you’ll find the GPS coordinates onboard to be incredibly useful!

NAR Rocket Science Achievement Award

The National Association of Rocketry (“NAR”) has established a “Rocket Science Achievement Award” program, which currently has three categories of awards:

  1. Mile Marker
  2. Faster Than Sound, and
  3. Data Downlink.
rocket launching with cloud of smoke underneath
Darkstar Extreme on Dark Matter “sparky” motor

The awards are pretty straightforward: to achieve Mile Marker, you need to fly a rocket to at least 1 mile (5,280 ft), and you can get additional awards for 2 or 3 miles, or as many as you’d like, in one-mile increments. To achieve Faster Than Sound, you just have to fly a rocket at a speed that is Mach 1.0 or higher. And the Data Downlink award involves real-time telemetry for data beyond just basic altitude and acceleration.

For any of these awards, you have to have documentation of the flight data, including a copy of the data file from a commercial flight computer. If you submit this documentation and it’s accepted, you’ll be awarded a high quality printed certificate and your name will be added to the NAR website, which is pretty cool.

I recently achieved the Mile Marker award when I flew my Darkstar Extreme rocket to 7,579 ft AGL. I plan on even higher flights in the future, of course, and I’d like to try to achieve an award in each of the three categories that NAR established. The data downlink one should be the most interesting and will require a bit of creativity.

In case you’re interested, the award page is here!

Preview: L3 Fusion rocket complete!

I gave a brief preview in a recent post, but I’m excited to report that the L3 Fusion rocket is now finished. This is a kit available for pre-order from Scott Binder at SBR, and I was fortunate enough to partner with Scott to do a test build on his latest design.

Large white rocket with "Fusion" decal, on display on a table
L3 Fusion rocket on display

As mentioned a while back, the L3 Fusion is a larger, upscaled version of his classic Fusion rocket. It has a 5.5″ diameter airframe and is about 90 inches in length, with a 75mm motor mount tube capable of flying on an M motor. What’s particularly great about this rocket is that it combines strength with being lightweight. Its cardboard airframe weighs in at just 11 lbs when fully loaded, minus the motor.

And yet it’s fully double-tubed from top to bottom, and the entire interior is coated with West System epoxy to harden and strengthen it. This thing can take a beating, and it is more than strong enough to handle an M motor.

Rocket motor parts on table, before assembly
Aerotech M-1297 motor, before assembly

I plan to fly it for L3 certification on an Aerotech M-1297 motor. Believe it or not, this will be my first time using a reloadable (RMS) motor, and my first time putting one together. I’ve previously just used disposable (DMS) motors since they’re so easy to handle – minimal preparation, and then discard entirely after the single use. But having now built the M-1297 in preparing to fly, I have to admit there’s something satisfying about putting together the motor yourself. Of course, it’s a bit messy and you’ll get your hands dirty – and the casing is not cheap – but the end product speaks for itself.

Two men standing in a workshop, holding large white rockets
Success!

In addition to building the rocket, we also set up a small studio and filmed the entire project, from start to finish. Throughout the process, I try to explain what I’m doing, though I’m far from an expert (I am, after all, just applying for my L3 certification). It was a lot to film, and as you can imagine, the video editing process is extremely time-consuming (props to Scott for undertaking this). But it should make for a great tutorial on YouTube, and I’ll post the video as soon as it’s ready!