HiddenRamblings / TagMo

GNU General Public License v3.0
3k stars 385 forks source link

[Feature]: Support for NFC writing through Joy-Con Bluetooth #559

Closed TheMemeSniper closed 1 year ago

TheMemeSniper commented 2 years ago

Allow NFC tags to be written through the right Joy-Con with Bluetooth. This would allow users without NFC support to use TagMo or for users on Switchroot Android, they can write NFC tags through the Switch.

AbandonedCart commented 2 years ago

I'm going to take that as a request, even though it reads a lot like a demand. The concept is already being tested, but may not be possible because they use an awkward connection process.

AbandonedCart commented 2 years ago

After some heavy research, it appears it has been done to some extent. The problem being that Android sort of lagged behind on the necessary drivers and such to support it. Connecting an HID (Human Interface Device) through Bluetooth is common on Windows, Mac, etc. On Android, they more or less assumed you would only ever need to do it at the system level. The catch is that to connect a Joy-Con as an actual Joy-Con and not a generic controller, there is a whole process of handshakes and verification. Android connects by simply saying "oh, a controller" and connecting it like any other.

AbandonedCart commented 2 years ago

TL;DR it is going to be very hacky on most devices and support will be more or less depending on if and when the phone manufacturer added the drivers.

TheMemeSniper commented 2 years ago

alright thank you

AbandonedCart commented 1 year ago

Haven't successfully connected to a controller for anything more than standard input yet. I'm not sure what is missing, but something is definitely not happening that should.

german77 commented 1 year ago

I invested quite a bit of time trying to accomplish the same thing. If the issue is configuring the controller I know how to activate the joycon NFC and being able to read or write data from tags.

AbandonedCart commented 1 year ago

This has been on the back burner for a while, mostly because the only real use for it would be the 1 in 10,000 devices that don't natively support NFC. Allegedly, it connects. I'm just not sure if the issue is that it isn't actually connecting or it's the mismatched Bluetooth implementation in the library.

german77 commented 1 year ago

This is useful to me since I need proper input from joycons. The generic driver is missing the dpad along with other buttons. Having nfc support is just a nice to have.

AbandonedCart commented 1 year ago

That makes sense. For NFC alone, there's only really a handful of devices that don't already have it and most of them are already struggling to run the app at all. In the last 3 years, there have only been 3 requests for it and something else has always come up.

AbandonedCart commented 1 year ago

With the amount of overhead required for this feature and the fact that it would primarily be used by devices with RAM in the megabytes, it just doesn't make sense to implement it.