Jump to content

Raspberry Pi Pico $4 controller for USB interface


Sprool

Recommended Posts

I wondered if anyone had made use of the new Raspberry Pi Pico controller yet as USB controller for a button box? I used a teensy board in the past but would be interested in a new custom build, but I'd need some support when it comes to the coding, for switches and rotary controllers.

  • Like 1
Link to comment
Share on other sites

This looks interesting... especially considering: the price, and it's a Pi product with that level of support!

 

Been thinking for some time, it's nice they are making more powerful Pi's, but making tiny and super-cheap Pi's is a really good thing IMO. 

 

I'm curious if it'll perhaps displace the Arduino Pro Micro for such Human Input Device projects (HID).

 

 

Link to comment
Share on other sites

If its easy to program, the big advantage apart from it being much cheaper is the pico has many more pins available so you can add more rotary encoders up to the Windows limit of 32 switches.

/edit: not easy for me to program, it prefers micropython and I have zero experience with that 🙂


Edited by Sprool
Link to comment
Share on other sites

  • 2 weeks later...

Took me a lot of digging around and hours of frustration to find the micropython code and circuitpython dont yet support rotary encoder programming on the pico yet, and getting it running in C/C++ with the SDK is a real pain, even for the experienced. (which I'm not). Python on other boards doesnt run like micropyuthon on the pico, it seems. Just not been out long enough yet to get better user support and exampe apps running.

Link to comment
Share on other sites

Ive shelved the pico HID controller for now, got another Teensy LC which only took me an hour to get reprogrammed and wired up as controller for the button matrix + rotaries. 

Not enough clarity for me with the pico at the moment, prob due to my lack of programming knowledge.

After severaI hours I could get the rotaries working in circuitpython but not the button matrix or the usb interface. 

After several more hours I could get the button matrix working in Micropython but notht erotary encoders or the USB interface.

I took ages to get C implemented but thats also lacking some libraries at the moment I need - like USB, Joystock, Rotary.

I'll come back to it when theres a few more people who can share a similar working example with me.

Link to comment
Share on other sites

  • 8 months later...
hace 15 horas, No1sonuk dijo:

Are they THAT much better than an Arduino Pro Micro?

Arduino Pro Micro is able to do the job! it allow us to create any button box. But, the RPi Pico it can also do this but furthermore it can simultaneously do much more other stuff, as manage displays, servos, and why not some VGA screens. This is because it is dual core, higher clock speed, bigger amount of memory, the ability to program its I/O pins, etc.

 

  • Like 1
Link to comment
Share on other sites

  • 3 weeks later...

 

Ok so I'm slightly confused... is the Pico able to use any of the code that has been written for Arduinos for the last many years?!?  

I used to think it required different programming, maybe a different language, but... 

 

I mean, if it can use the same code as all the Arduino projects, with more computing on two cores, for $4 usd... in my area Pro Micros sell for quite a bit more than that. Not sure I'd call  it a gamechanger, but certainly a low cost improvement, at least at second glance anyways

 

Link to comment
Share on other sites

RpiPico can be programmed using the same Arduino IDE environment, the C/C++ code can be directly compiled.

There are many web pages that explain how to configure the IDE, here you are one

https://www.techtonions.com/programming-pi-pico-using-arduino-ide/


Generic libraries should be able to be used with the RpiPico, as on others platforms (ESP32, STM, ...)

  • Thanks 1
Link to comment
Share on other sites

  • 1 year later...
14 minutes ago, Диванный пилот said:

Hi, does anybody know, will DCS-BIOS work with a Pi Pico on not?

I doubt it.  The code is written for Arduinos.

Having said that, the Flightpanels fork can run Streamdecks, so I don't know for sure.

Link to comment
Share on other sites

29 минут назад, No1sonuk сказал:

I doubt it.  The code is written for Arduinos.

Having said that, the Flightpanels fork can run Streamdecks, so I don't know for sure.

From what I red about pi pico, it can be coded on C++ via Arduino IDE (IDE has official library to maintain this type of boards), so maybe it will work. Wander, if someone has experience in this.

Link to comment
Share on other sites

Yes, you can work with the Pi Pico using the standard USB interface to get the data from DCS-Bios. The IRQ_Serial acceleration does not work with the Pi Pico as it is hardware dependant, but doesn't matter, the Pi Pico is quite fast.

Just compile your program using the Arduino IDE and download it to the Pi Pico.

You can also work with any other microcontroller, as it is the ESP32. However, with this microcontroller there is a problem related to the Servo library. The solution is easy, just modify change the Servos.h library, which is present in the DCS-Bios/internal, to use any other  ESP32 servo library.

In this link you can find how to work with ESP8266 or ESP32 boards and DCS-Bios

https://github.com/pavidovich/dcs-bios-arduino-library

  • Like 1
  • Thanks 1
Link to comment
Share on other sites

В 08.01.2023 в 23:27, Vinc_Vega сказал:

The Pico works with the Arduino IDE. But if you want to have a fast chip set, why don't use an ESP32 dev board?

Regards, Vinc

In the Pico I'm interested mostly in it's memory size, which potentially can store a bigger code for more accurate gauge position export into digital displays.

В 09.01.2023 в 22:07, pavidovich сказал:

Yes, you can work with the Pi Pico using the standard USB interface to get the data from DCS-Bios. The IRQ_Serial acceleration does not work with the Pi Pico as it is hardware dependant, but doesn't matter, the Pi Pico is quite fast.

Just compile your program using the Arduino IDE and download it to the Pi Pico.

You can also work with any other microcontroller, as it is the ESP32. However, with this microcontroller there is a problem related to the Servo library. The solution is easy, just modify change the Servos.h library, which is present in the DCS-Bios/internal, to use any other  ESP32 servo library.

In this link you can find how to work with ESP8266 or ESP32 boards and DCS-Bios

https://github.com/pavidovich/dcs-bios-arduino-library

Thank you! I think I bye and try with one.

  • Thanks 1
Link to comment
Share on other sites

On 1/10/2023 at 9:07 PM, Диванный пилот said:

In the Pico I'm interested mostly in it's memory size, which potentially can store a bigger code for more accurate gauge position export into digital displays.

Thank you! I think I bye and try with one.

Well, the ESP32 should have almost twice the memory capacity of the Pico:

Pico: 264kB RAM / 2 MB Flash

ESP32: 520kB RAM / 4 MB Flash


Regards, Vinc

Regards, Vinc

real life: Royal Bavarian Airforce

online: VJS-GermanKnights.de

[sIGPIC][/sIGPIC]

Link to comment
Share on other sites

5 часов назад, Vinc_Vega сказал:

Well, the ESP32 should have almost twice the memory capacity of the Pico:

Pico: 264kB RAM / 2 MB Flash

ESP32: 520kB RAM / 4 MB Flash


Regards, Vinc

Ah, ok. I didn't know about ESP32 until now, I compared Pico's memory size to Arduino, not to ESP32. Can you please give link to an example board?

Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...