fabse@hack:~$ ./maker --embedded --hacking

PROJECTS, 3DPRINTING4 MIN

Water Rocket – Neptune 1

POSTED:2025-06-14 BY:fabse
#MicroPython#ESP8266#ADXL345#3D Printing

Water Rocket – Neptune 1

Status: under construction. The rocket, flight controller and launch base are built; the first test flight is still ahead.

Neptune 1 is a water rocket made from a 1.5 l PET bottle and 3D-printed parts. A small flight controller in the nose detects the highest point of the flight and opens the parachute on its own.

Neptune 1 on its launch base

Overview

  • Body: 1.5 l hard PET bottle, 3D-printed nose cone, 4 large and 4 small fins, flight controller case
  • Weight: 336 g empty, including flight controller and 18650 battery
  • Propulsion: water and compressed air, pumped in through a bicycle valve
  • Recovery: spring-loaded parachute, released by a servo at apogee

Flight Controller

Component Purpose
NodeMCU (ESP8266) Main microcontroller, runs MicroPython
ADXL345 3-axis accelerometer on I2C, detects 0 G at apogee
Servo Opens the parachute door
WS2812 NeoPixel Status LED
18650 Li-Ion cell Power supply
Switch Power on/off

Pins: NeoPixel on GPIO 13, servo PWM on GPIO 14, buzzer on GPIO 12, I2C SDA/SCL on GPIO 4/5.

Wiring

Flight controller parts

Flight controller in the nose

Software

The firmware is written in MicroPython with uasyncio. It runs three tasks:

  1. sensordata() logs the X/Y/Z acceleration with a timestamp to sensor.txt.
  2. buzzer() beeps when apogee is detected.
  3. servo() opens the parachute when apogee is detected.

At apogee the rocket is weightless for a moment, so the Z axis of the ADXL345 drops to about 0. When abs(z_value) < 10, the buzzer beeps for 0.5 s and the servo turns from 30 to 122 (PWM duty) to release the parachute.

Acceleration log

Upload and REPL with mpremote:

python -m mpremote connect COM_PORT cp main.py :
python -m mpremote connect COM_PORT

Launch Base and Trigger

The launch base combines a wooden platform with 3D-printed legs, a trigger ring and a valve adapter. Cable ties hold the bottle while it is pumped up. Pulling the trigger ring releases the cable ties, and the rocket launches. The launch needs no electronics.

Launch base

Trigger mechanism

Trigger CAD

Parachute

The parachute is made from thin plastic film and is attached to the nose cone. A piece of PET bottle acts as a spring. When the servo opens the door, the spring pushes the parachute out. Pack the parachute loosely, so it does not tangle and opens fully.

Parachute deployment test

Next Steps

  • Refine the parachute door and trigger
  • Optimize the flight controller software
  • Revise the air tube, valve and nozzle
  • Publish the CAD files
  • First test flight

GitHub Repository