I hope this isn't too off-topic for this board, but I am using the new Arduino IDE 2 on my Fedora 36 Linux install. I'm trying to do a simple LED blink for my Raspberry Pico but the IDE can't seem to find it. I've installed the Pico in the board manager.
When plugging in the Pico, I can view the contents of the flash drive.
But I cannot seem to find it under the /dev/tty* ports.
When using my Uno, I see dev/ttyACM0 just fine. But nothing like that for the Pico.
Does anyone know what I'm missing or perhaps know of a better place to ask if this isn't the right place?
On a command line "dmesg | tail" will dump the end of the kernel log which should tell you whether the USB device was recognized and the device name if it was successfully registered. "dmesg" in this dumps the kernel activity log and "tail" just shows the end of it.
I haven't done Arduino development on Fedora, but there is an issue on some Ubuntu distributions with one of the services recognizing USB serial devices as a modem or some such and capturing the device to the exclusion of the IDE.
I have a Ubuntu based linux. The "modemmanager" package is removed. The initial upload to get a serial port working is already done. It is no longer seen as a flash drive.
Could you try in Windows if that will upload the file for a serial port ?
Yeah, I tried that a few times with two different Pico's.
On a hunch, I tried adding r/w permissions on /dev/ttyS0.
After doing that, I see that as an option for the port.
After trying to upload the blink example, I get this error:
Sketch uses 50636 bytes (2%) of program storage space. Maximum is 2093056 bytes.
Global variables use 7268 bytes (2%) of dynamic memory, leaving 254876 bytes for local variables. Maximum is 262144 bytes.
Resetting /dev/ttyS0
Converting to uf2, output size: 131584, start address: 0x2000
Traceback (most recent call last):
File "/home/cbmeeks/.arduino15/packages/rp2040/hardware/rp2040/2.6.0/tools/uf2conv.py", line 401, in <module>
main()
File "/home/cbmeeks/.arduino15/packages/rp2040/hardware/rp2040/2.6.0/tools/uf2conv.py", line 388, in main
drives = get_drives()
File "/home/cbmeeks/.arduino15/packages/rp2040/hardware/rp2040/2.6.0/tools/uf2conv.py", line 262, in get_drives
for d in os.listdir(rootpath):
FileNotFoundError: [Errno 2] No such file or directory: '/opt/media'
Failed uploading: uploading error: exit status 1
I tried creating the /opt/media folder (my /opt is empty), but that did not help.
I found the uf2 file in the cache folder and manually copied it over to the Pico (it's the blink example) and it's working!
So for whatever reason, the Arduino IDE cannot seem to do the same thing. I've never programmed the Pico before so I don't know if this is normal or not but seems that I should be able to upload from the IDE.