Comments on: Programming Raspberry Pi Pico with Arduino IDE (Pico W compatible) https://randomnerdtutorials.com/programming-raspberry-pi-pico-w-arduino-ide/ Learn ESP8266, ESP32, Arduino, and Raspberry Pi Wed, 02 Jul 2025 12:37:49 +0000 hourly 1 https://wordpress.org/?v=6.8.2 By: Steven Sarns https://randomnerdtutorials.com/programming-raspberry-pi-pico-w-arduino-ide/#comment-1063556 Wed, 02 Jul 2025 12:37:49 +0000 https://randomnerdtutorials.com/?p=132407#comment-1063556 Thank you for the comprehensive analysis of the Pi Pico / Arduino IDE. I recently started a Pi Pico project with MicroPython and was making great progress until I attempted to process optical encoder driven interrupts at ~1kHz rate. Total disaster! Interrupts are apparently queued and would not be processed until some time later, then suddenly a pile of them would be processed. I have snorkled around the internet and cannot find a simple example of an interrupt attached to a pin in Arduino. Please consider this simple request. Thanks!

]]>
By: me https://randomnerdtutorials.com/programming-raspberry-pi-pico-w-arduino-ide/#comment-1006378 Sat, 08 Feb 2025 20:24:21 +0000 https://randomnerdtutorials.com/?p=132407#comment-1006378 noone talk about having 2 setup and 2 loop running at same time. can share data between both.
speed is amazingly wonderful.
i was nano and micro user but now using almost only pico.

]]>
By: Sara Santos https://randomnerdtutorials.com/programming-raspberry-pi-pico-w-arduino-ide/#comment-920457 Sat, 01 Jun 2024 09:38:10 +0000 https://randomnerdtutorials.com/?p=132407#comment-920457 In reply to paul.

Hi.
From that error, it’s impossible to find out what’s wrong.
We need more relevant information.
Regards,
Sara

]]>
By: paul https://randomnerdtutorials.com/programming-raspberry-pi-pico-w-arduino-ide/#comment-920400 Sat, 01 Jun 2024 02:43:42 +0000 https://randomnerdtutorials.com/?p=132407#comment-920400 Installing on RPi 5: Blink returns error: Arduino: 1.8.19 (Linux), Board: “Raspberry Pi Pico”
“An error occurred uploading the sketch”. Verbose output is is huge.

]]>
By: Sara Santos https://randomnerdtutorials.com/programming-raspberry-pi-pico-w-arduino-ide/#comment-857172 Fri, 25 Aug 2023 15:07:22 +0000 https://randomnerdtutorials.com/?p=132407#comment-857172 In reply to Eric.

Hi.
Usually, I only need to do that on the first upload if the board was not previously running an Arduino program.
After running a program with ARduino IDE, usually I don’t need to do that afterwards.
Regards,
Sara

]]>
By: Eric https://randomnerdtutorials.com/programming-raspberry-pi-pico-w-arduino-ide/#comment-857101 Fri, 25 Aug 2023 08:50:33 +0000 https://randomnerdtutorials.com/?p=132407#comment-857101 Excellent job and excellent site with clear tutorials. Many thanks to you.
Between each upload My Pico2040 needs plug-unplug USB (sort of power on/off).
Hereafter how I work around the problem.
-Do not plug USB
-Press and hold Bootloader button
-Plug USB
-Release Bootloader button
-(a window appears with: INDEX.HTM and INFO_UF2.TXT)
-Upload the program (Arduino 1.8.19, usual Blink)

-It works !

If somebody has the solution to avoid plug-unplug USB, please let me know.

I am using MATE-64bits on top of RPi-4.
Again many thanks for this excellent work
Eric

]]>
By: Sara Santos https://randomnerdtutorials.com/programming-raspberry-pi-pico-w-arduino-ide/#comment-854582 Fri, 11 Aug 2023 09:14:04 +0000 https://randomnerdtutorials.com/?p=132407#comment-854582 In reply to Arno.

Hi.
We’ll start by covering the most basic subjects, and then, we’ll start covering also MQTT and other IoT subjects.
Regards,
Sara

]]>
By: Arno https://randomnerdtutorials.com/programming-raspberry-pi-pico-w-arduino-ide/#comment-854530 Thu, 10 Aug 2023 19:51:08 +0000 https://randomnerdtutorials.com/?p=132407#comment-854530 I’m looking forward to articles on the Pico. I hope you include more advanced techniques beyond the standard fare. My interests are in interrupts and handling, dual core, maybe some effective PIO, reliably reading optical encoders, etc, beyond blinking LEDs and pushing buttons.

I like the ease-of-use of using mbed on the Arduino interface, but I like the improved capabilities of the Philhower port C/C++ on VSCode, too.

]]>
By: Hi https://randomnerdtutorials.com/programming-raspberry-pi-pico-w-arduino-ide/#comment-853378 Sat, 05 Aug 2023 14:38:34 +0000 https://randomnerdtutorials.com/?p=132407#comment-853378 Thanks a lot for the tutorial. After scratching my head for 3 days with the official board Mbed OS, I was finally able to run arduino c++ on my Pico W! Well done!

]]>
By: DBrion https://randomnerdtutorials.com/programming-raspberry-pi-pico-w-arduino-ide/#comment-845563 Thu, 06 Jul 2023 13:43:35 +0000 https://randomnerdtutorials.com/?p=132407#comment-845563 In reply to Ovid.

There are -at least – two ways of having assembly code in ArduinoIDE:
gcc/g++ can cope with in line assembly : https://gcc.gnu.org/onlinedocs/gcc/extensions-to-the-c-language-family/how-to-use-inline-assembly-language-in-c-code.html .
If you have a C (c++) function called main -it is a reserved word for arduino- which countains “only” assembly, one can -theoretically : I bet nobody dared it – program Arduino in assembly : Arduino wonot generate a main -it usually does- , and, if there are no libraries (#include <ttt.h> , tt being a library which makes things easier), your code wonot be bloated at all… but it might take a long time to have something working : just selecting a clock is very difficult in an ARM -system clock is selectable, frequency is tunable…) ; USB software is complicated, too; Z80 did not have these issues).

Other soulution is having a file called whatItsName.S ; .S extension is real assembly arm-gas (comes with binutils, parts of Arduino) file; Things can be more terrible than the 1rst option…

You should ask youself what “bloated” means:
* you can have a lot of sleeping code (some libraries are linked, and are useless to … blink a LED); but flash memory is huge w/r Z80 standards. Even if there are tons of unusuded libraries, time to fill the flash with one’s code and constants w=cannot be neglected.

you can hav a very short code and …. unused flash…

Did you know that picopi have automata -called PIO- , which can be programmed in -a kind of- assembly. Number of that “assembly” -used to bit bang on a dedicated automata/tiny extra processor- SPI/I2C, if needed, say- lines is small (< 30 IIRC).

It can be used from micropython
digikey.com/en/maker/projects/raspberry-pi-pico-and-rp2040-micropython-part-3-pio/3079f9f9522743d09bb65997642e0831
and from the SDK
digikey.co.uk/en/maker/projects/raspberry-pi-pico-and-rp2040-cc-part-3-how-to-use-pio/123ff7700bc547c79a504858c1bd8110 +official documentation

EarlePhilower pico port, which is shown in this nice blob, seems to support PIOs, too github.com/earlephilhower/arduino-pico/blob/master/cores/rp2040/pio_uart.pio

]]>