From 7bfc54c85eab3d77bb19bba1e42c5c9152a63bdd Mon Sep 17 00:00:00 2001 From: dekunukem Date: Fri, 18 Mar 2022 23:57:15 +0000 Subject: [PATCH] fixed switch pro controller button not holding down, added compatibility matrix, updated doc --- getting_started.md | 77 ++++++++++++++++---------------- photos/matrix.png | Bin 0 -> 52538 bytes user_program/login.sh | 2 +- user_program/sync.sh | 4 +- user_program/usb4vc_shared.py | 2 +- user_program/usb4vc_usb_scan.py | 5 ++- 6 files changed, 47 insertions(+), 43 deletions(-) create mode 100644 photos/matrix.png diff --git a/getting_started.md b/getting_started.md index b75605c..99fae97 100644 --- a/getting_started.md +++ b/getting_started.md @@ -8,6 +8,16 @@ Thank you very much for beta testing USB4VC! Here is a short guide on getting st Please note that the code is most likely NOT 100% bug free at the moment, so if you run into any issues, [do get in touch](#questions-or-comments) so I can try fix it! I have also compiled a list of [known issues](#known-issues), with comments and remedies. +## Pick a Raspberry Pi + +* USB4VC is designed for **Raspberry Pi 1/2/3/4 Model B**. + +* Any RPi with a **40-pin header** *should* work, although **Model B/B+** is preferred. + +* No need to get the latest model, even the earliest RPi B+ is plenty fast enough. + +![Alt text](photos/rpis.jpeg) + ## Prepare SD card It's a good idea to **burn an SD card with the latest updates** before using. @@ -34,16 +44,6 @@ Check the cable too! Cheap ones tends to have unreliable connections and large v It's a good idea to make sure your Raspberry Pi works first. -USB4VC is designed for **Raspberry Pi 1/2/3/4 Model B**. - -* No need to get the latest model, even the earliest RPi B+ is plenty fast enough. - -* Older Pis might not have built-in Bluetooth. So if you want BT, a USB dongle is needed. - -* Pi Zeros *might* work, but you need to solder a male header, and use a USB hub. - -![Alt text](photos/rpis.jpeg) - Insert SD card in Raspberry Pi, and hook it up to a monitor. No need for anything else. Power on, and it should boot and execute the program, showing a bunch of text. @@ -152,34 +152,43 @@ With protocol selected, and everything connected, time to power on the computer! If everything goes well, you should be able to use it as normal, now with USB inputs! -Please do keep reading for more information though 😅! +Please **do keep reading** for more information though 😅! ![Alt text](photos/guide.gif) ## Using Gamepads -For best results, please use a **Xbox One/Xbox 360 controller**. Those are the only kinds I have, so I used them for development. Other controllers might be buggy in button and axes mapping. I'll try to borrow a few more before the public release. +Currently, USB4VC officially supports the following controllers: -* The easiest way is plug it in via a USB cable, and it should just work. +* Xbox 360 / Xbox One / Xbox Series X -* You can also try to pairing it with Bluetooth. If keeps failing, you might need to [update the controller in Windows 10](photos/xbupdate.png), [source here](https://atar-axis.github.io/xpadneo/). +* PlayStation 4 / PlayStation 5 -Once connected, you can enable `15-Pin Gamepad` Protocol on IBM PC Card, and it should behave like a generic gamepad with **4 buttons and 4 analog axes**. Default mapping is: +In my testing, gamepad compatibility seems to depends on the RPi models: -| XBox Controller | 15-Pin Gamepad | -|-----------------|-------------------------| -| A | Button 1 | -| B | Button 3 | -| X | Button 2 | -| Y | Button 4 | -| LB | Button 1 | -| RB | Button 2 | -| Left Stick | Joystick 1 | -| Right Stick | Joystick 2 | -| D-pad | Joystick 1 | -| Trigger | Joystick 2 Vertical Axis | -| Menu Button | Esc Key | -| View Button | Enter Key | +![Alt text](photos/matrix.png) + +* Raspberry Pi 3 Model B seems to be the most compatible. + +* The easiest way is using a USB cable, and it should just work. + +* If pairing fails, remove the BT device in the menu, reboot USB4VC, and try again. + +Once connected, you can enable `15-Pin Gamepad` Protocol on IBM PC Card, and it should behave like a generic gamepad with **4 buttons and 4 analog axes**. + +With **officially supported controllers**, the mapping is: + +* 4 Face buttons to 4 Gameport Gamepad buttons + +* Left and right trigger to Gameport Gamepad button 1 & 2. + +* Left Stick to Gameport Gamepad Joystick 1. + +* Right Stick to Gameport Gamepad Joystick 2. + +* Left & Right Analog Triggers to Joystick 2 Y Axis. + +Unsupported USB controllers might still work, but the mapping might be a bit wonky. ## Joycheck DOS Program @@ -211,19 +220,13 @@ When the RPi is off, you can press `POWER ON` button to turn it back on. Here are a couple of bugs and issues that I am aware of, and the corresponding comments and remedies. -#### Screw head is slightly too tall on the bottom plate, making the anti-slip pad not as effective. - -* Will switch to a flatter screw for public release. - -* Try double-up the anti-slip pads, or use a thicker one. - #### Boot time can be faster * Currently it takes about 15 seconds to boot with a decent SD card. * Might look into disabling some services to speed it up. -* Would be great to get it under 10 seconds with the help of RPi experts. +* [Let me know](#questions-or-comments) if you'd like to help! #### 15-Pin Gameport Power Backfeeding @@ -233,8 +236,6 @@ Here are a couple of bugs and issues that I am aware of, and the corresponding c * Make sure to power on USB4VC before the computer. (this is what you should do anyway) -* I might add a diode in the production run. - #### ADB Collision Resolution * ADB collision resolution has not been fully implemented yet. diff --git a/photos/matrix.png b/photos/matrix.png new file mode 100644 index 0000000000000000000000000000000000000000..1ba0ec5895712584863fd5196f627ff72e7a0740 GIT binary patch literal 52538 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 I#^m?^0{w