As I see on the silk, you use CTS for the init notification. It is more reliable to use RTS, or both, if possible. On my adapter I played with both and ended up with RTS. Both is complicated, since max232 has not enough inputs.
Well that answers why you used RTS, I was wondering why you did that.
I'm a little confused about this though "max232 has not enough inputs."
RTS is sent out from the max232, so can't I just plug into pin 10 of the MAX232 from the pico?
Or have I read a datasheet wrong? It wouldn't be the first time.
PS: I know that pin 2 could be wired up wrong there. Some reference schematics say to wire it that way and the TI one says to have a cap to ground. I used a cap to VCC there because it worked on my breadboard.
Well I forgot already the details, even if I open sourced it last year, I designed it years ago The max232 has two inputs and two outputs. If I remember right, I used RTS and RX for input and TX for output. The RX is not used on my adapter yet, but I wired it just in case, if I want to transfer settings towards the adapter, some mouse drivers use it to set the resolution, whatsoever. If you don't want to use it at all, then you can use the input for CTS/DTR etc., but actually all you really need is RTS and TX. If I remember right, you don't need CTS at all.
May be this helps: https://linux.die.net/man/4/mouse
Okay, I was looking into this trying to figure out what was going on and I think I figured out the source of the issue.
I based the names on the silkscreen on the pin out of the female DB9. So we both used pin 7 for init but you called it RTS I assume from the doc you linked but I called CTS based on the name of the pin of the female port.
I should probably change that to reflect where the pin goes on the serial controller itself.
I think I will wire up pin 8 just to have it, I already made room for it on the PCB and it could be handy in the future.