Of course this is nothing unique, but I want to share my learning curve.
The aim of the project is to create a custom macro / shortcut / media keyboard. Comparing the microcontrollers available on the market, I chose the Raspberry Pi Pico because it is affordable and HID support is possible. I initially tried to write code in MicroPython in the Thonny IDE, but could not find a MicroPython compatible HID library. Then I tried the CircuitPython language in Thonny IDE - this option is acceptable with some drawbacks:
- when operating in HID mode, the Raspberry Pi Pico is also visible as a USB drive (not a big problem, but not a nice solution either);
- with my basic programming skills, I did not find an opportunity to use the RP2040 multicore option (to be honest, it is not necessary for a macro keyboard, but if there was an opportunity, it could be used in the future).
Since the Arduino also supports the RP2040 microcontroller, and I have some experience working with the Arduino Uno - I decided to try the Arduino IDE. First I tried Arduino IDE 1.8, but once again I encountered the lack of a HID library for the Pi Pico. However, the Arduino IDE 2.0 beta has Pi Pico HID support, but the disadvantage is that the Pi Pico built-in pulldown resistors does not work. With exactly the same Pi Pico board using the Python language the built-in pulldown resistors work as expected. In my prototype this problem was solved by adding resistors outside the Pi Pico board, but I hope that in the future in the Arduino IDE 2.0 this problem will be solved. By the way, INPUT_PULLDOWN does not issue a compilation error such as if it is replaced with INPUT_WHATSOEVER.
Comments