,

Starlight: The Ultimate Model Rocket Control Board

Posted by

This is the story of Starlight, my model rocket control board. That’s right, at 16 years old, I designed a circuit board from scratch. And it works – beautifully. On the first revision! It’s my magnum opus thus far, and signifies a huge leap in my technical ability.

So here’s the story of my circuit board, how I designed it, and how I was able to do something like this at such a young age.

Quick note: If you’re looking for an article on how I designed the model rocket itself, look no further than my article on Horizon I.

What is Starlight?

My hand for size

Starlight is a circuit board designed by yours truly that is going to be used in model rockets (such as Horizon I). This board includes the following:

  • Sensors for altitude, rotation, acceleration, and temperature 
  • Two MOSFETs for an igniter and optionally an ejection charge.
  • The RP2040 microcontroller. This is a blazing-fast microcontroller with two cores and 264kB of RAM. 
  • The board is also connected to two servo output ports (which run on 5V, not the RP2040’s 3.3V). They’re connected to the RP2040 through a level shifter, which allows the RP2040 to talk to the servos despite them being run on a higher voltage.

How did I design Starlight?

Layout of my circuit board
My PCB layout!

The simple answer is – I spent a ton of time refining each and every part of the schematic, making sure the layout was impeccable, and double and triple-checking all my work. But that’s not the whole story. In reality, this rocket control board took me countless hours of headaches and difficulties. I learned so much from this project though, so I think it was worth it. I designed the schematic and the PCB layout in Fusion 360, which is a popular CAD software for 3D designs and electronics.

Schematic of Starlight, the rocket control board

Choosing parts for the board was one of the most difficult parts. I had to read countless datasheets, figuring out which parts were best for my application. I settled on an incredibly powerful microcontroller, tiny yet powerful sensors, and stable and versatile voltage regulators, which allow the board to be powered with anywhere from 5-18V.

RP2040 – The brains

This microcontroller is the brains of the board. It handles receiving signals from all over the board and converting them into useful data that can be used to actuate the servos and trigger MOSFET charges. I wrote custom firmware to go on this chip, which is not publicly available yet, but I will be posting updates shortly.

macro shot of components on the rocket control board
A macro shot of all the components that make Starlight run!

ICM-42605 – The gyroscope

The ICM-42605 is a gyroscope and an accelerometer, which allows it to detect movements. This is perfect for figuring out the angle that the rocket is pointing at, and adjusting accordingly. This chip is connected to the RP2040 via the I2C interface.

BMP388 – The altimeter

The BMP388 is a pressure and temperature sensor. It is also connected to the RP2040 via the I2C interface, and it allows the RP2040 to make guesses on how high up the rocket is in the air, using pressure and temperature.

TXS0108E – The translator

One of the issues I ran into while designing this board was getting the RP2040 to talk to the servos. The RP2040 is a 3.3v device, while the servos are 5v devices. This is where the TXS comes in, to translate the 3.3v signals to 5v signals.

Takeaways

rocket control board with servos plugged in

Overall, This board was a huge leap in my technical abilities. Only a year ago, I was first dabbling into proto-boarding and schematic capture. Now, I’m proficient enough to design, build, and get a board manufactured from scratch. This shows that anyone can do anything, if they put their mind to it.