I'm working on a synthesizer with multiple functionalities (OLED I2C screen, encoder, audio, midi input, several keys input) on a Xiao RP2040.
I wanted to add a PS2 keyboard input.
RP2040 GPIO are 3.3V logic voltage, so I started by adding a voltage divider on the PS2 keyboard clock and data (R1 = 15K, R2 = 33K) and it worked but the keyboard LEDs don't light when pressing corresponding keys. I learned that the PS2 protocol is bidirectional so it needs a bidirectional level shifter with MOSFETs.
The LEDs seem to work (except software library problems) and other periphericals also except for my resistor ladder with 7 buttons inputs. Only the 3 first buttons work.
What I don't understand is before, with the voltage divider, everything worked and now but the level shifter, all voltage seems OK (resistor ladder is 3.2V.)
I think there is something I don't know about the relation between current and voltage happening.
Schematic: