Designed programmer PCB and attempted to create a DIY PCB at home using etching solution. See video of it in action. The photos below show the final product which actually works well as an Atmega328P programmer; I tested several blink programs. The rows of header pins also almost make this into an Arduino-like devboard, though it lacks any external oscillator or other peripherals. I did have to shave down the bottom of my USB-C cable so it could come in flush. A lot about this whole project could be improved significantly, but I had a lot of fun with it. This investigation was a massive success, and we did barely manage to complete it on schedule
Got the programmer working, which was a combination of the code running on the RP2040 and a Python script transmitting the serial data over USB from my PC. See video.
Wasted ~2 hours today alone tracking down a very dumb mistake - I was off by one on the SPI pins on the Atmega328. No wonder I wasn't getting a response. I completely obliterated the code trying to track it down, so I will reconstitute something clean tomorrow. The AVR chip nonetheless acknowledges our attempts to program it now. ![]()
Finished a likely buggy implementation of both the rp2040-USB-programmer and the PC-based hex file transmitter using python. See code directories 005 and 006. The clock and data transmission works as expected, but for some reason the Atmega328P is completely unresponsive; no signal is being transmitted back over MISO. ![]()
Soldered pins to the RP2040-Zero board for preliminary breadboard tests. Got control of the built-in RGB LED working over PIO (very interesting and powerful) and began working the ICSP algorithm. Link to top-level project directory.
Launched short-term investigation into developing a RP2040-based programmer for AVR ICSP-capable chips, especially the Atmega328P. After internal discussions 2025-12-14, both of these chips seem to be the best avenues for future electronic project development. Completed first three preliminary tasks establishing a functional Atmega328P and RP2040-zero toolchain to complete the remainder of the investigation.