Coder Social home page Coder Social logo

juan518munoz / picoswitch-wirelessgamepadadapter Goto Github PK

View Code? Open in Web Editor NEW
29.0 29.0 3.0 5.59 MB

Use any bluetooth gamepad on your Nintendo Switch with a Raspberry Pi Pico W.

License: Apache License 2.0

C 85.26% CMake 12.83% Makefile 1.91%
bluetooth gamepad nintendo pico-sdk pico-w playstation raspberry rp2040 xbox

picoswitch-wirelessgamepadadapter's People

Contributors

juan518munoz avatar lohengrin avatar tylerselden avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

picoswitch-wirelessgamepadadapter's Issues

Dualshock 3 pairing

To retrieve the bluetooth mac address first flash

https://micropython.org/download/RPI_PICO_W/RPI_PICO_W-latest.uf2

then open Thonny and run the following code

import bluetooth

ble = bluetooth.BLE()
ble.active(True)

print('Getting MAC/Ethernet Address for this device.')

# This returns a tuple with an index and the MAC address bytes
index, mac_bytes = ble.config('mac')
# each MAC address is 6 bytes or 48 bits
print("Hex byte array:", mac_bytes, 'length:', len(mac_bytes))

# Format the MAC address in the standard notation
formatted_mac = ':'.join(['{:02x}'.format(byte) for byte in mac_bytes])
print("MAC Address:", formatted_mac)

Make update error

The make file has a fatal error.
Maybe this has something to do with a dependency or the missing Pico SDK?

image

Is the adapter cannot remember registered gamepads?

Each time, when I connect the Pico Board to USB it goes to "scanning for the gamepad" mode and I need to sync gamepads each time I am plug it in. Is it normal behaviour? Can the Pico adapter remember the already synchronized gamepad?

Not recognized as Switch Pro controller

There is no easy way to remap in the code without compiling and no WebUI to change anything.
So it would be best to output as a real Switch Pro controller.

As my real Switch Pro controller is in repair now I investigated with an 8bitdo Pro 2 Adapter which also outputs as a real Switch Pro controller, see here:

wiredopposite/OGX-Mini#5 (comment)

I hope the code can be adapted to have real Switch Pro output, as after all PicoSwitch is an adapter to work on a Switch.

311896486-39541a05-6089-43ed-ac52-9b89e27d54c0

DS5 mapping issue

PS5 controller doens't show any output when pressing circle or r1 buttons when testing on hardwaretester from an Android phone, but not when trying from a PC.

Need to investigate if issue persists on a Nintendo Switch.

XBOX One controller button mapping is backwards.

XBOX One controller button mapping is backwards.

A is B and B is A, X is Y and Y is X.

Apart from this it's not very intuitive on when/how to get a controller to connect to the device. Is it possible to enable the LED to "flash" or indicate when it's connecting a device? I am thinking of installing a blue LED on the GPIO and having it enabled for connections.

Gamepad support

Comment here all issues related to a specific gamepad like wrong mapping or a button not being detected.

If you'd like to add a controller to the verified support list, submit a video like this one testing all buttons.

Dualshock 4 v2 random timeout

Sometimes I can play 3 mins sometimes 10 mins.
With my Xbox Elite 2 I can play for 50+ mins and no problems.

It also has quite some weird behavior if you press the home button. It vibrates and changes color.

20240324_233647.mp4
20240324_233758.mp4

PS3 output

Would it be possible to have Playstation 3 output since it is also unencrypted just like the Switch?

See
https://rb4.app/

It has UF2 firmware but not for all the sticks I guess.

Pi Zero W

Hello guys, this is really awesome. I have question, can this run on Raspberry Pi Zero W ?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.