|
Forum Index : Microcontroller and PC projects : HID-Injector
| Author | Message | ||||
| Arne Regular Member Joined: 05/01/2025 Location: GermanyPosts: 67 |
Hi, What is it ? HID Injector is a programable RP2040 firmware. Basically it allows to simulate different USB devices, but can also be used for control and monitoring purposes. Control of its functions can be performed thru different input channels. The design is a proof of concept only, but may be interesting or useful for someone. It was programmed with the help of different AI’s thru Duck Duck go browser (Duck AI.) mainly for the use with MMBasic. Here a use case: My second prototype(Injector-stick) combines a RP2040 and a Pico W. On the RP2040 the HID injector firmware is installed, control is performed via the Pico W with MMBasic thru an I2C interface.Basically I use this combination to transfer text data wirelessly via UDP from my iPad to any USB-Picomite. For this purposes a Pythonista script is installed on the iPad. It allows to transfer clipboard data, and can act as a keyboard and macro-pad. ![]() The iPad / Injector-stick combination can also be used direct on any equipment with USB-port (PC/Mac etc). No additional drivers are needed. For further information to HID-injector see "Help.txt". Please notice that only DE and US keyboard can be simulated.Default is a German keyboard. Thru CDC or the other interfaces of HID-injector it is easy to switch permanent to US keyboard simulation. Between the control commands a pause of 30-60 ms (depend on the speed of data-transfer/receiver/USB-interface; e.g. IR is slower) shall be implemented. Due to the different functions and interfaces of HID-injector it will be possible to make sophisticated HID-devices with special control and feedback functionalities… HID_Injector.zip Have fun |
||||
| pwillard Guru Joined: 07/06/2022 Location: United StatesPosts: 347 |
That's very cool and, in my view, very useful. Thanks for sharing. |
||||
| tom_g Newbie Joined: 21/02/2023 Location: SwitzerlandPosts: 32 |
Arne, tnx a lot for sharing this handy tool ! Which is the PicoMite version this special FW is based upon ? Thanks, have good week, best from Thomas PS: I think at first glance I misunderstood the concept, as this firmware is not freely programmable in MMBasic but rather commanded by UART, I2C and by GPIO and therefore needs an application coprocessor, which can be another PicoMite or any other device which can send the commands or set/read pins am I right ? Edited 2026-09-28 04:07 by tom_g |
||||
| Arne Regular Member Joined: 05/01/2025 Location: GermanyPosts: 67 |
Hi Thomas, The firmware is programmed in C and compiled for the Pico2040. You are right HID-Injector needs an application coprocessor, which can be another PicoMite or any other device which can send the commands to use the functions of it. The big advantage is that all input channels work in parallel and the user can decide which and how to use it. So it is possible to set and read GPIOs, control WS2812 LEDs or servos e.g. with a terminal program direct via CDC and use HID-Injector in this case as a controller only. Have a nice day, Arne |
||||
| mozzie Guru Joined: 15/06/2020 Location: AustraliaPosts: 509 |
G'day Arne, Can I add my thanks for posting your HID Injector project. I had skimmed over the post initially but now its loaded up and started testing I have realised what HID Injector can do and its very impressive indeed The fact we also have CDC control for feedback etc adds a whole other dimension. HID Remapper by Jacek Fedorynski has proved useful, but with serial control available HID Injector looks to be far more flexible. I had requested USB-HID keyboard / mouse emulation in MMbasic in the past but sadly this was declined, to be able to do the whole lot in MMbasic would be great, but considering the price of Pico / Pico-Zero using 2 is no real problem anyway. Is the PID/VID for the CDC custom or from a pool, on WIN7 it couldn't find a driver so a custom driver similar to the Pico CDC had to be written. Many thanks once again Regards, Lyle. |
||||
| Arne Regular Member Joined: 05/01/2025 Location: GermanyPosts: 67 |
Hello Lyle, I use HID-Injector with CDC on windows XP and windows 7. First I had to install the following driver: cdc_xp.inf.zip After installation I see the additional comport (e.g. COM5). With HTerm it can be selected, but in the 1st version of HID-Injector also DTR must be activated, otherwise HID-Injector does not accept/send any data. Meanwhile I compiled a new version which doesn’t need DTR anymore : hid_i2c_inject.uf2.zip Greetings Arne |
||||
| The Back Shed's forum code is written, and hosted, in Australia. | © JAQ Software 2026 |