Starts with Jeremy Grosser’s classic blink, moves on to explicit pin control, renames for clean external LED code, and ends with a look at (the still-experimental) Ravenscar tasking on RP2040.
All in pure Ada, with GNATdoc links and my Makefile improvements along the way.
This should be a great series! I’m following with interest. I’m looking forward to getting to “Chapter 30. WiFi Working Modes” so we can try out my WiFi driver together.
I’d like to share my experience with the RP Pico. I’m not much of a soldering enthusiast, so I didn’t solder in the reset button or even the SWD connector. Instead, I run a debugger via a USB cable using the pico-debug firmware and a second CPU to debug the code on the first CPU. Jeremy mentions this method on his website (See “Flashing the Pico“). Here’s how it works:
Download pico-debug-gimmecache.uf2 from GitHub Release and drop it on the RP Pico. It will stay there until the power is off. (Not sure about reset, because I don’t have the reset button )
Then you can use OpenOCD from GNAT Studio, another IDE or the command line:
openocd -f board/pico-debug.cfg program main.bin verify reset exit
(File pico-debug.cfg is located OpenOCD, no full path required here). For GNAT Studio add this to the project file
package Ide is
for Program_Host use “localhost:4242”;
for Communication_Protocol use “remote”;
for Connection_Tool use “openocd”;
for Connection_Config_File use “board/pico-debug.cfg”;
end Ide;
Maybe you could write about this on your blog? The simpler the first steps in launching RP Pico, the more people will be able to follow them, I hope.