#pybricks
Pybricks: LEGO MINDSTORMS Robot Inventor 51515, SPIKE Prime and Essential, Technic, City and BOOST hubs

LEGO discontinued the MINDSTORMS Robot Inventor app on October 1, 2026, with no further updates.

AI: none documented · evidence: public

unshittify.dev/p/pybricks/
LEGO MINDSTORMS app alternative: Pybricks for Robot Inventor and SPIKE | unshittify
LEGO discontinued the MINDSTORMS Robot Inventor app on October 1, 2026, with no further updates. Pybricks replaces the hub's firmware with MicroPython, installed from the browser at code.pybricks.com, and programs are written and run from the same page. The robot keeps working with no LEGO app at al
unshittify.dev
November 6, 2026 at 2:30 PM
python-pybricks
Pybricks API type stubs and documentation for MicroPython on LEGO hubs
aur.archlinux.org
September 21, 2026 at 6:36 PM
python-pybricksdev
Pybricks developer tools: compile, run and flash firmware on LEGO hubs
aur.archlinux.org
September 21, 2026 at 6:35 PM
Bluetooth Browser is now available for Pre Order on macOS, joining the iOS App Store! 🔷 apps.apple.com/app/apple-st... 💙
August 16, 2026 at 2:37 PM
Last night, I helped my 13 year old son set up VSCode, configure his terminal, create a GitHub account and get a Python environment with Pybricks set up on his computer. His robotics class is using the web UI, but he wanted to code like his dad.

A proud coding dad moment. 😁
November 4, 2024 at 8:42 AM
Bu kısım da altyapısal olarak farklı gömülü sistem aygıtlarla da haberleşip haberleşemeyeceğini gösterecek. Tabi ki ekosistem PoweredUp gibi mi olacak yoksa kendine özgü temel mi kalacak onu da göreceğiz. PU'nun PyBricks ile yapılabilen kısmı bu tarafta ne olur göreceğiz.
July 20, 2025 at 5:53 AM
to be clear, what i am working on is a no-GenAI digital assistant that can do various things for you once "trained" (read, coded using an interface meant to be friendly to non-coders, for a similar concept, though narrower in scope, see link.)
Pybricks
Robotics made easy
pybricks.com
September 13, 2025 at 5:25 AM
Comparing LEGO SPIKE Prime Programming: Which Is Best for Robotics Competitions? - 4 : Color Detection Accuracy
When participating in a robotics contest using LEGO SPIKE Prime, choosing the right programming environment can impact performance. In this experiment, we tested how accurately different programming environments detect colors while the robot is in motion. ## Tested Programming Environments I compared the following four environments: * Word Blocks (SPIKE App 3) → Download here * Python (SPIKE App 3) → Download here * Python (Pybricks) → More info * C Language (spike-rt) → GitHub repository ## Robot Configuration For the test, I used a car-type robot with the following setup: * Left wheel motor: Port A * Right wheel motor: Port B * Side-facing color sensor: Port C * Downward-facing color sensor: Port D ## Test Method To compare the environments, I conducted the following test: * The side-facing color sensor detects various block colors while the robot moves. * The downward-facing color sensor detects black and stops the robot. * Each environment was tested five times, and the average results were compared. * Programs were optimized for each environment while keeping the movement speed nearly the same. Word Blocks (SPIKE App 3) Python (SPIKE App 3) # Set up all devices LineSensor = port.D ColorSensor = port.C colors = [] color_now = None # Color reading task async def color_task(): global color_now while True: color_now = color_sensor.color(ColorSensor) await runloop.sleep_ms(1) async def main(): global colors global color_now motor_pair.pair(motor_pair.PAIR_1, port.A, port.B) motor_pair.move(motor_pair.PAIR_1, 0, velocity=900) while color_sensor.reflection(LineSensor) > 50: if len(colors) == 0 or color_now != colors[-1]: colors.append(color_now) await runloop.sleep_ms(1) motor_pair.stop(motor_pair.PAIR_1, stop=motor.BRAKE) print(colors) runloop.run(color_task(), main()) Python (Pybricks) # Set up all devices. hub = PrimeHub() left_motor = Motor(Port.A, Direction.COUNTERCLOCKWISE) right_motor = Motor(Port.B, Direction.CLOCKWISE) line_sensor = ColorSensor(Port.D) color_sensor = ColorSensor(Port.C) # Variables for color detection color_now = None colors = [] # Color reading task async def color_task(): global color_now while True: color_now = await color_sensor.color(surface=True) await wait(1) async def run(): global colors global color_now # start moving left_motor.run(900) right_motor.run(900) while await line_sensor.reflection() > 50: if len(colors) == 0 or color_now != colors[-1]: colors.append(color_now) await wait(1) left_motor.brake() right_motor.brake() print(colors) async def main(): await multitask(color_task(), run()) run_task(main()) C Language (spike-rt) pup_motor_t *motorA; pup_motor_t *motorB; pup_device_t *ColorSensor; pup_device_t *LineSensor; char colors[30]; // Array to store detected colors char color_now; void Main(intptr_t exinf) { motorA = pup_motor_init(PBIO_PORT_ID_A, PUP_DIRECTION_COUNTERCLOCKWISE); motorB = pup_motor_init(PBIO_PORT_ID_B, PUP_DIRECTION_CLOCKWISE); LineSensor = pup_color_sensor_get_device(PBIO_PORT_ID_D); ColorSensor= pup_color_sensor_get_device(PBIO_PORT_ID_C); int8_t i = 0; // Wait for left button to be pressed hub_button_t pressed; while(!(pressed&HUB_BUTTON_LEFT)){ hub_button_is_pressed(&pressed); hub_light_on_color(PBIO_COLOR_GREEN); } sta_cyc(CYC_HDR); // Start color_task // Start moving pup_motor_set_speed(motorA,900); pup_motor_set_speed(motorB,900); // Add detected colors to the array while (pup_color_sensor_reflection(LineSensor) > 50 ) { if (i == 0 || color_now != colors[i-1]) { if (i < sizeof(colors) - 1) { colors[i] = color_now; i++; } } } // Stop moving pup_motor_stop(motorA); pup_motor_stop(motorB); stp_cyc(CYC_HDR); // Stop color_task // Output the colors detected int8_t j; for (j = 0; j < 30; j++) { syslog(LOG_NOTICE, "%d : %c", j, colors[j]); } } // Read color every 1ms void color_task(intptr_t exinf) { color_now = pup_color_sensor_color_name(ColorSensor, true); } * The robot and block placement during the test: * Expected color detection sequence: None → Red → None → Green → None → Green → Red → None → Yellow → Blue → None → Green → None → Red → None → Blue → None ## Results: Which Environment Was Most Accurate? The environment with the least misdetections was C Language (spike-rt): 1.2% - C Language (spike-rt) 2.5% - Python (Pybricks) 3.22% - Word Block (SPIKE App3) 4.27% - Python (SPIKE App3) **Observed Trends** Word Block & Python (SPIKE App3): * More likely to misdetect colors when changing to/from green (often detecting light blue or black by mistake). * More likely to misdetect white when changing from yellow. * More likely to misdetect light blue when changing from blue. * Seemed to detect background colors instead of "None" when the object’s color was ambiguous or distant. Pybricks & C (spike-rt): * More likely to misdetect yellow when changing from green. * More likely to misdetect white when changing from yellow. ## Want to Try C Programming on LEGO SPIKE Prime? If you’re interested in trying C on SPIKE Prime, there are beginner-friendly learning materials available. As of March 2025, a trial version is also accessible—give it a try! Related Articles 1. Testing LEGO SPIKE Prime with C: Line Follower Speed & Stability 2. Introducing SPIKE-RT: the C Language Software Platform for LEGO SPIKE Prime 3. Comparing LEGO SPIKE Prime Programming: Which is Best for Robotics Competitions? - 1 4. Comparing LEGO SPIKE Prime Programming: Which Is Best for Robotics Competitions? - 2 5. Comparing LEGO SPIKE Prime Programming: Which Is Best for Robotics Competitions? - 3
forem.com
March 31, 2025 at 12:40 AM
Uncover the magic of Pybricks and Forge with @meliae.bsky.social ’s Devoxx UK session "Building the Jira Celebration Train with Forge & Lego Pybricks." Learn how she connected Jira to a Lego train for a fun victory lap with each closed ticket.

Session link - buff.ly/XkL5Lhl
June 11, 2025 at 11:03 AM
Join @meliae.bsky.social at Devoxx UK 2025 to learn how she used Forge and Pybricks to make a Lego train celebrate every closed Jira ticket. A bit of fun, silliness and inspiration rolled into 15 minutes.

View the details here 🚂 buff.ly/srQXvSg
March 24, 2025 at 3:00 PM
Can you help Pybricks to bring bare metal MicroPython to EV3?
fosstodon.org/@laurensvalk...
Laurens Valk (@laurensvalk@fosstodon.org)
Hello, Fediverse. I'm looking for embedded experts to help save #LEGO MINDSTORMS! Background: https://pybricks.com/project/saving-lego-mindstorms/ Help: https://github.com/pybricks/support/issues?q=...
fosstodon.org
August 4, 2025 at 1:10 PM
Would you like to boot your EV3 in 2 seconds and program it in MicroPython?
www.youtube.com/watch?v=9Iu6...
Saving LEGO MINDSTORMS with Pybricks: Progress Update
YouTube video by Pybricks
www.youtube.com
April 21, 2025 at 4:34 AM
Please help to revive LEGO Mindstorms EV3-s: pybricks.com/project/savi...
Saving LEGO® MINDSTORMS® …
Pybricks reboots LEGO® MINDSTORMS® for use in the modern classroom. Help us save hundreds of thousands of robots from the e-waste pile!
pybricks.com
March 2, 2025 at 12:57 PM
Feed: "BrickNerd - All things LEGO and the LEGO fan community"
By: Ronald Vallenduuk on Saturday, March 14, 2026
Pybricks and Powered Up: A Recipe For Bluetooth Py
Using a smartphone or tablet to control LEGO Powered Up or Mindstorms functions can be a little tricky. So today for Pi Day, we have a recipe for you to make everything much easier with the help of Pybricks.
bricknerd.com
March 14, 2026 at 10:47 PM
Many schools block Bluetooth. This makes using Pybricks with Lego Mindstorms difficult.
pybricks.com/project/savi...
Saving LEGO® MINDSTORMS® …
Pybricks reboots LEGO® MINDSTORMS® for use in the modern classroom. Help us save hundreds of thousands of robots from the e-waste pile!
pybricks.com
January 21, 2025 at 1:51 PM
🧵
Turning with gyro checking on the result is not a new thing, I'm used to that with SPIKE Prime as well, at least when using #pybricks
Not sure if the LEGO SPIKE Prime software does that too, I don't think so
May 22, 2026 at 9:45 AM
You would like to try out Bluetooth Browser? Join here buff.ly/7utg6U9 and if you do, please let me know what is missing or could be better. 💙
July 30, 2026 at 10:05 AM
One surprise that came up building Bluetooth Browser, are the communities it enables – It will be suitable for Accessibility Projects like Open Earable, allow for BLE Web IDEs that directly flash to an ESP, or even PyBricks your Lego Hacker Web IDE. All of this was not planned!
July 27, 2026 at 3:40 PM
Yaay the Lego car works with remote!! PyBricks tutorial was a godsend. No need to use that stupid Control+ app!
January 9, 2025 at 8:58 PM
Attacked by a Goose on the Way to the Office — Embedded

Ralph Hempel spoke with us about the development of Lego Mindstorms from hacking the initial interface to running Debian Linux as well as programming Mindstorms in Python. Happy 25th birthday to Lego Mindstorms! Pybricks is a MicroPython…
Attacked by a Goose on the Way to the Office — Embedded
Ralph Hempel spoke with us about the development of Lego Mindstorms from hacking the initial interface to running Debian Linux as well as programming Mindstorms in Python. Happy 25th birthday to Lego Mindstorms! Pybricks is a MicroPython based coding environment that works across all Lego PoweredUp hubs and on the latest Mindstorms elements. The creators are David Lechner and Laurens Valk.
786hz.com
September 7, 2025 at 2:34 PM
My son Gniesbert

The #EV3 from #LEGOMindstorms sure is fun! ☆
Thankfully there's pybricks :)
January 14, 2025 at 3:17 AM
Droid Army ready for new school year.
#edusky #python #lego #pybricks
January 28, 2025 at 10:25 PM
This was fun. Wrote a bookmarklet to add an agent (bring your own anthropic key) to any (excluding strict CSPs) website. blog.philz.dev/blog/itsy-bi...
Itsy Bitsy Agent Bookmarklet (or, adding an agent to a PyBricks simulator)
blog.philz.dev
August 12, 2025 at 1:31 PM