Skip to content

Block Coding: Program the Drone with Blocks

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.

  1. Learners aged 8–16 — the age band where Scratch-style blocks are the standard teaching tool.
  2. 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.
  3. Schools and channel partners — STEAM programmes, after-school clubs and distributors evaluating the kit for classroom use.
  1. Basic flight — take off, land, hover for a given number of seconds.
  2. Movement — up, down, forward, back, left, right by a given distance.
  3. Heading — rotate to an angle, then move along that heading.
  4. Patterns — repeat a loop to draw a square, a triangle or a figure-8.
  5. Feedback — change LED colour, play a sound, read altitude and branch on it.
  6. Sequences — save a block sequence, replay it, replay it with different parameters.
  1. No control tuning — PID gains, filtering and attitude loops belong to the Intermediate track.
  2. No perception — camera tracking, colour recognition and sensor fusion belong to the Advanced track.
  3. No obstacle avoidance beyond firmware support — if the firmware has no such mode, no block can invent one.
  4. No “AI in a block” — blocks call things the firmware already implements; they do not add new flight capability.
  1. Beginner track — the command sequence is preset: flash path_8 and the drone flies a figure-8.
  2. Block Coding track (this one) — the command sequence is dragged: you build the same sequence out of blocks.
  3. 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.

  1. An assembled drone with propeller guards fitted.
  2. A computer, or a tablet that can run the browser-based editor.
  3. A flying area with clear space, at least the size given on the safety page.
  4. An adult who has read the safety page.

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.

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.

ImagroveMore ESP32 tutorials · ESP32 IoT Tutorial

© 2026 ESP32 Drone. All rights reserved.