The Birth of an Autonomous Drone

The Birth of an Autonomous Drone

June 23, 2024 by David Ewing

The Birth of an Autonomous Drone

At Firia Labs, we have a few common threads that run through everything we do. One key thread is our mission to inspire students with interesting and relatable problems that truly motivate them to explore STEM fields. We strive to provide challenging and authentic projects that give real-world context to academic standards.

Understanding that students have diverse interests, we aim to offer various experiences to pique their curiosity. That's why we created both CodeBot and CodeX. Some students are drawn to wheeled robots, while others are captivated by graphics and colorful LEDs. Our curriculum around these devices guides students from writing their first line of code to control an LED to managing sophisticated actions with sensor data, covering advanced computer science topics and Python programming techniques. Both CodeBot and CodeX are versatile, open-ended devices, programmable in countless ways, allowing us to craft engaging missions within our CodeSpace learning environment.

Joy of Flying

Which brings us to flying things. We've often been asked to create a drone. Why haven't we done it until now? Well, it's not because we don't love to make things that fly! Several of us on the Firia Labs engineering team have extensive experience in designing, building, and flying RC planes. We know a thing or two about flying. And hey, most drones used in schools are remote-controlled. But while we could build a drone to teach RC piloting skills, that alone would fall short of achieving our mission to “inspire a passion for creating!” in students.

Educational "Coding" Drones Today

Given the above, it's not surprising that we've had our eyes on the "state of educational drones" for some time now! And like many subjects in edtech, it's complicated...

  • Some schools get into drones from the E-Sports angle. Whether it's strapping on the VR goggles for FPV (first person view) racing, or a frenzy of drone soccer balls careening toward goals, you need fast reflexes and lots of practice to excel at remote-controlled flight!
  • Some schools adopt drones as an engaging way to teach STEM topics. After all, quadcopter drone flight is made possible by onboard microcontrollers, electronic sensors, and software. So it seems like a perfect fit for teaching computer science, math, engineering, and technology, right?

No surprise, we're keenly interested in that second category! But even the current crop of "codable drones" are more about remote control than coding. Once airborne, they offer limited interactivity — mostly simple commands like “go up, go forward, go down” sent via remote control. Those sorts of tasks don't really provide a meaningful way to cover academic standards in computer science, mathematics, and engineering. Drones that hide the electronics and sensors beneath a plastic shell also miss a key teaching opportunity. Those limitations make it hard to come up with interesting, challenging, and authentic projects that students can sink their teeth into!

The Dream - inspired by real-world cutting edge tech!

So, what could you do with code and a drone? Thanks to recent advances in AI and machine learning, autonomous drones are starting to be used in fields like mapping, surveying, agriculture, and solar farm monitoring. While there are jobs for human drone pilots, many future drone applications will be driven by code. At Firia Labs, we frequently emphasize “real-world” applications. We believe the best way to engage students is to connect learning to practical applications they can relate to. With that in mind, we decided to design a drone with a neural network and camera onboard to use machine learning models for identifying objects and patterns from the air. And, of course, a CPU capable of running students' Python code directly on the drone, allowing for full autonomy without a radio link.

CodeAIR

CodeAIR is the culmination of our dream for the next-generation autonomous drone. With an open hardware design, we can teach students about all the electronics technology enabling stable quadcopter flight. Since their Python code runs on the drone (not remote-control from a PC like other drones), they have direct access to all its capabilities. In addition to the camera and AI engine, we included a full set of navigational sensors, 16 user-controllable LEDs, sounds, and an infrared communication block for short-range data transfer or laser-tag style missions. Naturally, there's also a radio-control capability, but that too is driven by code. Load your CodeX with our open-source Python flight control software, and you're in command with responsive control-assist and customizable telemetry data on the color graphics display.

Curriculum, naturally!

CodeAIR's hardware capabilities are impressive, but the real magic happens when you connect it to CodeSpace, our STEM learning platform. Starting with CodeBot and CodeX, we refined the integration of step-by-step project-based curriculum with a Python development environment and interactive textbook. CodeAIR is a perfect addition to this environment, delivering a unique drone education experience! A student can log in to CodeSpace with a PC or Chromebook, connect CodeAIR with USB-C, and our online curriculum guides them step-by-step. From lighting up the first LED to reading sensors to spinning up the motors for their first hover, students bring the drone to life.

We know you and your students will love CodeAIR. It's an unforgettable educational experience that brings the cutting edge of technology within reach of the classroom!