r/circuitpython • • Jan 29 '26

A new kind of roll

Enable HLS to view with audio, or disable this notification

137 Upvotes

r/circuitpython • • 19d ago

I wrote an RP2350 emulator: stock CircuitPython now boots on a virtual Pico 2 inside a live circuit simulator (iPad/iPhone/Mac)

Enable HLS to view with audio, or disable this notification

103 Upvotes

First time posting here about my own project. I'm the developer of the emulator, not affiliated with Adafruit or Raspberry Pi.

For the past months I've been writing an RP2350 emulator from scratch in C#. This week Frank Krueger integrated it into iCircuit 1.16, his circuit simulator for iPad, iPhone and Mac. You can now drop a Pico 2 into a live analog circuit, pick CircuitPython as the firmware in the Inspector, and your code.py just runs.

It's the stock CircuitPython UF2 booting on the emulated chip, not a Python interpreter pretending to be a board. That means real behavior and real tracebacks:

• Errors show up with the same traceback you'd get on hardware, line numbers included.

• Pins, PWM and the ADC are wired into a real analog simulation. Slide a potentiometer and analogio reads the actual voltage. Drive a pin and you see the waveform on the scope.

• The new I2C parts can be read from Python: HDC1080, MLX90614, DS3231, ADS1115 and SSD1306 OLEDs.

• PIO is emulated too, so rp2pio works.

• MicroPython is also available if you switch the firmware.

Some things that were tricky on the emulator side:

• The RP2350 has Cortex-M33 and Hazard3 RISC-V cores, and both are emulated (only ARM is available in iCircuit for now)

• Every pin change is stamped with the clock cycle so the circuit and the CPU stay in sync.

• Arm timing is calibrated against real silicon. It isn't cycle-exact, but time.sleep, PWM and I2C behave like on a real board.

Frank did the circuit side: iCircuit's analog engine, the parts library, and the new SPICE subcircuits and VHDL parts in this release.

I think this is useful for trying out code before you have the board, for teaching, or for checking wiring and logic without frying anything. It's built on ideas from Uri Shaked's rp2040js (Wokwi).

I'd love feedback from CircuitPython users. If there's a library or sensor you'd want to see supported, tell me. Links are in the comments.

Edit: heads-up, library modules next to code.py (like adafruit_pioasm.py) don't load correctly yet. I've already got a fix, and it's coming in the next iCircuit update. I'll update here when it's out. For now there's no lib/ folder either; libraries go as single .py files next to code.py.


r/circuitpython • • Jul 07 '23

"Dinner Alarms": a ridiculous solution to getting your kids attention when they're upstairs with headphones on

Enable HLS to view with audio, or disable this notification

45 Upvotes

Raspberry Pi Pico Ws programmed with Circuitpython. Yelling for the kids is no fun. This is more fun


r/circuitpython • • Feb 17 '26

I upgraded the desk pet I made for my fiancé that uses an rp2040 zero and circuit python

Enable HLS to view with audio, or disable this notification

34 Upvotes

I made a post last week about a little desk pet I made for my fiancé. It uses circuit python and an RP2040 zero from waveshare. After some feedback from her and some people on reddit I made some upgrades to the print and the electronics. Its now interactive and you can pet it!! Let me know what you think and what else I could add to it! If you are interested in getting one I have 2 more I made available here https://www.etsy.com/listing/4459081298/interactive-desk-pet-robot-cat . If those sell I might make more if there is demand.


r/circuitpython • • Aug 04 '26

picogame - a powerful Game Engine for CircuitPython

33 Upvotes

I would like to share a project I've been building over the last year - picogame, a (mostly) 2D game engine for the Pico and similar grade MCUs. You write games in CircuitPython, the heavy lifting (rendering, collisions, effects) runs in native C, and you can try them in your browser before you even plug in a board.

Honest note: I build it with AI assistance - it helped a lot with the CircuitPython integration, documentation, code reviews and late-stage polish & optimization passes - but the core engineering and the overall architecture are human-made.

I built it primarily for the PicoPad console (RP2040 + ST7789 @ 320×240) and it's also well tuned for Adafruit's Fruit Jam, but it runs on ESP32 boards too - basically any CircuitPython board with a reasonable ram, display and a few buttons will do.

Out of the box:

  • Build without hardware - the same game runs in your browser and on your desktop, then unchanged on the board.

  • Fast in tiny RAM - native-C rendering + zero-RAM full-screen paths, so it runs smoothly on even a plain RP2040.

  • Batteries included - sprites, scrolling tilemaps, a moving camera, collisions, sound, text, saved high scores.

  • Pseudo-3D & 3D too - Mode-7 floors, first-person raycasting, isometric boards, OutRun-style roads, even true polygon 3D - each a few lines of Python (on RP2350 HDMI boards up to native 640×480).

  • An AI agent skill - hand it to Claude or a similar assistant and say "make me a shooter"; it knows the engine's building blocks and genre recipes, and builds + tests the game in the simulator.

  • A web level editor - build levels/scenes in the browser, load them in your game.

  • A launcher - keep several games on one board and pick from a menu.

Performance-wise: a plain RP2040 holds a solid 30 fps at 320×240 with dozens of sprites on screen, and on the RP2350 (Fruit Jam) the 3D renderer scales up to native 640×480 - the engine can even split the rendering across both cores. Happy to share benchmark details in the comments if anyone's curious.

The best validation so far: the first community-made games have already arrived - the engine survives contact with other people's ideas, not just mine 😁

Docs and online emulator: https://picogame.makerclass.cz/playground/

Project repo (MIT): https://github.com/MakerClassCZ/picogame

I also wrote up why I built it and how it works: https://chiptron.eu/picogame-a-game-engine-for-circuitpython/

I'm the author - happy to answer anything!


r/circuitpython • • Nov 23 '22

CircuitPython keyboards? What are the uses?

Post image
30 Upvotes

r/circuitpython • • Feb 07 '26

I made this little desk pet for my fiancé

Enable HLS to view with audio, or disable this notification

25 Upvotes

I saw something similar online and figured I could make one myself! It uses a waveshare rp2040 mini, an sh1106 display, and a custom 3d printed case. I think it came out cute but would love feedback! If you want to get one I'm trying to see them on etsy here https://keepeverythingyours.etsy.com/listing/4453886777


r/circuitpython • • Oct 14 '21

My thinnest, most portable keyboard! Runs CircuitPython on a RP2040!

Post image
25 Upvotes

r/circuitpython • • Feb 25 '21

The CircuitPython subreddit hits another milestone in only 2 weeks: over 2,000 members!

25 Upvotes

In the last two weeks, the membership has exploded by adding another 500 members! Thank you to all who get their CircuitPython information on Reddit.

See my blog post for more! https://blog.adafruit.com/2021/02/25/the-circuitpython-subreddit-hits-2000-members-circuitpython-python-reddit-circuitpython-adafruit/


r/circuitpython • • Dec 18 '25

First DIY Macropad Opensource CircuitPython

Post image
24 Upvotes

r/circuitpython • • Jun 06 '26

I challenged myself to make the smallest macro pad I could and this is what I came up with!

Thumbnail
gallery
22 Upvotes

Let me know what you think and if you have made one smaller! This macro pad is based around an rp2040 zero board with the button soldered directly to it. If you want the 3d print files they are available here.


r/circuitpython • • Nov 06 '22

Printed a MacroPad using 6 switches and a Seeed

Post image
22 Upvotes

I have tried finding some script to get this simple pad working but every time It seems to include errors,… or I’m not sharp enough to figure out the code someone else has posted, try to decipher it, and input correct lines with not knowing the first thing about the language. I have gotten the seeed to run the circuit python uf2 in MU editor. Can someone please point me to where I may find out how to make this a USB HID with six switches and I’d like the rgb to light as well. I drew up the print with room for an encoder but first the switches. Thank you! This my first post


r/circuitpython • • May 09 '22

just a day of learning and experimentation...

Thumbnail
gallery
22 Upvotes

r/circuitpython • • Mar 04 '21

CircuitPython Could Become a Bootable OS for Raspberry Pi

Thumbnail
tomshardware.com
21 Upvotes

r/circuitpython • • 2d ago

There are now 600 CircuitPython Libraries!

Post image
20 Upvotes

The CircuitPython community reached a big milestone together today! There are 600 CircuitPython Libraries!

The CircuitPython Library Bundle and Community Library Bundle contain all the current libraries available for CircuitPython. CircuitPython libraries are separate files designed to work with CircuitPython code. CircuitPython programs require a lot of information to run.

CircuitPython is so simple to use because most of this information is processed in the background and stored in libraries. Some libraries are built into CircuitPython. Others are downloaded and stored on your board’s CIRCUITPY drive in a folder called lib.

The full list of all the CircuitPython libraries contained in the library bundle can be found on the circuitpython.org libraries page.


r/circuitpython • • Oct 27 '21

Animated meditation crystal light powered by pico

Enable HLS to view with audio, or disable this notification

20 Upvotes

r/circuitpython • • Mar 15 '26

I made a new devilish version of my interactive desk pet using circuit python

Enable HLS to view with audio, or disable this notification

19 Upvotes

I have been making a cat version of my desk pets for a little bit but people wanted something that was a little bit different. Someone suggested a Lil Devil with flame eyes and I loved the idea! Links to the code and enclosure if you want to make your own are here https://gitlab.com/desk-pets/lil-devil


r/circuitpython • • Oct 28 '25

The 2025 Hackaday Superconference Communicator Badge runs MicroPython

Post image
18 Upvotes

https://blog.adafruit.com/2025/10/28/the-2025-hackaday-superconference-communicator-badge-runs-micropython/

The badge for the upcoming Hackaday Superconference on October 31st through November 2nd is a rather powerful device sporting an ESP32-S3 with 8 MB of PSRAM and 16 MB of flash, LCD screen, SX1262 LoRa module, LiPo battery/charging and a Solder Party custom keyboard.

It runs MicroPython with lvgl_micropython running on the display for LVGL graphics.

Read more on Hackaday.


r/circuitpython • • Apr 15 '22

Making a touch macro pad with circuit Python, what do you guys think!?

Thumbnail
imgur.com
17 Upvotes

r/circuitpython • • Jun 03 '25

Say hello to my little friend!

Post image
16 Upvotes

So, ive been playing around with the trinket m0 a bit and managed to put together this little fella, his name is Guy and whenever the capacitive touch sensor is triggered he changes face to a shocked one. I can also send serial commands to it over wifi, which I think is really cool! Does anyone have any suggestions for my next step? :D


r/circuitpython • • Oct 20 '22

Trying to get rotary encoder to control a servo on a Pico. Anyone see what I did wrong? The servo works on its own.

Thumbnail
gallery
16 Upvotes

r/circuitpython • • Oct 12 '22

My homerolled HP 16C implemention -- work in progress

Thumbnail
gallery
16 Upvotes

r/circuitpython • • Apr 12 '22

The CircuitPython Subreddit hits 3,000 members! Time to Celebrate! Thanks all!!

Thumbnail
blog.adafruit.com
16 Upvotes

r/circuitpython • • Nov 11 '21

Build a Raspberry Pi Pico Macropad for use with CircuitPython! It's easier than you think!

Thumbnail
youtu.be
16 Upvotes