I encountered a similar problem, but solved it with USB keyboards / keypads instead. I managed to get a low-speed USB host working on ESP32. Now I use these instead as much better build quality is available, although they are notably more expensive.
One thing that caught me off guard was that USB keyboard scancodes were different from PS/2. Previously I had tackled the issue using PS/2 keypads and a chip with some firmware that translated the scancodes to 5V serial. This was neat, but sourcing old keyboards eventually became a pain.
I encountered a similar problem, but solved it with USB keyboards / keypads instead. I managed to get a low-speed USB host working on ESP32. Now I use these instead as much better build quality is available, although they are notably more expensive.
One thing that caught me off guard was that USB keyboard scancodes were different from PS/2. Previously I had tackled the issue using PS/2 keypads and a chip with some firmware that translated the scancodes to 5V serial. This was neat, but sourcing old keyboards eventually became a pain.