VOGONS


USB to Serial Mouse using the Pi Pico!

Topic actions

Reply 220 of 230, by Sphere478

User metadata
Rank l33t++
Rank
l33t++

Oh, this is really exciting! Will the one you sent me be able to be updated for this?

Sphere's PCB projects.
-
Sphere’s socket 5/7 cpu collection.
-
SUCCESSFUL K6-2+ to K6-3+ Full Cache Enable Mod
-
Tyan S1564S to S1564D single to dual processor conversion (also s1563 and s1562)

Reply 221 of 230, by CalamityLime

User metadata
Rank Member
Rank
Member
Sphere478 wrote on 2023-01-08, 16:44:

Oh, this is really exciting! Will the one you sent me be able to be updated for this?

Yeah.
You'll have to put the firmware on it yourself since i left it blank. It's as easy and programming a pi pico.

Plug into the Pico's micro-usb while holding the boolsel button on the pico itself and it'll appear as a USB thumb drive. Drag a binary blob to it and it'll reboot.

I'm leaving a Dev build on the dev branch of the USB-2-232-kbd that can be used for the moment.

I did get the buttons doing something.
Ive been testing it with an Xbox and PS1 classic controller. PS4 should work but i don't have one to test.

I'm not sure how to let people map the keyboard buttons. Every thing i think of have a flaw thats a deal breaker.

Like for example.
The terminal, go into terminal, go to controller go to remap and be presented with a very bare bones pad layout.
Select your button and then what?

If you type a key then the terminal has just an ASCII that could be glitched based on your terminal software and id need a messive look up table with region specific options. That's a lot finicky work i don't want to do.

Or i could limit it to the keyboard connected to the adapter but then it would have to be the keyboard connected to the adapter.
Core 1 would need to tell core 0 to intercept new data from the USB keyboard and send it back to core 1 which would be a pain to set up right but you wouldn't be able to automate it with a bat file or anything, it would be fairly limiting.

Or I'd have to tell to the user to enter the hid number of the key they want. USB hid number since thats the easiest to type in but the user will need a look up table and all lookup tables are in hex and i have the terminal set up to reject everything but number to sidestep any regioning nonsense so the user would need to convert the hex to Dec, type in the Dec number and hope for the best.
Upside: every key would be available, including keys you can't type in, like power or consumer keys. That could open the door to a missing key keypad for someone who cares enough about that.

Downside: it's such a obscure way to go set your keymap that no-one would bother.

Or it could be a hard coded thing that you could configure on compliation but that's not going to work.

Then there's also the question of how many people care about the controller in the first place? So how much effort is it worth putting into it.

So yeah. I'd lean toward using the USB hid codes since that is the easiest to implement and the people who actually use controllers for dos games should be capable of jumping through some hoops.

Not to mention that gameport is a thing.
I did look into a USB to gameport, the digital pots that the gameport would need are expensive enough for me to say "spin it off into its own PCB"
Digital pots are expensive and complicated little things. They are basically a shift register that's controlling a big series of fets that gates a resistor network. Fairly simple on paper but when you think that there's 256 fets gating a resistor network, that would be a big PCB to make without a digital pot chip.

There was one circuit i stumbled across where the maker used an opamp but i don't think that would be very compatible.

Be Happy, it's only going to get worse.
- Projects
Limes Strange 3D models
USB-2-232

Reply 222 of 230, by usuari

User metadata
Rank Newbie
Rank
Newbie

Hello! Didn't realise there were so many projects for USB HID! The combo AT-serial is what I'm looking for.
I'm using prebuild modules from aliexpres, all tuck together in a internal card.

zzz.png
Filename
zzz.png
File size
1.76 MiB
Views
894 views
File license
Fair use/fair dealing exception

So, I began with user 'No0ne' project, that uses a bi-directional level shifter for the AT/PS2. It works fine. Recently I build your Mouse adapter, and also works fine. Unfortunately, I don't know much about coding, and I can't get to work both at the same time. Is it too complicated to adapt your USB-2-232-KBD to use a level shifter? Any help would be apreciated.

Reply 223 of 230, by CalamityLime

User metadata
Rank Member
Rank
Member
usuari wrote on 2023-04-25, 18:47:
Hello! Didn't realise there were so many projects for USB HID! The combo AT-serial is what I'm looking for. I'm using prebuild […]
Show full quote

Hello! Didn't realise there were so many projects for USB HID! The combo AT-serial is what I'm looking for.
I'm using prebuild modules from aliexpres, all tuck together in a internal card.

zzz.png

So, I began with user 'No0ne' project, that uses a bi-directional level shifter for the AT/PS2. It works fine. Recently I build your Mouse adapter, and also works fine. Unfortunately, I don't know much about coding, and I can't get to work both at the same time. Is it too complicated to adapt your USB-2-232-KBD to use a level shifter? Any help would be apreciated.

Hey there, really cool assembly of parts.

I thought about making a (bidirectional) level shifter version of dev PCB, the core of the AT keyboard side of things is just a (heavily) modified ps2dev lib from arduino which uses 2 pins from a 5 v arduino. I extended that out to use 4 gpio pins in the name of being the most compatible so it mimics closely to a real decent quality keyboard. My thinking was that maybe older boards might struggle with just a level shifter.

Modifying the code it should be doable to mod back in the use of a level shifter or without modifying the code, a level shifter with some npn's or nchannel mosfets would work too. Have a look at the schematic and it might help.
There is a level shifter (unidirectional) connected to the clock and data lines with the clock and data lines being pulled low with npn's to talk to the computer.
I don't know how much this all helps tbh.

Though I have been tempted to make a really skimmed down board without even a max232 since the serial port should work at 5v logic which (im pretty sure) was used by ps/2 mice that also supported rs232.
The usb-2-232-kbd was never fully finished, it works just fine with just at/ps2 keyboard and serial mouse but XT was never added and there is the odd few bugs that wore me out trying to fix them.
I would like to finish it but I've just been so damn busy this year, I haven't had the time to really code and debug this like I used to.

-Lime

Be Happy, it's only going to get worse.
- Projects
Limes Strange 3D models
USB-2-232

Reply 224 of 230, by CalamityLime

User metadata
Rank Member
Rank
Member

Hey everyone

A fellow Vogons member named Darmok has contacted me with information on how to modify mouse drivers so win3.1 and 9X can support higher baud rates.
I've been missing around with that information trying things out but thanks to several hardware issues there were delays.

But using what he told me I got higher baud rates working on both windows 3.1 and windows 95 with modified drivers. So thanks to @Darmok (is that how a mention works on this website?) and hopefully I can put together a useful driver pack for people to use.

I hope thats interesting to someone out there.

Be Happy, it's only going to get worse.
- Projects
Limes Strange 3D models
USB-2-232

Reply 226 of 230, by CalamityLime

User metadata
Rank Member
Rank
Member

Here we go.
Version one of the modded drivers. I haven't tested win98se and winme yet but they should work. The 19200 speed drivers should work with matze's ps/2 to serial adapter in high speed mode but I haven't tested that yet. Plan to though.
Really not much point in going higher than 2400 baud with the usb-2-232 adapter but up to you. Once they are all tested I'll dump them on the github

Attachments

Be Happy, it's only going to get worse.
- Projects
Limes Strange 3D models
USB-2-232

Reply 227 of 230, by CalamityLime

User metadata
Rank Member
Rank
Member

reupload of the intellipoint drivers since the zip didn't open for someone.

Also, found another variant of the vmouse.vxd driver for win98se which is included in some updates that are not in the iso's
But I can confirm that the modded drivers work for win98se, just winme left to confirm.

IMG_20230429_210701137.jpg
Filename
IMG_20230429_210701137.jpg
File size
85.96 KiB
Views
820 views
File license
CC-BY-4.0

Thanks

Attachments

Be Happy, it's only going to get worse.
- Projects
Limes Strange 3D models
USB-2-232

Reply 228 of 230, by CalamityLime

User metadata
Rank Member
Rank
Member

So here we have 4800 baud @ 7n2 (important because that's slower than 7n1) where we're getting 160hz and your average usb mouse caps out at 125hz. The adapter can take higher speed mouse, the image above was done with a logitech 502 hero set to 500hz. My adapter is running debug firmware with all the debug stuff enabled which is probably why it gave a very uneven rate at those higher speeds.

Still. I don't feel there is a point in going higher than 2400 baud if you're just using a normal usb mouse.

Attachments

Be Happy, it's only going to get worse.
- Projects
Limes Strange 3D models
USB-2-232

Reply 230 of 230, by usuari

User metadata
Rank Newbie
Rank
Newbie

Thanks @CalamityLime. I'll see what I can do when I get more time. By the way, did a quick test with your drivers; win3.1 working fine, win95A working with the Intellipoint. It's surreal how smooth everything is compared to the dirty ball mouse.