

Start your drone programming journey with this beginner-friendly project. You'll learn the fundamentals of GPIO pin control and timer-based scheduling by creating a beeping buzzer system - the building blocks for all sensor-actuator interactions in drone programming.
Build a program to add audio generating ability to the Pluto drone. Use the buzzer module to create a rhythmic beeping sound.
The Hooter module contains an active buzzer that produces a loud beep when powered. Unlike passive buzzers that need a specific frequency signal, active buzzers simply need a HIGH signal to activate. This makes them ideal for beginners learning GPIO control - just set the pin HIGH to beep, LOW to silence.
Connect the Hooter to the RC port on the Primus V5/X2 board. The Hooter uses only GND and Signal pins. When Signal goes HIGH, the buzzer activates. Make sure the connector is firmly seated in the RC port.
| Primus V5/X2 Pin | Peripheral |
|---|---|
| GND on RC port |
Open this code in PlutoBlocks to program your drone. The visual blocks below show the complete solution.

PlutoBlocks visual code for Hooter project
PlutoIDE C++ code for this module is coming soon. Stay tuned for updates!
Ready for the next challenge? Try these extensions to deepen your understanding.
| GND on Hooter_module |
| Signal on RC port | VCC on Hooter_module |
Approach We utilise a repeating timer to create a 1-second delay between toggling the buzzer GPIO pin ON and OFF, creating a rhythmic beeping pattern. Code Logic Explained On Start: GPIO_1 (RC port signal pin) is set to LOW, ensuring the buzzer starts silent. Timer1 is configured as a repeating timer with a 1000ms (1 second) interval.Pluto Loop: The loop checks Timer1 on each cycle. When Timer1 triggers (every 1 second), GPIO_1 is set HIGH, turning the buzzer ON for one loop cycle. On all other cycles, GPIO_1 is set LOW, keeping the buzzer silent. This creates a periodic beep pattern where the buzzer sounds briefly every second.On Stop: Timer1 is reset to prevent any lingering timer events.
Drone proximity warning system Audio-based drone locator Emergency alert siren on drones
Ready for the next challenge? Try these extensions to deepen your understanding. 1Use multiple hooter modules with different timer values to create a simple melody. 2Connect a sensor to dynamically change Timer1's duration based on environmental input. 3Build a text-to-Morse-Code generator that buzzes out messages. Pluto Drone Add-On Projects — Compatible with Pluto 1.2 (Primus V5) & Pluto X (Primus X2) — Drona Aviation