Skip to content

Conversation

@xouillet
Copy link

@xouillet xouillet commented May 14, 2023

This MR adds support of original Sidewinder Gamepad via its DA-15 port.

Microsoft Sidewinder Gamepad

The DA-15 5V pins (1, 8, 9 and 15) and GND (4, 5 and 12) can be directly connected to the RP2040 +5V and GND pins.

The DA-15 ports pins 2, 3 and 7 should be mapped on RP2040 GPIOs, and set in the web configurator.

Related WebConfigurator MR: OpenStickCommunity/WebConfigurator#67

@Fortinbra
Copy link
Contributor

Does this allow remapping the buttons themselves, or only the pins on the connector?

@xouillet
Copy link
Author

The mapping is coded in src/addons/sidewindergp.cpp, the web configurator only allow pins configuration.

@arntsonl
Copy link
Contributor

Do you have any instructions, schematics, or boards we can buy to test this support?

@arntsonl
Copy link
Contributor

Also you'll have to pull your WebConfigurator changes into www after merging main in. We got rid of WebConfigurator in favor of www commits going directly to the PR. This makes it WAY less confusing, sorry about the inconvenient timing!

@xouillet
Copy link
Author

Do you have any instructions, schematics, or boards we can buy to test this support?

Instructions are described in the MR description and the documentation, basically you have to connect +5V, GND and 3 pins of DB-15 to RP2040 GPIOs.

@xouillet
Copy link
Author

Also you'll have to pull your WebConfigurator changes into www after merging main in. We got rid of WebConfigurator in favor of www commits going directly to the PR. This makes it WAY less confusing, sorry about the inconvenient timing!

Done

@TheTrainGoes
Copy link
Contributor

Hi @xouillet ,

Do you have schematics for the DB-15 to RP2040 or anything that others can use to build this?

We are generally reluctant to merge things that none of us have and therefor cannot maintain or test releases on.

@arntsonl
Copy link
Contributor

None of the devs on this project have a Sidewinder or a board that can connect DA-15 to RP2040. Going forward, we will want to make sure that all PR submissions to main can be tested by one of the main devs on the team.

@arntsonl arntsonl closed this May 25, 2023
@RobertDaleSmith
Copy link
Contributor

I don't have the bandwidth at the moment but in the future I would like to circle back to this as I want to create a bunch of controller adapters.. including a DB-15 gamepad adapter to USB.

@xouillet Can the sidwinder be powered by 3.3v and in return communicate in 3.3v for the gpio pins to be within operating range without level shifters? Either way it shouldn't be too hard to make a board like the one I did for the SNESpad addon.

-> https://www.flux.ai/robertdalesmith/snes-controller-arduino-nano-shield

@xouillet
Copy link
Author

The sidewinder needs to be powered by +5V, as this is standard DA-15 gameport mapping (cf. https://en.wikipedia.org/wiki/Game_port). However, GPIO communication can happen in 3.3V, so no level shifter are required.

I've made myself a very simple adapter with only a female DA-15 and a Waveshare RP2040 Zero and no other components with the mapping described both in this MR and in the documentation file of the PR. I could draw a schematic for this but it will be dead simple.

Anyway, I may continue rebasing this patch on my fork for my personal use as this PR is refused...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants