SPI.transfer16 and SPI.transfer(buffer, count) with RP2040 Picoboard, not working

Hello,
The above mentioned functions does not work with RP2040 / pico board.
Is there maybe another Framework / Arduino Core for RP2040 which I could test?

Thank you

With what platformio.ini is that? There are two Arduino cores, ArduinoCore-mbed and Arduino-Pico. By default PlatformIO only uses the first one, but per this PR the other one can be used too.

with following:

[env:pico]
platform = raspberrypi
board = pico
framework = arduino
upload_protocol = picotool

I will test now with following setting and give feedback:

[env:pico]
platform = raspberrypi
board = pico
framework = arduino
upload_protocol = picotool
board_build.core = earlephilhower

That config won’t work unless the forked platform is used with platform = https://github.com/maxgerhardt/platform-raspberrypi.git.

Beware that before the clone, you must activate Windows + git long paths per documentation, otherwise the Arduino-Pico recursive clone will not work.

ok, so I will try to follow your mentioned instruction, because just got following error:

Error: VCS: Could not process command [‘git’, ‘clone’, ‘–recursive’, ‘GitHub - earlephilhower/arduino-pico: Raspberry Pi Pico Arduino core, for all RP2040 boards’, ‘C:\Users\…\.platformio\.cache\tmp\pkg-installing-dqzf4_wh’]

How can I define the setting of SPI with this new core? I got following error:

image

There already is SPI and SPI1 objects created in the library

so just delete your custom SPI1 object creation but set your custom pins per docs

https://arduino-pico.readthedocs.io/en/latest/spi.html

thanks, now I got following error:

That doesn’t look good. Have you rebooted after activating those Win32 Long paths?

If in doubt, try reinstalling the toolchain by removing

  • C:\Users\<user>\.platformio\.cache
  • C:\Users\<user>\.platformio\packages\toolchain-rp2040-earlephilhower
    and rebuilding the project.

I forgot this point (reboot), but now after removing the mentioned contents I still have the same error…

And you also did this? If yes, also delete C:\Users\<user>\.platformio\packages\framework-arduinopico

thanks.
I deleted all 3 folders (.cache, toolchain…, and framework-arduinopico), unfortunately I still have the same problem after build the project.

I already tried several thing as clean all, reboot… Win32 long paths is activated…

image

this is my ini-file setup:

[env:pico]
platform = https://github.com/maxgerhardt/platform-raspberrypi.git
board = pico
framework = arduino
upload_protocol = picotool
board_build.core = earlephilhower

Is antivirus interfering?

Can you upload the whole project?

I tried everything again with switched off antivirus (deleted all 3 folder, clean all, reboot)… but without success :frowning:

How can I upload the whole project?

Thank you

You could zip the project and use Github, Google Drive, Dropbox, etc.

I got it working with the standard setup (mbed Core), I had defined SPI1 and used somewhere SPI.transfer, instead of SPI1.transfer… sorry.

BTW: Is it possible to do SPI transfer with DMA ? If yes, do you have examples?