Saving LEGO® MINDSTORMS® …
… and the planet, one programmable brick at a time.
LEGO® MINDSTORMS® was discontinued. End of story, right? Well, not so fast. We can fix this together. And you can help!
Broken apps and a big pile of e-waste
It’s hard to find definitive numbers, but there are at least hundreds of thousands, if not millions of MINDSTORMS sets out there. For context, that’s more than 10 times the height of Mount Everest if you stack them all up. It’s a lot.
Sadly, an ever increasing number of them are no longer being used. Regular LEGO bricks last a long time, even across generations. But when it comes to electronic LEGO products, we seem resigned to the fact that they work for just a few years, just like most other consumer electronics.
Any gadget that requires a computer or smartphone becomes obsolete quickly as the original apps are abandoned or stop working on modern devices. The same has happened with previous generations of LEGO MINDSTORMS, and is now gradually happening with the latest two: EV3 and Robot Inventor.
Some die-hard fans keep old laptops around just to keep their LEGO MINDSTORMS sets running, but this isn’t feasible for most people, and certainly not for schools.
Besides technical obsolescence, MINDSTORMS EV3 is being left behind because it no longer feels relevant for today’s curriculum. But why is that? We want to challenge both of these narratives.
We admire the LEGO brand and The LEGO Group’s efforts to become more sustainable, but we believe they can do better when it comes to bricks with electronic components. We’re here to demonstrate that this can totally be done.
Refreshing a legendary robotics kit
Before you read on, consider this for a minute:
Which past or current LEGO set has a smart hub, motors, a color sensor, and a distance sensor?
Yep — all of the LEGO robot sets from the past 20 years!
This includes MINDSTORMS NXT, MINDSTORMS EV3, MINDSTORMS Robot Inventor, SPIKE Prime and SPIKE Essential. With some creativity, this definition even includes LEGO BOOST, LEGO Powered Up and Technic, and WeDo 1.0 and 2.0.
What sets them apart is not the technology, but the out-of-the-box play and learning experience. Each set had its own unique and exciting play experience designed for the relevant audience at that time.
While each of these were brilliant in their own right, some of them now feel outdated or don’t work anymore. But since the technology hasn’t fundamentally changed for 20 years, this presents us with a unique opportunity: Invent a modern and future proof play experience for all LEGO robotics sets.
This is what we have been doing successfully with Pybricks for the past 5 years, and now it is time to bring EV3 into the fold!
What is Pybricks for EV3?
Pybricks for LEGO MINDSTORMS EV3 will be a complete refresh of the EV3 play experience, all without purchasing new stuff.
It will work with modern computers and curriculum, right alongside SPIKE and other newer platforms. The EV3 starts and stops instantly and you can code it with MicroPython or blocks.
Put another way, the EV3 used to be like an older Raspberry Pi. We make it work more like Micro:Bit, which is much more beginner-friendly and classroom-ready.
With this upgrade, your EV3 comes back to life with many years to go, at home and in the classroom. Not just for teaching or play, but also for competing in FIRST LEGO League (FLL) and the World Robotics Olympiad (WRO).
What can it do?
Everything you love about Pybricks for MINDSTORMS Inventor and SPIKE Prime will also come to LEGO MINDSTORMS EV3 as far as the hardware allows it. This means an easy setup, effective sensor and motor control, and accurate driving.
You will write programs for the EV3 brick using the same Pybricks MicroPython commands and blocks that exist for all of the currently supported hubs.
The first release will focus on the essential features, like support for all the official EV3 motors and sensors. Note that it will not do everything that the EV3 could possibly do from day one. But since the new firmware is open source too, we expect to add exciting new features over time.
Oh — remember that the EV3 felt sluggish and slow to boot? Especially compared to the new hubs? We’ve solved that:
Did Pybricks not already support EV3?
Kind of. The earliest iterations of Pybricks (1.0 and 2.0) ran on ev3dev Linux. It is still (and will remain) available on the LEGO Education website. You needed a particular type of microSD card, a now outdated flashing tool, and Visual Studio Code. It also took a long time to boot. This was great for hackers and early adopters, but it just isn’t suitable for beginner-level classrooms.
Pybricks 3.0 has made huge leaps since then. Updating the hub and writing code (blocks and Python) works in your browser without additional installs. You can basically just code, and your smart hub boots instantly. The user commands (“the API”) are still unchanged though. We like to keep things running!
Schools, FLL teams, WRO teams, and home users are already successfully using Pybricks to build, play, invent, and win with a wide variety of modern robotics sets. We think that the EV3 deserves to be part of the same experience. Just plug and play!
Is EV3 still relevant? Where’s the AI?
Sure, AI is amazing — and yes, you could combine this with Pybricks. Either way, a motor is still going to have to rotate, lights still need to blink, and a robot still needs to drive straight. By getting the fundamentals absolutely right across a wide range of robotics systems, we ensure that Pybricks is future proof even as the latest trends in STEM education constantly evolve.
In fact, since more advanced processing like artificial intelligence tends to happen on devices like your phone or the cloud anyway, these fancy additions work equally well with newer sets like SPIKE as they do with older sets like EV3, since we’ve made the underlying robotics framework the same throughout.
Will it be free and open source?
Just like Pybricks for the other LEGO hubs, the firmware and Python coding environment are free and open source. We are working on this around the clock.
We’ll also have optional add-on features like block-based coding which help us fund our mission. Naturally, prior supporters will automatically get access when we enable this for EV3! Thanks again for your support.
Where are we now?
Developments will be gradually published on GitHub in the months to come. We currently work on implementations for:
- Booting the EV3 instantly.
- Installing the firmware. No SD card needed.
- Running MicroPython programs directly on the brick.
- Large and Medium Motors, and Drive Bases.
- EV3 Touch Sensor, EV3 Gyro Sensor, EV3 Color Sensor, EV3 Ultrasonic Sensor, EV3 Infrared Sensor.
The major remaining steps towards a first release include:
- Implementing USB or Bluetooth connectivity.
- Re-implementing firmware installation in the browser.
- Re-implementing code download in the browser.
- Integrating documentation for all hubs in one release.
By popular request, we’ll also list the features that could work technically. These could be added in future releases if enough users are interested:
- Legacy motor and sensor support.
- File management and sound support.
- Third party sensor support.
- USB host connectivity to connect multiple bricks.
What about MINDSTORMS NXT?
Great question. While we can’t make any promises yet, we have confirmed that the NXT brick is powerful enough to run Pybricks, which is a super exciting first step. If there is sufficient interest in this initiative for EV3, then MINDSTORMS NXT will be next!
Become a MINDSTORMS legend!
Would you like to help make this happen? We’d love your support!
When shutting down, the EV3 will scroll through the credits, highlighting everyone who helped make this project possible.
To get your name or alias featured on everyone’s EV3 with Pybricks, please join the MINDSTORMS legend tier on Patreon.
We are incredibly grateful for your support. It would not be possible without you!
We also welcome anyone who has previously supported Pybricks. We respect your privacy, so we’ll only add prior supporters if you ask. Send us a note if you’d like to see your name added!
This work is partially funded by a 2024 grant from the Hacker Initiative. We are immensely grateful for their help to kickstart this project.
Try it out in the classroom
If you want to try out an early version of Pybricks for EV3 in your classroom once it is nearly ready, we’d love to hear from you.
Do you have unused EV3 sets? Would you consider donating them to another school that wouldn’t normally be able to afford robotics in the classroom? Please get in touch as well!