Show HN: RPI Pico (RP2040) PIO Emulator Package for Go
I have been developing a bus communication protocol for a while using the Raspberry Pi Pico (RP2040)'s programmable IO (PIO) hardware (basically- 8 tiny processors that run assembly programs to manipulate GPIO pins) and I needed some way of testing my programs, as the real hardware is undebuggable.<p>Unfortunately, none of the existing emulators I could find supported connecting multiple RP2040s together, and they each had a few different missing bits of functionality, so I decided to make my own!<p>My emulator supports running multiple RP2040s electrically connected together, and emulates the whole of their PIO blocks (all 8 processors each), along with all of the more niche inter-processor interactions and GPIO functionality I could possibly find in the datasheet.<p>I built it as a Go package so that it can be used inside of other programs; I intend on using it myself inside a test suite against my in-development protocol.<p>I've spent quite a long time checking and double-checking most of the logic so it is as complete and accurate as I can make it, but if you spot anything amiss, I'd really appreciate the feedback.<p>Thanks for checking it out! Hope it can be useful to other RP2040 users.
Competitors & alternatives
Show HN: Apron Chat Protocol
Hi HN friends - I've been obsessed with chat protocols for ages - one previous project is ssh-chat (<a href="https://ss…
Show HN: The Kio Programming Language
Kio is a statically typed, hosted language that is designed to be ultra-portable. Kio 0.1 supports eight host languages…
Show HN: TinyAIArena watch AI agents battle it out
Did you ever click on an “AI Arena” expecting glorious battle and instead get a boring benchmark? If so, this project i…
Show HN: An online shop where your friends can hurry the courier
I built an emulator of a flash-sale fashion outlet with no registration and fake checkout that never takes money. You c…
Show HN: Ito – Build Terminal UIs in Lua
My friend and I are huge Neovim nerds. We like to rice our terminals and our editors. We just wanted a harness that we…