I literally just learned about the RPi Pico. I did a few quick searches around the forums and am finding surprisingly little about it.
Looks like an interesting little board.
What is currently the most readily available keyboard encoder?
I assume you ask this because you're planning to roll-your-own instead of buying an I-Pac/A-Pac/U-HID, right?
The RasPi Pico is widely available and reasonably priced, but I'm not sure what kind of encoder firmwares have been developed for that board.
ATmega32u4 boards like the Arduino Pro Micro, Arduino Micro, Arduino Leonardo, Itsy Bitsy 32u4, etc. are inexpensive and easy to make into HID devices.
*** Avoid 328P boards like the Pro Mini since they are almost impossible to make into HID devices.
***The Arduino encoder ecosystem is pretty mature and there are quite a few good firmwares to choose from including:
-
DaemonBite Arcade Encoder-
KADE miniArcade 2.0- Baritonomarchetto's
ArcadeHID sketches as covered in
this instructableHow about doing analog inputs?
Both the RasPi Pico and 32u4 Arduino boards can do analog inputs as a HID gamepad.
The RasPi Pico has 3 Analog to Digital Converter (ADC) inputs. (dark green)
- It's enough for many setups, but not for a twin analog stick game like Cyber Sled.
A 32u4 Arduino board like the Micro has up to 12 ADC inputs.
- Some boards like the Pro Micro don't have connections for all of the 32u4 inputs.
I've got a couple projects that are kicking around and the Pico looks to be a possible solution, but I don't wanna re-engineer the wheel if there is an out-of-the box solution that is readily available.
You can probably find a 32u4 encoder firmware that meets your needs
or you can combine baritonomarchetto's
ArcadeHID sketches to make a custom composite sketch that is both a keyboard for keystrokes and a gamepad for the analog inputs.
- For example, Vee21 adapted Baritonomarchetto's analog firmware to add a 6-speed shifter in
this thread.
As always, there are thousands of possibilities so the details for your particular applications matter.
Run each application through the design process in the
What type of build meets my needs? section of the FAQ.
- Good info in steps 2 (game list) and 4 (controls/inputs list) lets you choose the right encoder in step 7.
Scott