pi_Pico in Arduino IDE

More friendly Pi-Pico development/testing.

The pi-Pico2040 comes with c and python support but with limited demos and obscure libraries. There is a port available for the Arduino IDE which is much easier to work with and allows us to take working Arduino code across to the pico. The Adafruit Circuitpython platform is another way, but the bog-standard Arduino IDE is my favoured platform right now. On the MAC, I find Thonny crashes out a lot and I already have multiple platforms, so I don’t need yet another supplier-tied one.

Take a look at https;//trevorblum.name/pico where I have put some re-worked Arduino examples that I have run on the 2040, including 1.14" display examples.

1 Like

Hey Trevor,

Awesome work here! I’m sure that’ll help the next guy that runs into what you did. I agree that I’d like to see the Pico get to the user-friendliness standard that Arduino is at.


Just started on the Pi Pico path, last few weeks.
Found the Windows 10, Thonny, Python development environment really easy to use and quick to get something working. Good starting point.

Now looking at using the Pico as a low power embedded micro. So investigating Sleep & Dormant modes. Best I could get was with Adafruit Circuit Python, Dormant mode, 5.5mA. Not close to the 0.8mA stated in the datasheet.

So looked at changing to a C++ environment and installed the Pico SDK on the Arduino IDE. Pretty easy to do and it worked ok loading a blink program. The memory usage is much less using compiled code; Micro Python takes up about 600k and Circuit Python 1M of the Pico 2M flash. C++ brings you closer to the hardware, which is what you want with embedded applications.

Note: Micro Python loaded programs faster and easier to stop a auto run program than with Circuit Python.

Highly recommend using the Arduino Pico SDK, pretty well implemented. But there are parts of the development that are not 100% yet.

When I tried to use the Sleep.h routines, the Arduino compiler complains about no such file or directory. The Sleep routines are work in progress anyway. Looking through the CMake files it looks like the path is not included. Spent a few hours trying to fix it, no success; still trying to get my head around some of this stuff. Might have to resort to a non IDE environment to fix it, Arduino does not really work like a standard C compiler.

Thought I would post here as it relates to using the Arduino to develop code for the Pico. Compiled code is so much smaller and runs faster than the an interpretive language like Python.

Anyway, will post updates and happy to help, just let me know.


After a frustrating day; I conclude the implementation of Sleep & Dormant mode for the Pi Pico is not ready for user access in the SDK. (as it states, a work in progress)
I also think the Arduino implementation for the Pi Pico needs some work before it will be useful.

One positive is; I did get Visual Studio Code working and now understand how to use it.
(running on Pi 4)

My suggestion is to use Thonny and Micropython to program the Pico and if you need a low power embedded micro try something else at this time.


1 Like