Block Coding: Program the Drone with Blocks
Overview
Section titled “Overview”Block coding turns flight into a sequence of draggable blocks: no C, no IDE, no toolchain. Drag “take off”, drag “hover 3 seconds”, drag “land” — snap them together and the drone follows your script.
This track is the education entry to the platform. The three existing tracks (Beginner / Intermediate / Advanced) are engineering tracks: they assume you will eventually read code. This one assumes the opposite — that the learner is 8 to 16 years old and has never written a line of code.
Who this track is for
Section titled “Who this track is for”- Learners aged 8–16 — the age band where Scratch-style blocks are the standard teaching tool.
- Parents and teachers — the adults who set up the drone, the site and the safety rules; every hands-on page in this track assumes an adult is present.
- Schools and channel partners — STEAM programmes, after-school clubs and distributors evaluating the kit for classroom use.
What blocks can do
Section titled “What blocks can do”- Basic flight — take off, land, hover for a given number of seconds.
- Movement — up, down, forward, back, left, right by a given distance.
- Heading — rotate to an angle, then move along that heading.
- Patterns — repeat a loop to draw a square, a triangle or a figure-8.
- Feedback — change LED colour, play a sound, read altitude and branch on it.
- Sequences — save a block sequence, replay it, replay it with different parameters.
What blocks cannot do
Section titled “What blocks cannot do”- No control tuning — PID gains, filtering and attitude loops belong to the Intermediate track.
- No perception — camera tracking, colour recognition and sensor fusion belong to the Advanced track.
- No obstacle avoidance beyond firmware support — if the firmware has no such mode, no block can invent one.
- No “AI in a block” — blocks call things the firmware already implements; they do not add new flight capability.
How this track relates to the other three
Section titled “How this track relates to the other three”- Beginner track — the command sequence is preset: flash
path_8and the drone flies a figure-8. - Block Coding track (this one) — the command sequence is dragged: you build the same sequence out of blocks.
- Intermediate / Advanced tracks — the command sequence is written: you change the firmware, the controller or the algorithm.
All three sit on the same piece of firmware plumbing: a command-sequence interpreter. Preset, generated and dragged are three ways to produce the same sequence. This is why the block library is not a separate product but a second front-end to the same engine.
What to prepare
Section titled “What to prepare”- An assembled drone with propeller guards fitted.
- A computer, or a tablet that can run the browser-based editor.
- A flying area with clear space, at least the size given on the safety page.
- An adult who has read the safety page.
Safety comes before blocks
Section titled “Safety comes before blocks”Read Safety and Site Rules before the first flight. A flying drone plus a young learner requires guards, an emergency stop and a defined flying area — this is true for every commercial product in this category, and it is true here.
- How blocks connect to the drone — why a browser cannot talk to the drone directly, and the three ways around it.
First published atdrone.imagrove.com/block-coding/why-block-coding/Please credit Imagrove and link back to this page when quoting or republishing.
Questions or issues with this tutorial?
Sign in with GitHub to leave a comment. If a step fails for you, tell us — we verify it and update the tutorial.
© 2026 ESP32 Drone. All rights reserved.