Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Raspberry Pi Pico W #109

Open
5 tasks done
britannio opened this issue Apr 10, 2024 · 5 comments · May be fixed by #113
Open
5 tasks done

Raspberry Pi Pico W #109

britannio opened this issue Apr 10, 2024 · 5 comments · May be fixed by #113
Assignees
Labels
✨️ Enhancement ✨️ New feature or request
Milestone

Comments

@britannio
Copy link

Minimum requirements

  • Core clock speed is 48 MHz or faster?
  • Is the CPU an ARM Cortex M0+ or later?
  • Does the host microcontroller have at least 32 KB of flash memory?
  • Is the host microcontroller's UART peripheral able to support 420,000 (or higher) baud rate(s)?
  • Is your development board currently supported in the Arduino IDE?

What development board would you like me to add?

It seems like this is the only change to make: britannio@d699599

@britannio britannio added Pending 📌 This is waiting for me to check it out ✨️ Enhancement ✨️ New feature or request labels Apr 10, 2024
@ZZ-Cat
Copy link
Owner

ZZ-Cat commented Apr 12, 2024

Issue closed: Pico W not supported in PlatformIO

You have reminded me that I need to update my issue template here and clarify that a potential target MUST be supported in both the Arduino IDE and PlatformIO.

The Pico W, IIRC uses Earle Philhower's Arduino Pico package, of which is not supported by PlatformIO at this time.
This means that, for the time being, it is available exclusively in the Arduino IDE. Thus, PlatormIO users lose out.

I highly recommend you make some noise in this Issue over on PlatformIO's repository, because I simply cannot add more Pico-based development boards beyond what is simultaneously supported in the Arduino IDE and PlatformIO.

@ZZ-Cat ZZ-Cat closed this as completed Apr 12, 2024
@ZZ-Cat ZZ-Cat added ❌️ I'm not doing this! 🤚😤👎 Yea, nah. That's not going to happen. and removed Pending 📌 This is waiting for me to check it out labels Apr 12, 2024
@ZZ-Cat ZZ-Cat closed this as not planned Won't fix, can't repro, duplicate, stale Apr 12, 2024
@britannio
Copy link
Author

It's not officially supported by PlatformIO but it is quite trivial to make it work by changing two lines of platformio.ini and this is how I'm using the Pico W so PlatformIO users do not lose out.

@ZZ-Cat
Copy link
Owner

ZZ-Cat commented Apr 13, 2024

It's not officially supported by PlatformIO

The focus is to add boards that are officially supported in the Arduino IDE (either by Arduino themselves or through third party board packages via the Additional Boards URL field) and PlatformIO.

I simply will not add boards with unofficial support in both the Arduino IDE or PlatformIO to CRSF for Arduino's Compatibility Table. If the board-in-question is officially supported in both the Arduno IDE and PlatformIO, then I will add it to the Compatibility Table.

Adding boards with unofficial support, or adding boards that are supported in one IDE and not the other creates a level of uncertainty and inconsistency with CRSF for Arduino that I am not willing to take on. The juice is not worth the squeeze.


it is quite trivial to make it work

I understand that it's easy to implement your request. Be that as it may, simplicity versus complexity does not guarantee your request will be fulfilled, especially when there is a valid reason as to why it cannot be fulfilled.


this is how I'm using the Pico W so PlatformIO users do not lose out.

I sympathise greatly with folks that are using RP2040-based development boards and their inability to use them with PlatformIO beyond the two boards that are officially supported. I would add support for every RP2040-based target in a heartbeat if they were officially supported in PlatformIO. However, at this time (and for the forseeable future), they are not; and this is something that is beyond my control. Therefore it is not my call to make.

Rest assured, as soon as PlatformIO officially supports most RP2040-based targets, they will be added to the Compatibility Table here in CRSF for Arduino.

My decision is final, and this is not up for debate.
I am locking this discussion, because it is finished. I am calling it here, and moving on.

Repository owner locked as too heated and limited conversation to collaborators Apr 13, 2024
@ZZ-Cat ZZ-Cat removed the ❌️ I'm not doing this! 🤚😤👎 Yea, nah. That's not going to happen. label Apr 14, 2024
Repository owner unlocked this conversation Apr 14, 2024
@ZZ-Cat ZZ-Cat reopened this Apr 14, 2024
@ZZ-Cat
Copy link
Owner

ZZ-Cat commented Apr 14, 2024

Issue re-opened: Pico and Pico W support can be added after all

Hi @britannio
Apologies for being too abrupt yesterday, and hastily shutting this Issue down.

I was reading through this section of Earle Philhower's Arduino-Pico package, and it turns out I was wrong. My information on why the vast majority of RP2040-based targets couldn't be added to CRSF for Arduino's Compatibility Table was outdated.
Based on the new information I was reading today, it actually can be done. Looks like you and a lot of other folks will get more RP2040 support after all.

So, I have re-opened this issue and removed the "I'm not doing this" label and replaced it with the "In progress" label.

As I am writing this comment, I am currently checking out the Arduino-Pico package, and I am conducting some internal tests in a private branch, to ensure everything is all a-okay. Once the build succeeds, I will publish the branch and attach a Pull Request to it, and go from there.


Update 1723 Hrs NZST

I successfully installed Max Gerhaldt's PlatformIO integration of Earle Philhower's Arduino-Pico package, and did a build test on my local branch. You're in luck, 'cause look... 👇
Screenshot from 2024-04-15 17-18-06

Also, this 👇 was highlighted in my Compatibility Table...
Screenshot from 2024-04-15 17-27-59

Conclusion

Your request has been added to my development pipeline, and it will make it into the upcoming release of Version 1.1.0.
I may require some assistance with testing on the target itself, granted I don't have any RP2040-based targets available on-hand to test on my end.

@ZZ-Cat ZZ-Cat added the ...in progress 🚧 Development on this is in progress label Apr 14, 2024
@ZZ-Cat ZZ-Cat added this to the Version 1.1.0 milestone Apr 14, 2024
@ZZ-Cat ZZ-Cat moved this to Todo in Development Schedule Apr 14, 2024
@ZZ-Cat ZZ-Cat self-assigned this Apr 15, 2024
@ZZ-Cat ZZ-Cat moved this from Todo to In Progress in Development Schedule Apr 15, 2024
@britannio
Copy link
Author

:)

@ZZ-Cat ZZ-Cat linked a pull request Apr 15, 2024 that will close this issue
@ZZ-Cat ZZ-Cat moved this from In Progress to Stalled in Development Schedule Jul 20, 2024
@ZZ-Cat ZZ-Cat removed the ...in progress 🚧 Development on this is in progress label Jul 20, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
✨️ Enhancement ✨️ New feature or request
Projects
Status: On hold
2 participants