As long as my board identifies itself as a gamepad, the Switch does not use dedicated mode (AR). The Mega39 controller must identify itself with different USB product ID or some other USB descriptor that tells the Switch to interpret the axes (RX,RY,LX,LY) as the 32 bit slider bits. This is probably true of the PS4 controller. I read it has a switch for normal vs. dedicated mode. The Switch Mega39 controller is always in dedicated or special mode so there is no switch. Any dumps (lsusb) of USB descriptors from Hori arcade controllers?
You have to enable the Arcade Controller Settings for HORI Arcade controller in Customization>Game Config>Arcade Config>Arcade Controller Settings. As for PS4 Dedicated controller as well (Except in PS4 Extend Control settings, have to disable the Touch Pad and Motion Control OFF and have only Arcade Controller setting ON), the DS4 (PS4) Touch simulate as 16 bit of touch slide which makes unstable to use as a PCB for a Arcade controller.
Thanks, but I have arcade Controller enabled. This mode works fine with a Pro Controller using the sticks for slides. I am thinking there is something additional to tell the Switch whether the controller is in sticks mode (regular gamepad) vs. AR for Hori arcade controller. One possiblity is the arcade controller sends a different USB product ID so the Switch knows whether to use sticks or AR mode. The reason I think the Switch is in sticks mode is the slider bits corresponding to the RY and LY axes appear to be ignored by the Switch. Oh well, back to debugging.
After turning on the mode the stick no longer works correctly for sliders for me. The most obvious thing during gameplay is that pushing the stick in whatever direction randomly COOL the sliders, even the opposite direction. My guess is that it only appears to not change for you because the fluctuating less significant bits for all axes happens to indicate moving from slider sensors to sensors. There isn't any additional thing in the USB descriptor, it works with any controller including the joycons, pro controller, or just pretended hori fight sticks. It's also very obvious in the menus: When you move the right stick the menu item only goes up because the more significant bits of RY are activated (unless you're holding it perfectly horizontal, RX doesn't matter in the menus because the bits indicate the middle of the slider) causing a tap of the slider on the left to be registered. When you move the left stick the menu item only goes down because the less significant bits of LX are activated (unless you're holding perfectly vertical, LY doesn't matter in the menus because the bits indicate the middle of the slider) causing a tap of the slider on the right to be registered.
Are you saying when a regular gamepad such as a Pro Controller is plugged in and using Arcade mode, the sticks no longer work for slides? This works fine for me. I do not use the joycons because they are too small for me. When using my touchscreen controller in AR (dedicated mode) and MegaMix in Arcade mode, the part of the slide that corresponds to LX and RX sort of work but the LY and RY do nothing. And the slides are kind of random. Swiping the wrong way frequently works. I think we are seeing the same behavior here. Outside of gameplay such as the song list, the slider LY and RY regions sort of work to scroll the list. I have since implemented sticks mode (Hori calls this normal mode) instead of AR mode for the slider. This eliminates the random slides. For 1 hand sliding, slide to the left translates to moving the left stick in the left direction. Slide to the right translates to moving the right stick in the right direction. For 2 hand sliding, the direction of the left hand maps to the left stick. The direction of the right hand maps to the right stick. I may add a switch to select between sticks/normal mode vs. AR/dedicated mode like the PS4 arcade controller. Although AR mode is not very useful so far on the Switch. The following is a quote from the Hori PS4 Arcade controller web page. This is an automatic Google translation. Except for @Doctopus gist on github this is the only description I have seen of normal vs. dedicated modes. https://hori.jp/products/p4/FTDX_con/ I think pol8139 uses sticks mode on PS4. The PSoC code determines hands direction and also sends the slider 32-bits over i2c to the Pro Micro. I got lost in the Pro Micro/LUFA code but I think it sends L/R movement on the L and R sticks.
When dedicated controller mode is turned on, the sticks "work" for slides just not correctly. "Sort of work" is not an informative description. Does any single bit activation on LY or RX do anything in the song list? Because it should not in the dedicated mode. I have my controller right in front of me using the dedicated mode: atmega32u4, LUFA, emulated HORI fight sticks, plugs straight into the Switch. Probably because when pol8139 made the controller dedicated mode isn't a thing yet. He also doesn't use anything like a Brook adapter for PS4 so he has to find a way to circumvent the 3rd-party controller time limit by using GIMX and a DS4.
Yes, it is. PSoC code determines hands direction and also sends the slider 32-bits over i2c to the Pro Micro, and Pro Micro sends it as L/R sticks movement to recipient.
Thanks, @erikchan002 and @steelpuxnastik Dedicated/AR mode for me will have to wait for another time. Normal/sticks mode is working fine so far. PS4 controller authentication does add another complication (GIMX, Brook, etc) that is not present for the Switch. I have no plans to work on a PS4 version. I will upload code to github when it is ready. For now it has a system block diagram. I will post some photos later. https://github.com/touchgadget/toucharcade
After another look at my code I found the bug that breaks AR mode. I turned dedicated controller mode back on and verified the bug is dead. I hear the chimes/harp sound when sliding outside game play. For example, in the Tutorial. I used the Tutorial to verify the 1 and 2 handed slides work as expected. I will be posting more details in the github repo mentioned in the previous message. Thanks for all the help!
RPi4 without Gadget/FunctionFS? Disappointed D: (jk Auth isn't that hard once you got HID stack set up. Not to mention that there is a very nasty trick if you are using PC or RPi. See https://github.com/dogtopus/e3pp :P (Can't believe nobody found out this and what it does for almost a year)
All very interesting but mostly over my head. I will leave controller auth to companies like Brook. The video about glitching power is fascinating. I was thinking to try this using a Teensy 4.1 instead of a Pi because the Teensy has USB host and device ports. The perfect USB converter and it runs at 600 MHz. But I would have to write a Teensyduino USB host touchscreen driver which will happen about the same time I write a Linux USB gadget driver (never!).
thought I would share the process I went through building my own arcade controller (without ever using a real one lol) and also ask a couple questions. Mainly I bought Chinese buttons and im pretty sure they came with a 200g spring but im not sure so for now i've just completely taken the spring out but idk if thats ideal so does anyone have any suggestions for making it as arcade accurate as possible?
whoops something went wrong heres my photos of all my versions https://gyazo.com/a5cae19645bdf462b0bb3e8a78ad2803 https://gyazo.com/35e5c5e26462ada2af7ffc2d123898a4 https://gyazo.com/e87dab784f36330e3e213db4c2b4f8ae https://gyazo.com/2b51e3fdeabef5e36ea2c1c755bac933 https://gyazo.com/35b135911e6691e2b741db90647b30de https://gyazo.com/7ec1d5bcdd3aefc5a99529ec7a453a42 sorry about that lol, the last three photos are all of my final version.
Boooomb :))) In chinese buttons, unfortunately, cannot be 200g springs, there are much more G, I know it, because I bought later original Sanwa 200g springs and had opportunity to compare. But if you use your button with this kind of switch you need to use some kind of formula: a + b = c, where "a" is count of g of spring, "b" - count of g of switch, and "c" - sum of g. And in most cases with this combination you get a lot more than "arcade pressing force standard?", but with optical switches you can get that (look here https://www.projectdiva.net/community/threads/questions-about-sanwa-obsa-lhsxf-ln.2325/ may be you can make donation and I'll make that faster :D )
Yeah I was interested in the Sanwa buttons but the cost of them is a really big turn off so for now just having the switch with no spring is how I have mine I think the switch is 85 grams but I don't have the means to confirm that
Hi guys, I'm new here and by looking for a solution to my problem I ended up in here. I see that a lot of you know well arcade controllers so I hoping you can help me find a solution to my problem. I have the last hori controller for Project diva(yeah I don't have the time and knowledge to build one myself) and I have an issue with it. The touch sider activates by itself erratically. So I would like to know if someone has an idea about what could be the cause of that and how can I solve this. Have a nice day.
In your description is not so many info to understand what you already done to understand the reasons of this phenomenon. There can also be useful if you'll show on video in which cases this phenomenon manifested - who knows, may be it's absolutely normal in those cases. But you need to understand main reasons of false touches: water or even condensate inside or outside of body of controller, mechanical damage (In most cases): real damage or just bad connection of elements of touchpad that courses phantom touches, also it can be some radio frequency interference, but it's maybe almost impossible. I think first two reasons are the most common, I just didn't touch the HORI controller and do not know how it's complicated inside, may be other knows better, but you can look there first to make sure these options are excluded.
First Thanks for your response. As for the above, I don't think water and or condensation may be the cause. It's pretty dry right now at my place and when I opened the hori I didn't see any trace of humidity (I'm gonna check a second time just to be sure). As for the video or pics it seems that I can't upload them but I can send them to you on discord.