1. Hello Guest! Did you know that we're also on Discord? You can join us here: https://discord.gg/aa578Mm.
    Dismiss Notice

Project diva homemade controllers

Discussion in 'Tutorial Area - By users for users!' started by nofutur, Jul 20, 2016.

  1. Drek

    Drek Big Debut

    Joined:
    Sep 26, 2017
    Messages:
    10
    Likes Received:
    0
    Trophy Points:
    30
    Gender:
    Male
    Location:
    France
    Yes i have dampened my buttons. I assume that you have the same kind of generics as mine and not sanwa.

    I felt that the button had too much room for movement but also was not touching the bottom (the black part) when press so the button was not stable during the hold notes. All the weight was on the switch.
    To fix that, I added some foam stickers that you can find in home supplies stores. I sticked 4 of those under each plunger. Now the plunger with the foam moves just enough to activate the switch and makes stable contact with the black part underneath. I don't remerber what thickness i used, the best is to buy different types and try.

    Also, consider buying the 200g sanwa springs, it makes a HUGE difference.

    I hope it is understadable. I don't have picture to show you right now.
     
  2. LanDi

    LanDi Welcome to DIVA!

    Joined:
    May 15, 2018
    Messages:
    8
    Likes Received:
    0
    Trophy Points:
    20
    Nope, I understand perfectly thank you! I actually got the expensive buttons, the OBSA-100UMQ ones everyone recommends and a new set of the Sanwa 200g springs to replace the ones already in the buttons (They were both 200g but the ones I bought felt better so I'm using those) but I'm trying to replacate that feel that I get when I play the real arcade machine. I don't really feel a click and the break point for the switches are almost nothing on arcade, you can delicately tap buttons so I was hoping to take up some slack on my controller to get them like that.

    A good example is that technique arcade players can do where they sorta "swat/tickle" the buttons, I was hoping to be able to replicate those techniques on my controller.

    Like the moves he pulls around 00:37

    I used some double-sided tape since it's kind of a thin foam sort of material and I'll see if that works. So far so good though, I love the bigger buttons. It's going to take my mind some training to forget all the bad habits from the Hori mini controller. I think I'm going to keep the analog sticks below the buttons so I can use my thumbs to hit them. So I'll probably put together the final case in the next couple days, I'll post again when it's done.
     
  3. Drek

    Drek Big Debut

    Joined:
    Sep 26, 2017
    Messages:
    10
    Likes Received:
    0
    Trophy Points:
    30
    Gender:
    Male
    Location:
    France
    You have the exact same button than the arcade cabinet, i think the difference is the switch that you are using. Sanwa sells different types and i believe they are using the most expensive OBSA-LHSXF.

    I also tried that tickle move with no success so far ^.^
     
  4. LanDi

    LanDi Welcome to DIVA!

    Joined:
    May 15, 2018
    Messages:
    8
    Likes Received:
    0
    Trophy Points:
    20
    #64 LanDi, May 16, 2018
    Last edited: May 16, 2018
    I think if I get good enough to tickle buttons it probably won't matter what switches I'm using in the end.

    The Hori FT controllers use these sorts of switches:
    https://www.akishop.jp/button-parts/152-mm9-4-microswitch.html##

    Which feels an awful lot like the ones they have in the arcade to me, without a solid click and a low break point but it's mostly wasted on the 1" buttons. I'm just going to play with this controller for awhile and figure it all out.

    If the OBSA-LHSXF is what they use in the arcade machines, I would potentially be up to ordering them. I can't tell by the pictures where the switch is or how it works with my buttons though. I can only find a few pictures.

    These are the switches that came with my buttons:
    https://www.akishop.jp/joystick-parts/114-ms-o-3r.html##
     
  5. Drek

    Drek Big Debut

    Joined:
    Sep 26, 2017
    Messages:
    10
    Likes Received:
    0
    Trophy Points:
    30
    Gender:
    Male
    Location:
    France
    The OBSA-LHSXF is a photoswitch so there is no click i suppose. This japanese guy confirms that SEGA is using it :
    http://meenia.jp/diy/controller/miku-pd

    Yes i have MS-O-3 too, it is the most common and easy to wire.
     
  6. colonelmasako

    colonelmasako Big Debut

    Joined:
    Sep 20, 2017
    Messages:
    18
    Likes Received:
    2
    Trophy Points:
    35
    Gender:
    Male
    So I too have the MS03 switch and OBSA-100UMQ buttons that you guys have. And yes, it doesn't quite have the arcade feel. But certainly the 200G springs and the MS03 switch is firmer than pop'n buttons and does have a click to it that is mostly fine. I was going to go with sound dampening, but after seeing @Tomtortoise's struggles on his instructable, haven't touched it yet.

    I'm willing to upgrade to the optical switches IF:

    1. I can find them. Akishop doesn't sell them. We have a ton at Round 1, but I can't take those, only study them. They are almost $35 each btw, according to the yen price on them.
    2. I can determine what the header is. Its NOT JST. Its something close. Have to figure out the plastic shell and pins for the crimp work
    For now, I just miss occasionally because my playstyle is too adjusted to the real deal arcade. Its so close...but I believe that optical senstitivy makes all the difference here. Not necessary, but a very nice to have.
     
  7. Doctopus

    Joined:
    Dec 22, 2017
    Messages:
    41
    Likes Received:
    0
    Trophy Points:
    85
    Location:
    Planet Earth
    #67 Doctopus, May 16, 2018
    Last edited: May 17, 2018
    Try harder. I saw them on the official Sanwa Rakuten shop (and they ship outside Japan)
    https://global.rakuten.com/en/store/sanwadenshi/item/ilumb_301/


    Well then it might just be JST. JST is a family of connectors vary on different sizes, pin pitch, shapes, etc. If by JST you mean the JST XH series (2.5mm pitch, the most common type used by Chinese arcade buttons, encoder boards, cables, etc.), then it might be JST SH or so. (And in case that you really cannot figure it out, Sanwa also sells the assembled cables under the part number LHSX-H in their shop. They are not really cheap though)
    (Well I guess my next plan after I finish my controller will probably be homebrew opto-switches for Chinese buttons then)​
     
  8. LanDi

    LanDi Welcome to DIVA!

    Joined:
    May 15, 2018
    Messages:
    8
    Likes Received:
    0
    Trophy Points:
    20
    I wish there was a diagram for those OBSA-LHSXF switches.

    Either way, I'm going to order a set with harnesses and a spare for sacrifical purposes to try and get it to work. So I'll report back, and if we can figure it all out we'll make a diagram and tutorial here for you guys if you're interested in doing it too.

    I gotta ask too because I was looking at the other controllers. Why do so many of them (nearly all of them) use buttons in place of analog sticks for sliders? I'm actually rather fond of the analog sticks, but there must be a good reason. I was thinking about getting a set of those rectangle buttons so I can set them up that way too but it's an expensive additional cost ontop of FIVE of those LHSXF switches and you guys are the only ones I can ask about them.

    I'd love to incorporate a touch panel into my controller too like Colonelmasako's but that may have to wait until the future.
     
  9. Doctopus

    Joined:
    Dec 22, 2017
    Messages:
    41
    Likes Received:
    0
    Trophy Points:
    85
    Location:
    Planet Earth
    #69 Doctopus, May 17, 2018
    Last edited: Sep 7, 2018
    Perhaps they are relatively easy to make and use?

    Also there are lots of articles on how to design and make fighting sticks, and fighting sticks use joysticks instead of thumbsticks like DS4. So basically my guesses are:
    1. not everyone who make fighting sticks have thumbsticks and using 2 joysticks for the slider would be weird
    2. there are fewer tutorials mention how to mount and wire thumbsticks
    3. fewer shops who sell fighting stick components sell thumbsticks
    So unless someone wants a true touch slider (CM's capacitive (BareConductive self capacitance) slider or my resistive (SoftPot) slider), the option that most of people would think of immediately would be use a button array as the slider.

    Anyway that's just my guess. Don't take it really seriously :P

    PS: I do want more photos and measurements of the Sanwa opto-switch. It's hard to tell about what connector they use just from a single photo (I guess JST SH or ZH according to the photos of connector on the harness and the switch from their shop).

    PS2: Seems that adapting Chinese buttons to use opto-switches are actually somewhat hard. First due to the structure of the lamp holder I'm not sure where to place the opto sensor. Second, the teeth of the button only moves ~2mm on presses which are enough for microswitches but probably not for opto sensor. (Looks not enough for typical interrupter type, not sure about reflect type)
     
  10. Drek

    Drek Big Debut

    Joined:
    Sep 26, 2017
    Messages:
    10
    Likes Received:
    0
    Trophy Points:
    30
    Gender:
    Male
    Location:
    France
    #70 Drek, May 17, 2018
    Last edited: May 17, 2018
    Having this photoswitch functionnal would be a good reason to finally upgrade my controller with genuine Sanwa. Looking forward to it. I'll try to find informations also. I have just tried shortly the arcade cabinet in Japan before i built my controller so i don't remerber how it is different.

    Concerning the thumbsticks, the method that seemed the most accessible to me was using the PCB from Hori mini fighting stick. And the possibilities were limited to buttons. I agree with doctopus explanation.
    I am playing with HORI mini controller on PS3 and thumbsticks under buttons are fine. But i think having buttons lined up in the same place as the arcade touchbar gives a better feeling of playing like the arcade, the same movements. I hope i can be as good the next time i can play in japanese arcade! But ultimately, choosing a controller you are comfortable with is the most important.
     
  11. colonelmasako

    colonelmasako Big Debut

    Joined:
    Sep 20, 2017
    Messages:
    18
    Likes Received:
    2
    Trophy Points:
    35
    Gender:
    Male
    Some high quality pics of the opto switch:

    [​IMG]

    [​IMG]


    [​IMG]

    @Doctopus thanks for the link, good to know they sell them. Another ghetto way you can make this work is with dupont 0.1" center wires houses, probably glued together and taped in, but again quite ghetto.

    For those wanting a touch slider: it is my full intent to share the details more when I'm finished, so that others can replicate it. It is not good enough to do so yet. If you want one, make room for it on your controller. 2.5" x 20.5" is the arcade size.
     
  12. Drek

    Drek Big Debut

    Joined:
    Sep 26, 2017
    Messages:
    10
    Likes Received:
    0
    Trophy Points:
    30
    Gender:
    Male
    Location:
    France
    Do you know how the wiring works with this switch ?

    My guess is :
    + : powering the LED only (5v USB or 12V or 24V from another power supply)
    - : ground for LED
    5V : powering for the optical switch. Is the 5V from USB ok to be used ?
    out : to the corresponding input in the controller PCB (circle, cross, triangle, square) ?
    gnd : ground for the optical switch part

    To have LED off when pressed, i think you need external component like @PlayerOne showed in post #34 of the topic. I would need to see an exemple of someone doing that. My electronic skill is really basic...

    Thank you for sharing your touch slider. I will take a look at it when it's done !
     
  13. Doctopus

    Joined:
    Dec 22, 2017
    Messages:
    41
    Likes Received:
    0
    Trophy Points:
    85
    Location:
    Planet Earth
    #73 Doctopus, May 17, 2018
    Last edited: May 17, 2018
    @colonelmasako looks like some variant of JST PH connector Nope, PH has the notches over pin 2 and -2, not between pin +-1 and pin +-2 (interestingly XH has the notches on the right place, but the connector looks smaller than XH, also you do mention that it is not XH (assume that's what you mean))

    Can you also measure the approximate size of it? (Also the pin pitch if possible)
     
  14. LanDi

    LanDi Welcome to DIVA!

    Joined:
    May 15, 2018
    Messages:
    8
    Likes Received:
    0
    Trophy Points:
    20
    I haven't cut out my final case yet, so I may keep enough space clear for a touchpad. How difficult for a novice do you think it'll be to set one up with your plans? Once you've worked out all the bugs I'd like to buy one from you if you were willing to sell one complete as a kind of drop in kit. I hadn't thought a touchpad would be part of my build before because it all went over my head but I'd love to have one.

    Also those pictures are great but I wish I could find pictures of the top of the unit. How exactly does it work? I know it's a photosensor, but how does it know the button is being activated and how does it interface with it? I was looking at pictures of the arcade unit under the controls and the buttons look like regular UMQ100's but they just have those fancy LHSXF instead of the switches we've all been using so I'm not sure how the switch knows anything yet.

    I successfully placed my order for five of the LHSXF units last night and six sets of harnesses. Assuming the supplier ships quickly I could even have them next week and I can start to tinker with them. In the meantime I've been breaking a lot of records with my ghetto wood case controller.

    Sidenote; Drek says he still uses the Hori mini-controller, and I did as well for almost a year before this project. In your travels are a lot of people still using them? We're on backorder for a proper, business grade vinyl printer and I wanted to make graphic skins for mine because I never liked the FT artwork on it so if anyone wants custom graphics cut for their mini controllers I should be able to do that in a month or two.
     
  15. colonelmasako

    colonelmasako Big Debut

    Joined:
    Sep 20, 2017
    Messages:
    18
    Likes Received:
    2
    Trophy Points:
    35
    Gender:
    Male
    I'm pleased to announce that my code base is ready to be shared and looked at by others. After months of tweaking and development, after a few compromises, it works well enough to work in other contexts.

    Important caveats:

    1. Due to the fact my implementation is much lower in resolution (1x10) vs the real thing, extra motions are needed to determine slides correctly. Basically, in the arcade if you have double slides, you can barely graze the slider and it will see them. With mine, if you move your action just a half inch in any direction, it works. But if you graze it, you'll miss. Just follow through with the double slides and my code will catch it correctly.
    2. Short slides for left and right are treated the same. In mine, you can slide right on a left and still get it correct. It was the only way I could get it to keep up with the pace of the game. Essentially, normal slides are dumb and fast, complex slides are just a hair slower and smarter. This, in my experience, does not detract from recreating the arcade experience in my gameplay at all, if you are playing it like you do there. Just don't develop bad habits :p
    3. Slides that double up on each other (Ghost Rule, Secret Police) are very difficult to hit fast enough with my implementation. The arduino can't quite keep up with the touch, release, touch, release of one hand, at least not without moving your hand ridiculously faster than in the arcade. A compromise is to do it with 2 hands. A quick left with one hand and right with the other hand gets around this. Or move your hand really damn fast, up to you. With this I don't miss things.
    I commented this code EXTENSIVELY to explain it. Including modifications you'd need if you were to put it to use.



    Considering how long it took to make this work properly, it would be a monumental task to sell a prebuilt slider that would work in other controllers. At least with this method. It depends upon certain design elements to function, such as the use of acrylic for the top and a thicker piece of wood or MDF below to mask your hand movements so that the wires can be routed to the control board. This employs a use of a combination of copper strip tape and conductive ink. Not impossible, but pretty hard. There is also some fancy electronic fenagling I pulled off with an inline optical isolator circuit. I can build those no problem, others wouldn't without some trouble.

    Overall this method is bruteforce and easy to use once built right. But building it and calibrating it took some serious effort. IF you want to use this method, make room for it and we'll see what happens. I'd be willing to assist in getting it working for someone who wanted to adopt it.
     
  16. Doctopus

    Joined:
    Dec 22, 2017
    Messages:
    41
    Likes Received:
    0
    Trophy Points:
    85
    Location:
    Planet Earth
    #76 Doctopus, May 19, 2018
    Last edited: May 21, 2018
    Actually @colonelmasako how easy will it be to implement true touch slider (i.e. map the 2 finger position on the slider to the DS4 touchpad) with Brook board? I'm not very familiar with Brook because I never used them (instead, I implemented my own DS4/Hori wired controller emulation on a Teensy LC in order to gain maximum control) and I noticed that you actually programmed your slider as a gesture detector rather than a touchpad emulation device.

    EDIT: Seems that newer Brook boards accept a dedicated touchpad via a specific protocol (which I don't know and cannot find any info about it) over the on-board I[sup]2[/sup]C port. It's probably possible to emulate the touchpad with an Arduino or so to get it working.

    PS: If anyone is interested in my SoftPot slider, just Google "softpot multitouch" and you will find the Arduino library I wrote for my slider.

    PS2:

    @LanDi I am more curious about how their magnetic switch works without attaching a magnet to the button. Perhaps magic? (jk)
     
  17. finonymouse

    finonymouse Welcome to DIVA!

    Joined:
    May 16, 2018
    Messages:
    2
    Likes Received:
    0
    Trophy Points:
    20
    I have never played the arcade so I'm not sure of the exact feel but I found an inexpensive solution that makes tickle presses possible.

    Micro-leaf switch from Groovygamergear



    On my controller, I currently have modified Easyget 100mm buttons with 200g Sanwa springs installed. I was previously using E-switch 50g switches but they are fairly loud and required quite a bit of button travel to activate (though adding a bumper to reduce travel helped the button return faster). Now, with the Microleaf switches installed, there is virutally no switch sound and you can make the buttons extremely sensitive just by adjusting (bending) the leaf on the switch.



    Having just installed the switches, I'm not very good at tickling just yet but it definitely has potential to make the 10s a bit easier...
     
  18. colonelmasako

    colonelmasako Big Debut

    Joined:
    Sep 20, 2017
    Messages:
    18
    Likes Received:
    2
    Trophy Points:
    35
    Gender:
    Male
    @Doctopus , I'm a bit confused. Yes, my implementation is a gesture detector. How is that different from the purpose of a touch pad slider?

    Breaking it down, my design is a 10 point true multi touch implemenation. You can touch and monitor all 10 elements simultaneously if you want to. My LED code certainly cares about that. But that by itself isn't very useful. Noticing movement between the elements, that is what makes it a slider. Essentailly, gesture detection. So I'm not sure why you say its not a true touch pad solution, please explain :p

    I didn't bother with trying to use Brook's touchpad interface, they don't have the protocol posted and I didn't feel like mucking with it. The goal of this project was very focused and simple: implement all slides that the game can throw at you:
    Left, Right, Left Right, Right Left, Right Right, Left Left

    Since you can map those to the L1, L2, R1, and R2 buttons, it seemed very simple to just make the brook board think those were extra button presses during game play. And it works. At the end of the day, I have the arcade experience replicated successfuly in my garage. Minus some not as senstive not optical buttons that I'll fix later :p

    I looked at SoftPot stuff a long time ago, and the biggest thing I didn't like about it was its linear nature and the fact that its only 2 touch inputs. In the arcade, you touch with anywhere between 1 finger and your whole hand, usually you don't think about it. So if you touched it with 2 hands with 4 fingers (not your thumbs), that is way more than 2 touches potentially. So I didn't think that was the approach that would work. So what was your approach? Do you have videos of it working?
     
  19. Doctopus

    Joined:
    Dec 22, 2017
    Messages:
    41
    Likes Received:
    0
    Trophy Points:
    85
    Location:
    Planet Earth
    Because touch pad models the slider behavior more close to the arcade.

    The real arcade slider not only detects the gesture, but also tracks the travel distance of your fingers. There are some (probably unobivious) game mechanics that uses this, such as the faster you move your fingers, the faster the slider maxes out. If the slider is just a gesture detector, there is no way to implement this precisely (and this may cause negative effects e.g. a maximum slide really fast may not max out the slider and you need to do it again). Also you don't get the satisfying sound effect when you do an empty slide.

    So yes most of the time it will work fine, but depends on your play style sometimes it may feel weird (so as my implementation :P)

    Think about the equivalent circuit if you put more than 1 object on a SoftPot. Only the edges of the 2 objects outside will be detected. It was really bad for detecting precise positions, but good enough to pass the signal to the PS4 as a touch pad signal so that the game can sense both gestures and travel distances. (And yes I did assume that my hands were not as big as two hands (just like you) and I know this will potentially cause misdetections. Although as long as you do double slides doubly or intentionally tune down the minimum gap length (that will be assumed as single touches), this shouldn't bite that hard :p)
     
  20. colonelmasako

    colonelmasako Big Debut

    Joined:
    Sep 20, 2017
    Messages:
    18
    Likes Received:
    2
    Trophy Points:
    35
    Gender:
    Male
    I'll have to test more, but I'm fairly confident the distance track mechanic was not ported to the PS4 version. Yes, the real slider tracks motion, and I'll believe controls the speed of the action.

    My approach was focused on the use of the sticks or the L/R buttons to do slides. From that perspective, there is no speed involved. Its all the way on, all the way off. And "empty" slides only happen if you miss the timing of its start, or let go during the slides: if you get a cool on it, it will last as long as you hold down the action, at a uniform and sufficient speed. The method detects the action, latches it, and releases it once you stop touching. There is no speed component to my method other than how fast you start things. And so long as I can time it correctly, all my slides are perfect with no drops or no too fast/too slow actions.

    I have NOT tried playing with slides on the actual PS4 controller touch pad, mostly because I'm not very good at stretching my fingers to it while hitting the other buttons. Perhaps the speed mechanic is there, I'll definitely try it out myself.

    My implementation is absolutely capable of tracking motion, I just didn't code it up that way. Physically, you could do all kinds of crazy things with what I built with the right code. Perhaps I'll look at this for improved LED control, but for now this doesn't affect the game play from what I can tell.
     

Share This Page

  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice