-
Hi @josuah , et. al., |
Beta Was this translation helpful? Give feedback.
Replies: 7 comments 3 replies
-
Hello and thank you for reaching in! I might not have followed all the discussions with Venkat. Is this the pico-ice (with an RP2040) or the more recent pico2-ice (with an RP2350)? If the latter it would also be required to look for a Another thing to consider is how to with draw the device. The drive might be ejecting itself after the image is sent to it. But it is possible that it does not, and then manually ejecting the drive might be required, which will ensure all the firmware image gets written end-to-end to the drive. Let us know if any of this has any effect. Also, the output of |
Beta Was this translation helpful? Give feedback.
-
Since it is still mounted, are there issues with putting other files on it from Linux using cp or other Linux programs? A regular Raspberry Pi Pico with ordinary MicroPython unmounts just fine for me when a .uf2 is dropped there. Thanks for the assistance! Rob |
Beta Was this translation helpful? Give feedback.
-
Well I just wrote a test.txt file there, and I can read it. It is only 3.1 MB, but for small files it appears you can write there. |
Beta Was this translation helpful? Give feedback.
-
Both the MicroPython file, main.py and the pico_ice.uf2 are there. I put a bitstream.bin file in the 3.1 MB file system and modified the main.py to upload the bitstream to the FPGA, and it seemed to work just fine. I just don't see two different file systems as you describe. I took the RPI_PICO-20250415-v1.25.0.uf2 for the ordinary Raspberry Pi Pico, and put it on the 3.1MB file system that mounts when I plug the pico-ice into the USB port, and it still boots with the pico-ice.uf2 firmware which I had removed, so then I thought "I cannot get the pico-ice into the bootloader mode," so I did the following:
I held each of the two buttons down and removed and inserted the USB, and it always mounts the same 3.1 MB volume, and picotool claims there are no RP2040 devices in BOOTSEL mode. It turns out I needed to jumper \BT to GND to get into BOOTSEL mode, because there is no BOOTSEL button like the Raspberry Pi Pico has. I suggest two changes to the documentation on this page. One, under Install at the top, note that the pico-ice comes with MicroPython installed (or maybe sometimes comes with it installed if that is more accurate). Then under the install, put a note or a link to the later document that describes the jumper needed to get into BOOTSEL mode or just a sentence saying you need to get into BOOTSEL mode and to do that, apply the jumper. Furthermore, on the PCB, SW1 is a poor name to put on the silkscreen. It should be called something more like RST, because it is connected to the RP2040 \RESET, and the name on the schematic should match the one on the PCB. Without these notes, it is likely readers will assume one of the buttons is the BOOTSEL button that the Raspberry Pi Pico has, but the pico-ice does not have. Downloading the Kicad files and examining the schematic should not be necessary to understand SW1 is the Pico reset button. My problem stemed from the fact I have used the Raspberry Pi Pico a good bit, and it starts in BOOTSEL mode on a new device. The pico-ice starts in MicroPython, which is easily mistaken for BOOTSEL mode, because there is a file system that resembles it, just different files in it. Thanks for all the help! Sorry that I'm a little dense. Rob |
Beta Was this translation helpful? Give feedback.
-
@josuah it might also be good to fix the Getting Started document. It has links that go to a 404 error. The Chat Server gives an invalid invite. The feeling I got reading that page was that using the pico-sdk was the way it was set up to start with, and so installing the MicroPython for the pico-ice made sense to me, but it already had it installed. I think it is really easy to use the MicroPython to install a bitstream onto the FPGA. I think you should emphasize doing it that way to start with, and then show the way using the pico-sdk for those who want to use a C++ program on the Pico, because they need the speed, etc. That seems more complicated to me, though it was probably easier to use the C++ interface in the past or something. Your docs are not on GitHub. If they are hard to modify for you, you might use the Wiki here on GitHub. Again, thanks for the help! |
Beta Was this translation helpful? Give feedback.
-
The links Doc in the Example folder also come up with 404 errors. |
Beta Was this translation helpful? Give feedback.
-
Thank you a lot for the detailed feedback, this will help with usability. I will collect time and apply the documentation changes for all users getting started with the pico-ice, and check whether the doc also needs to be updated for the pico2-ice. The presence of two similar filesystems to upload two different kind of files (firmware or FPGA images) is confusing I agree. A better documentation is the first step to improve it! |
Beta Was this translation helpful? Give feedback.
Manually ejecting it (like I was getting ready to remove the drive from the USB port) did not work. It is the RP2040 version. If I hold the reset button while inserting it it mounts the drive after I let it go. I can see the firmware as well as main.py when I look at the contents of the drive.
I trashed the pico_ice.uf2 and emptied the trash. then I inserted it and here is what sudo dmesg says: