Acidmods

Console Modding------ ( Here you can talk about your favorite Consoles ) => Xbox One => Xbox One controllers/Xbox One Rapid fire Controllers => Topic started by: 3lite117 on November 22, 2013, 04:53:49 AM

Title: Input for the xbox one controller rapid fire
Post by: 3lite117 on November 22, 2013, 04:53:49 AM

(https://acidmods.com/forum/proxy.php?request=http%3A%2F%2Fs7.postimg.org%2F3uopigyjr%2Fimage.jpg&hash=bbe8f6603ce20e818106e0d626cfddf7ebcb6a12) (http://postimg.org/image/3uopigyjr/)

(https://acidmods.com/forum/proxy.php?request=http%3A%2F%2Fs7.postimg.org%2Fmlqmsmt47%2Fimage.jpg&hash=8f04f33f27c62c2ca7f12f93a29ffc9f9ccb318e) (http://postimg.org/image/mlqmsmt47/)

If any one has started to attempt this feel free to shed some light on it
Title: Re: Input for the xbox one controller rapid fire
Post by: Modded Matt on November 22, 2013, 05:10:56 AM
Its a CG. our rapid fire chips may work with little modification.
Title: Re: Input for the xbox one controller rapid fire
Post by: stuee on November 22, 2013, 07:52:04 AM
i have seen a couple of things come to market already so its possible.. and for ps4 controllers too.
Title: Re: Input for the xbox one controller rapid fire
Post by: SethMods on November 22, 2013, 10:38:16 AM
Anybody know the tie-in points for the triggers?
Title: Re: Input for the xbox one controller rapid fire
Post by: jaredb03 on November 22, 2013, 11:41:59 AM
Anybody know the tie-in points for the triggers?

Been trying to find them but coming up empty. I think the sensor is magnetic.
Title: Re: Input for the xbox one controller rapid fire
Post by: Rodent on November 22, 2013, 11:42:35 AM
got any better pics? 
Title: Re: Input for the xbox one controller rapid fire
Post by: SethMods on November 22, 2013, 12:04:35 PM
This is where I think they are.


(https://acidmods.com/forum/proxy.php?request=http%3A%2F%2Fs11.postimg.org%2Fs3ukmnvhr%2FTriggers.jpg&hash=6e926ab5afb87e9ab91007a6245cfc256f7087d5) (http://postimg.org/image/s3ukmnvhr/)



Here are some better pics.

(https://acidmods.com/forum/proxy.php?request=http%3A%2F%2Fs21.postimg.org%2F6ep0q0f7n%2F20131122_140537.jpg&hash=08b6835bad4f64f13888c98588f00bcfabde5b4d) (http://postimg.org/image/6ep0q0f7n/)

(https://acidmods.com/forum/proxy.php?request=http%3A%2F%2Fs13.postimg.org%2Fouxiqzd6b%2F20131122_140552.jpg&hash=2231757fb680e22829d19c5ce3a0b1086ac71b61) (http://postimg.org/image/ouxiqzd6b/)
Title: Re: Input for the xbox one controller rapid fire
Post by: 3lite117 on November 22, 2013, 01:37:28 PM
Hey seth are you going for a 12f683 install? Ive also been stuck on those trigger inputs...
Title: Re: Input for the xbox one controller rapid fire
Post by: SethMods on November 22, 2013, 01:53:38 PM
Yeah, 12f683.

What have you tried so far?
Title: Re: Input for the xbox one controller rapid fire
Post by: 3lite117 on November 22, 2013, 02:22:40 PM
Havnt actually wired it up as yet, my skills to figure out what goes where are not that great 8( yet i can basically wire anything up lol
Title: Re: Input for the xbox one controller rapid fire
Post by: SethMods on November 22, 2013, 04:04:49 PM
I'm sure I'm going to look like an idiot later(yep!), but here goes anyway.

It does look like those two points are the correct points(maybe not the best points to use). The triggers look to be using Hall Effect Sensors instead of the old potentiometers from the XBox360. The voltage with the triggers at rest is .25V and around .10V when the triggers are pulled.(nope!)

From my little bit of playing around I was able to drive them low(to fire) and drive them high(to release) with no problems.

So (in my mind) any voltage less than say .20V for instance would constitute a trigger pull, and then you can drive the triggers high or low just like before.(Wrong, wrong, wrong, wrong. Wrong, wrong, wrong, wrong. WRONG. WRONG. WRONG. WRONG. -Dr. Cox on Scrubs)

Title: Re: Input for the xbox one controller rapid fire
Post by: 3lite117 on November 22, 2013, 04:49:33 PM
Sounds good! Id imagine we would have to add an led for an indicator also, im sure we can still use the sync button for a switch? Where the solder point would be the trace end (black dot) up to the right of the right button on the dpad
Title: Re: Input for the xbox one controller rapid fire
Post by: lecrack65 on November 24, 2013, 10:31:22 AM
hello all
you know how the xbox one controller is opened
Title: Re: Input for the xbox one controller rapid fire
Post by: SethMods on November 24, 2013, 10:48:28 AM
hello all
you know how the xbox one controller is opened

???
Title: Re: Input for the xbox one controller rapid fire
Post by: lecrack65 on November 24, 2013, 11:00:54 AM
I do not know how to open my controller xboxone
how to open
Title: Re: Input for the xbox one controller rapid fire
Post by: SethMods on November 24, 2013, 11:09:39 AM
Xbox One Controller teardown, disassembly, LED Swap of X1 (http://www.youtube.com/watch?v=b0JZLd8MUcg#ws)

Disclaimer: I found this on Youtube. It's not mine.
Title: Re: Input for the xbox one controller rapid fire
Post by: lecrack65 on November 24, 2013, 11:31:13 AM
yes thank you
Title: Re: Input for the xbox one controller rapid fire
Post by: geekonaut on November 30, 2013, 12:07:56 PM
The triggers are not the potentiometer types they were on the 360. These are actively driven by a hall effect sensor. I've read where grounding the hall effect sensor's output "triggers" the trigger. (Haha) This could easily be mimicked by setting a micro pin as an input so the pin is floating to not affect the circuit for not triggered and setting the pin as an output and low to trigger. I'm working on something like this, but rarely have time these days. I hope this information gets you all going.
Title: Re: Input for the xbox one controller rapid fire
Post by: SethMods on November 30, 2013, 12:25:52 PM
Yeah, that's the direction we are working. Let us know if you find anything else out.
Title: Re: Input for the xbox one controller rapid fire
Post by: likemike on November 30, 2013, 08:59:07 PM
Hello, thanks for accepting me into the forum. I have been working on mods for a while and hope I can help and learn. I have a xbox one controller apart. Yes part labeled 303 is a hall effect. I just a jumper wire from the output to input and got it to shoot. I am still working on the rapid fire portion.
Title: Re: Input for the xbox one controller rapid fire
Post by: SethMods on December 02, 2013, 08:48:34 PM
If anyone else out there is struggling with mods for the XB1 Controller, here are some screenshots of the signaling that happens with the triggers.

Trigger Released
(https://acidmods.com/forum/proxy.php?request=http%3A%2F%2Fs7.postimg.org%2Fgy3mnygbr%2F1_Trigger_Released.jpg&hash=0825df872c98c85c847f194e29dfbb1708f5ea6e) (http://postimg.org/image/gy3mnygbr/)



Trigger Half-Pulled
(https://acidmods.com/forum/proxy.php?request=http%3A%2F%2Fs24.postimg.org%2Fy5zb66u1d%2F2_Trigger_Half_Pulled.jpg&hash=cbf3bc78293752fcfa8b456950ae215f6ecd50d5) (http://postimg.org/image/y5zb66u1d/)



Trigger Pulled
(https://acidmods.com/forum/proxy.php?request=http%3A%2F%2Fs24.postimg.org%2F918asrukx%2F3_Trigger_Pulled.jpg&hash=b65513a818e8d6b91df72417d7943292ab2b276e) (http://postimg.org/image/918asrukx/)


First, I have to thank RDC. He was patient and broke it down for me on how all of this worked. The guy is a genius!!!


Second, Blue represents the Hall Sensor getting powered up for about 1.5ms every 8ms frame. Yellow represents the output from the sensor.

Blue peaks at 3.22V while Yellow peaks at 1.48V when the trigger is completely released and 0.42V when the trigger is completely pulled.
NOTE: As RDC mentions below the 1.48V that you see here should be higher(1.65V), but with the controller assembled the triggers don't release all the way to show that.

Also, just a note that these were done with a pretty cheap oscilloscope(DSO Quad) so they probably aren't as accurate as a nicer scope would produce.

I think the last bit of information is that both triggers are powered up and read at the same time. So even though this was specifically pulled from the RT, the LT looks identical.

I hope this helps others out there.
Title: Re: Input for the xbox one controller rapid fire
Post by: 1TONpete on December 03, 2013, 05:41:55 AM
Reminds me of ps3 sticks....
has anyone tried installing a cg mod yet?
Title: Re: Input for the xbox one controller rapid fire
Post by: SethMods on December 03, 2013, 08:01:29 AM
I have been trying for the last week or so, but I have not been successful. I think it mostly stems from me trying to modify my 360 code instead of starting from scratch.
Title: Re: Input for the xbox one controller rapid fire
Post by: rafaliyo86 on December 03, 2013, 10:30:42 AM
Hi guys

I don´t know anything about codes but I want to "contribute" with a kind of info. Here in my country there is a guy who sells XB1 controllers with rapid fire. He uses a chip with 73 modes, I think he buys it on ebay becuase I have seen this kind of chips there(with a lot of modes)

I say all this becuase I think this code is the same for XBOX360 and XB1 controllers. Here is the vid of the controller (I you need it I can translate what you want):

Mando Xtreme Turbo/Rápid Fire Xbox One (http://www.youtube.com/watch?v=-9En4J70uQY#ws)

Title: Re: Input for the xbox one controller rapid fire
Post by: 1TONpete on December 03, 2013, 11:49:44 AM
I repeat has anyone tried a current working code say flex and wired it for cg? I dont have an xbox one controller to test but I have many cg compatable chips, including a ragnarok.
Title: Re: Input for the xbox one controller rapid fire
Post by: rafaliyo86 on December 03, 2013, 12:01:38 PM
I don´t have xbox one but I am going to buy a controller to try
Title: Re: Input for the xbox one controller rapid fire
Post by: SethMods on December 03, 2013, 01:00:14 PM
1TONpete, I can almost guarantee it won't work. Because the triggers are pulsed on the XB1 you can only read the trigger values at certain times. It's completely different from how any of the X360 triggers worked in that regard. Without syncing your mod to the controller, there is no telling what value you will be getting when you try to read the triggers. Also, with X360 controllers on a CG the triggers go from low to high as the triggers are pulled. Here they go from high to low.

My own code failed miserably even after I reversed the polarity of the triggers. Because the dead part of the frame looks like the trigger is being pulled, and so my mod just auto-fires all the time.

Also rafaliyo86 the triggers don't even power up until the controller is sync'd to a console. So without a console you can't even play around and test voltages and what not.

I hope this helps.
Title: Re: Input for the xbox one controller rapid fire
Post by: 1TONpete on December 04, 2013, 03:43:47 AM
when I was playing w hall sensors last it was when I was messing with ps3 sticks a ways back. ps3 halls had 4 wire connection. the two middle pins where outputs one for each direction the stick would travel. to read these you need to be reading both pins. example push up on right stick would put a high value on one pin and a low on the other. then when pushed the opposite way that v would swing equally and proportionately till zero where the pins have equal v. then they would switch as they passed the axis. the other side would be high and high side would go low.
I don't know if that is how xbox does it but it might help.
Title: Re: Input for the xbox one controller rapid fire
Post by: SethMods on December 04, 2013, 06:32:43 AM
For XB1 I think it is a little simpler. The Hall has three pins Vdd, Vss, and Vout.

Vss is always tied to ground. Vdd is powered up every 8ms or so for about 1.5ms long. And then Vout is proportional to the trigger pull. (...but only when the Hall is actually powered.)

...as can be seen above in the screen captures.
Title: Re: Input for the xbox one controller rapid fire
Post by: Hazer on December 06, 2013, 07:44:43 PM
So, what we have here is a Hall sensor that has a powered analog output, that swings from high when 'released' to low when 'pulled'.

XB360 triggers were pots, so it was easy to overide. Hall sensors are analog outputs, they are meant to source current to provide as accurate an output voltage as possible. The pulsing is simply a way to save battery life, it has nothing to do with manipulating the signal.

So your problem is this: How to force a 'pulled' trigger back to a high voltage (1.5V). The sensor will not happily let you do this like with the resistive triggers.

OK. I am working directly from these pictures and videos, I am going to do some major guessing here. U10 and U11 look purely like transistors. They are powering the RC filter that RDC mentions. This them turns the RT and LT inputs to 1.5V. Those rectangular ICs look like the Hall effect. What is funny is that those ICs do not have solderpds. Which would be fine since these are magentic ICs anyway. The RT and LT PCB trace goes directly underneath these. I am guessing that there are permanent magnets in the triggers, and coupled with these ICs (seen as MYLAR in the bare PCB scans) then nullify the current passing underneath them as it goes to the main IC analog inputs.

In order to pull the voltage high again, you could try dumping 1.5V onto the RT/LT lines. This may be bad for the circuit though. Using resistor to buffer it would help. Another way to get this done would be to cut the trace and run it through an analog switch where you can switch from one input (the actual RT line) to another (permanent 1.5V). This would not be ideal, but it would get the job done much cleaner.

So the question is, has anyone tried forcing Vdd onto the RT line yet with the trigger pulled?
Title: Re: Input for the xbox one controller rapid fire
Post by: RDC on December 06, 2013, 07:59:29 PM
Those 'rectangle' looking ICs are just bumper pads for the Triggers so they don't hit the PCB, the Mylar silk is for them. They fool everyone at first glance. ;)

U10 and U11 are the Halls, they are what make the voltage 1.5v (1.65v actual) as the Output of them is half of VDD. The ~1.5v measurement is what you'll get if the shell is together, as the Trigger get's pushed in a bit, thus the Magnet will sit a little bit closer to the Hall and do it's thing. If the Magnet is turned around, then the voltage will swing from 1.65v to VDD NOTE: This was done only as a test with the Hall removed from the controller.

The Trigger 'can' be disabled by forcing the line Hi.
Title: Re: Input for the xbox one controller rapid fire
Post by: SethMods on December 06, 2013, 10:00:56 PM
So the question is, has anyone tried forcing Vdd onto the RT line yet with the trigger pulled?

So...the Arbiter 4 is tied directly to the RC filter. (I think that's probably the most popular XB1 RF mod out...as there aren't many.) I do mine the same way and go all the way up to Vdd to force a trigger release. I literally have no idea if it's safe. It wouldn't surprise me if it wasn't.
Title: Re: Input for the xbox one controller rapid fire
Post by: Hazer on December 07, 2013, 09:05:29 PM
Then this should be real easy to rapidfire. I would be surprised if the old codes did not work.

Unless there is a problem with the timing of when the halls are pulsed on/off. If that was the case, you could simply use the same type of code that was used for the PD3 controllers where you just wait for that pulse, then run your logic.
Title: Re: Input for the xbox one controller rapid fire
Post by: w02057 on December 09, 2013, 08:10:34 AM
Does it matter whether the PIC is connected directly to the RC filter or to the output pin of the hall sensor?

Forcing the output high to "force the trigger released" will probably work as Hazer and Seth have both said, but could be potentially damaging to the sensor / draw quite a bit of current.
Title: Re: Input for the xbox one controller rapid fire
Post by: SethMods on December 09, 2013, 08:52:45 AM
My (limited) experience was that when I soldered to the sensor side of the filter I couldn't source enough power to completely drive the trigger completely released. (I only saw this early on in my testing though as I quickly moved to the MCU side of the filter.)

That is to say "Your mileage may vary."
Title: Re: Input for the xbox one controller rapid fire
Post by: w02057 on December 09, 2013, 03:10:07 PM
Ah yes I've just noticed on your o-scope screenshots that when the trigger is fully pressed the Vout voltage is about 0.25-0.3v so no wonder your PIC couldn't drive the line high when pressed.

That leaves soldering to the MCU side of the RC filter, which risks removing the resistor / capacitor all together if heated for too long whilst soldering.

I think I may have an idea for how you could still connect the PIC to the more accessible Vout pin, but it would require an extra PIC pin and be a little fiddly to pull off, but it would be much safer than potentially desoldering the resistor / capacitor.
Title: Re: Input for the xbox one controller rapid fire
Post by: hotburn7 on December 16, 2013, 02:28:48 AM
if this can help you, I bought a chip, I'll forward the link to install the chip.
The chip uses 20 pin, but we only used 15.

i don't know what chip for now, I will give you the reference when I have received.

http://www.consolecustoms.com/dl/xone/xbox_one_maxfire-one_install_high_res.pdf (http://www.consolecustoms.com/dl/xone/xbox_one_maxfire-one_install_high_res.pdf)

Good day. :drunk:
Title: Re: Input for the xbox one controller rapid fire
Post by: w02057 on December 17, 2013, 03:17:12 AM
if this can help you, I bought a chip, I'll forward the link to install the chip.
The chip uses 20 pin, but we only used 15.

i don't know what chip for now, I will give you the reference when I have received.

http://www.consolecustoms.com/dl/xone/xbox_one_maxfire-one_install_high_res.pdf (http://www.consolecustoms.com/dl/xone/xbox_one_maxfire-one_install_high_res.pdf)

Good day. :drunk:

Oh I wouldn't bother looking to that guy for inspiration, his method is very "amateur-ish" and he obviously has limited electronics knowledge.
He's connecting to the sensor side of the RC filter and is using two PIC pins to supply enough current to force the trigger into a released state when pressed. A PIC pin is limited to 25mA source and sink, so him using two pins suggests the trigger requires anything up to 50mA.
I'm sure Hazer will agree, forcing the Vout line of the hall sensor from 0.25v-0.3v to Vdd with the sensor having a minimal internal resistance to ground is a bad idea. With his two pin approach you could have anything from 26-50mA flowing through the sensor, it won't like you for that.

But hey it works so he's happy as he's been able to get his product to market quicker. But it would be interesting to see whether there will be a surge of refunds a few months down the line, when the hall sensors in people's controllers start to prematurely wear out.
Title: Re: Input for the xbox one controller rapid fire
Post by: navydude on December 17, 2013, 11:43:30 AM
Would it help to put a resistor in this location? is there a way to avoid the controller crapping out before its time? I am thinking of ordering from this guy as he is the only one selling chips at this time. I have several 12f683 chips from modding 360 controllers but not sure if they will work with this Xbox One controller. I have a programmer also but not really a code writer. If anyone has any input please come forth. Hazer ol master can you shed any new light on these yet?
Title: Re: Input for the xbox one controller rapid fire
Post by: rapidfiremoddr on December 19, 2013, 05:54:38 PM
I've been spending a lot of time tinkering with this. I've figured out that if you pull the trigger sensor node to 3v Vdd then it will simulate a trigger release and stay released. I'm trying to figure out how I can implement it such that I can release it when I want it today. As has been stated, the chip is not enough to pull it high.

Anyone gotten further on this?
Title: Re: Input for the xbox one controller rapid fire
Post by: GrammatonKlerik on December 20, 2013, 10:26:44 AM
In the course of my padhack I've done some analysis and SPICE simulation on what I believe are correct hall effect sensors used on the XB1 controller.  Since these are linear/ratiometric hall sensors, you can more or less treat them as a voltage source.  Looking through some datasheets it appears a common figure for absolute maximum current into/out of the Vout pin is 10mA.   With a trigger pulled, the Vout pin will be ~0.4V and if you put 3.3V on the other end of that RC filter you're going to dump 29mA into the sensor and that is no bueno.  Note this is also why that mod chip linked above uses two pins tied together to source that much current. It may work for a while but each time you do it you're stressing the part to an early grave.

So the good news is there IS an answer on how to get this to work.  The bad news is it will require cutting the trace that leads from the Vout pin to the RC filter and you will need two external components.   The most important component of the two is a unity gain op-amp which will isolate the sensor's output from the current you need to drive to get the line to go high.  The 2nd component is a series resistor going from your PIC output pin that ties to the MCU side of the RC filter to act as a voltage divider so that your 3.3V PIC output ends up at 1.45V to the MCU.

I've simulated all this in LTSpice using a the pulsed voltage for the 'Vhall' source and syncing it to a switch which connects it to the line after the RC filter and everything looks good.  Of course you'll still need to write the code which syncs up with the sensor's power-on interval and then do some checks every so often to see if the user is still pressing the button but that doesn't sound too complicated.

P.S.
Not bad for a first post amirite?  :winker:
Title: Re: Input for the xbox one controller rapid fire
Post by: navydude on December 20, 2013, 12:41:15 PM
So if i solder behind the resistor then i would be OK? Look at this picture and tell me if this would be right. The voltatge could then be dropped in half to 1.5v and be safe enough to use without damaging the sensor. Correct?


(https://acidmods.com/forum/proxy.php?request=http%3A%2F%2Fs28.postimg.org%2Fcsrncfzbd%2FAlt_Solder_locations.jpg&hash=ee85814e5aa0a225f3e2ab314d3d33e8769435b1) (http://postimg.org/image/csrncfzbd/)
Title: Re: Input for the xbox one controller rapid fire
Post by: rapidfiremoddr on December 20, 2013, 01:38:40 PM
In the course of my padhack I've done some analysis and SPICE simulation on what I believe are correct hall effect sensors used on the XB1 controller.  Since these are linear/ratiometric hall sensors, you can more or less treat them as a voltage source.  Looking through some datasheets it appears a common figure for absolute maximum current into/out of the Vout pin is 10mA.   With a trigger pulled, the Vout pin will be ~0.4V and if you put 3.3V on the other end of that RC filter you're going to dump 29mA into the sensor and that is no bueno.  Note this is also why that mod chip linked above uses two pins tied together to source that much current. It may work for a while but each time you do it you're stressing the part to an early grave.

So the good news is there IS an answer on how to get this to work.  The bad news is it will require cutting the trace that leads from the Vout pin to the RC filter and you will need two external components.   The most important component of the two is a unity gain op-amp which will isolate the sensor's output from the current you need to drive to get the line to go high.  The 2nd component is a series resistor going from your PIC output pin that ties to the MCU side of the RC filter to act as a voltage divider so that your 3.3V PIC output ends up at 1.45V to the MCU.

I've simulated all this in LTSpice using a the pulsed voltage for the 'Vhall' source and syncing it to a switch which connects it to the line after the RC filter and everything looks good.  Of course you'll still need to write the code which syncs up with the sensor's power-on interval and then do some checks every so often to see if the user is still pressing the button but that doesn't sound too complicated.

P.S.
Not bad for a first post amirite?  :winker:

Very helpful. Where is this trace from the Vout pin to the RC filter exactly?
Title: Re: Input for the xbox one controller rapid fire
Post by: SethMods on December 20, 2013, 02:19:49 PM
So if i solder behind the resistor then i would be OK? Look at this picture and tell me if this would be right. The voltatge could then be dropped in half to 1.5v and be safe enough to use without damaging the sensor. Correct?


(https://acidmods.com/forum/proxy.php?request=http%3A%2F%2Fs28.postimg.org%2Fcsrncfzbd%2FAlt_Solder_locations.jpg&hash=ee85814e5aa0a225f3e2ab314d3d33e8769435b1) (http://postimg.org/image/csrncfzbd/)

I don't think anyone knows for sure, but you have a lot of feedback from a lot of electrical experts here (myself very much excluded...as I am more of a programmer) that seem to indicate you are likely to damage the hall unless you cut the trace and add some circuitry to completely isolate the hall from the output of the PIC. (...even if you connect on the far side of the filter to help minimize the current going to Vout of the Hall.)


With that said my two cents is that all of this modding of controllers entails some amount of risk. (Risk that you might get caught, risk that you might damage something in the installation, risk that the mod might damage something over time.) Me personally I'm going to keep playing around with this until something does break. And when that happens I'm going to try to repair it and go at it again. (Again just my two cents. You have to decide for yourself what you want to do.)


rapidfiremoddr, if you look at the picture that navydude posted on the left side you will see two solder points for the RT. The red indicates Vout for the Hall sensor (that 3 legged chip). The beige represents the far side of the filter (made up by those tiny parts, a resistor and a capacitor). The trace goes between those two. It is the only trace connected to Vout.

GrammatonKlerik, it was indeed a very nice first post. You are giving a lot of us too much credit though. It'd be really nice if you submitted some part numbers and a schematic of what you expected would work. Guys like me can't even spell Op-Amp.
Title: Re: Input for the xbox one controller rapid fire
Post by: rapidfiremoddr on December 20, 2013, 02:54:49 PM
I tried using a unity gain op amp, but it was still not enough to keep it pulled up. I'm running out of ideas.
Title: Re: Input for the xbox one controller rapid fire
Post by: SethMods on December 20, 2013, 04:20:36 PM
That's odd. I don't seem to have a problem with a 12f683. I'll see if I can get some screenshots.

Ok, I got some screenshots.
First, a little disclaimer. This is my modified XBox360 code, so it is sync'd on the read to know when to read the triggers, but for output it doesn't care. It outputs all the time. It's already been mentioned how dangerous this is.


This is what Vout looks like normally with the trigger released.
(https://acidmods.com/forum/proxy.php?request=http%3A%2F%2Fs30.postimg.org%2F4vbimxjml%2FIMAG001.jpg&hash=fa24e9be46ec9df67493f3947119214db9dd5d8c) (http://postimg.org/image/4vbimxjml/)


This is me driving it around 20 shots per second.
(https://acidmods.com/forum/proxy.php?request=http%3A%2F%2Fs30.postimg.org%2Fz925byqvx%2FIMAG002.jpg&hash=08ce49e213d6ff7ddff626c7bedbf85792b31a0a) (http://postimg.org/image/z925byqvx/)


I'd be interested to hear what chips people are using that they are having a problem.

I guess I should also mention that I am reading these signals at the PIC from the MCU side of the filter where I am connected.
Title: Re: Input for the xbox one controller rapid fire
Post by: GrammatonKlerik on December 20, 2013, 05:48:44 PM
First off, I want to reiterate what SethMods just said because it's the straight up truth.  Proceed at your own risk, these are uncharted waters we are swimming in.

With that said my two cents is that all of this modding of controllers entails some amount of risk. (Risk that you might get caught, risk that you might damage something in the installation, risk that the mod might damage something over time.) Me personally I'm going to keep playing around with this until something does break. And when that happens I'm going to try to repair it and go at it again. (Again just my two cents. You have to decide for yourself what you want to do.)
Everything I'm posting below is just simulation.  I actually have no desire to do a rapidfire mod, I was only interested in a padhack to get my fightstick to work on the XB1.  Pulling the line low to register a press is a much easier feat than driving it high because you only have to drop the line to ~1.25V (400mV drop) for it to register a button press (at least in fighting games like KI.)  Forcing it high on the other hand means you have to go from 0.4V all the way up to 1.45V (~1V swing.)  Even though I have no interest in rapid fire I thought I would see if I could solve this issue.  For one thing I owe this site a great deal of gratitude for the really in-depth PCB scans and o-scope traces from RDC and SethMods; so this is me giving back as much as it is a cool problem to solve.


First, here is a schematic and resulting simulated waveform of when you hook up your PIC pin to the RC filter through a 180ohm resistor.   This is not nearly as good as the op-amp method (which is shown below) but it actually gets you pretty close to the limit of what the sensor can do at 10.5mA (this is assuming 10mA really is the limit, I've seen ones go down as low as 5mA.)  I should also note that the 10mA spec is for absolute max output current and I'm assuming this is also the limit for how much current it can sink; I may be completely off base with this assumption and the sinking current value through the output pin might be way, way lower.  The 180 resistor is there because you don't need to drive the line to 3.3V to release the trigger, you just need to go to 1.45V.  I also just guessed at the value of the filter cap to be 1uF, it might be much smaller.  I choose 1uF because it gave a cutoff frequency 10x greater than the 125Hz VCC line going into the sensor.

(https://acidmods.com/forum/proxy.php?request=http%3A%2F%2Fi.imgur.com%2Fm04O1yq.png&hash=09c2a42efb1a50365adcde99af22ce6fd55e51bb)

Here are the resulting waveform.  Vmcu is what the signal looks like going into the XB1's MCU.  You can see that my simulated input (Vhall) shows what you should see if the user pressed and held the trigger down on the 2nd cycle.  My simulated PIC pin via the switch (Vswitch) then forces every other pulse to 1.45V so that the XB1 registers a trigger release followed by a pull.  I wasn't sure if the XB1 would count multiple hits during a single frame so I went with this method instead.  Since I'm skipping every other frame, the max trigger pull rate is 62 trigger pulls/second; I'm going to guess that is more than adequate.

(https://acidmods.com/forum/proxy.php?request=http%3A%2F%2Fi.imgur.com%2FTiBb9uT.png&hash=acb805966ad5b90335625aa2f7d04aa0018fd9d4)

Now here is the schematic with an op-amp.  I choose an LTC1152 because it can be supplied by a single 3V source, it's high speed and it's designed for exactly this type of application, i.e. a unity gain buffer.  Here is the datasheet (http://cds.linear.com/docs/en/datasheet/lt1152.pdf) for it.  The simulation also shows we need a much lighter series resistance of 400 ohms to get to 1.4V.

(https://acidmods.com/forum/proxy.php?request=http%3A%2F%2Fi.imgur.com%2FNRKpmVq.png&hash=22944e35c3825085a2e36372b6e6a3f6e2ff27e3)


And finally here is what the output looks like with the op-amp in place.  All but the current going into the sensor I(Vhall) waveform looks more or less identical before we put the op-amp in; which is exactly what we want. Instead of shoving 10.5mA down the throat of the sensor, we reduce that by 6 orders of magnitude to 10 nanoamps!

(https://acidmods.com/forum/proxy.php?request=http%3A%2F%2Fi.imgur.com%2F3YS0FYc.png&hash=50183627f1f12aa37da45c17c289d8d8c27418dd)

P.S.
LTSpice is 100% free.  It used to be a cost product but then Linear Technologies bought it to give away for free to use as a marketing tool.  No surprise that LTSpice has very detailed spice models for everything Linear makes.  There are plenty of online tutorials if SPICE/schematic simulation is new to you; I highly recommend you give it a shot if this stuff interests you in the slightest.

P.P.S
I just realized it's not too clear on how the switch (SW) and the voltage source (Vswitch) inter-operate.  The way to close the switch in LTSpice is by providing a voltage source across its pins that is greater than 0V.  This is why the Vswitch waveform goes from -1 to 1.  This will simulate the PIC pin going from high-impedance (floating) to VCC.
Title: Re: Input for the xbox one controller rapid fire
Post by: SethMods on December 20, 2013, 06:07:42 PM
 :tup: Nice!!!  :tup:
Title: Re: Input for the xbox one controller rapid fire
Post by: Hazer on December 21, 2013, 09:07:05 PM
Op-amp seems a little much.

Seth, are you saying that you can directly drive a release with a 12F683? It sounds like people are saying that they cannot get rapidfire to work.

As I see it, the series resistor in GrammatonKlerik's first post would be the right way to drive this (the Hall sensor would drive its output, while the PIC would drive the 180 Ohm resistor high, leaving a voltage divider for input into the MCU of the controller. The best way to do this would be use a comparator pin on the PIC to see when the trigger gets pulled, then react to that. Kinda like how the PS3 controller code works.

Oh, it might be time to start using the 18F14K50. Stop screwing around with the 12F683 and move on up to USB. For Christs sake, I left enough USB code on these forums for you guys to do anything you want.

Lastly, if it really does come down to cutting traces, a better method would be to use an analog switch.
Title: Re: Input for the xbox one controller rapid fire
Post by: rapidfiremoddr on December 21, 2013, 11:16:48 PM
Well, I got mine working. I used a BJT. Base connected to the pin of the PIC, collector to Vdd, and emitter to the trigger node. When the pin of the PIC is low, the trigger node is at high impedance, when the pin is high, the trigger will be stuck at ~2.4V, simulating a release. I also measured only about .5mA of current when this is occurring.
Title: Re: Input for the xbox one controller rapid fire
Post by: GrammatonKlerik on December 22, 2013, 11:21:55 AM
So you can get things working without the op-amp and just the 180ohm resistor but you're definitely operating the sensor out of spec when you do that as I've never found a data sheet on a linear sensor that says its abs max output current is any more than 10mA; I've found plenty that say they can only push 3-5mA so 10mA is being really liberal.

So as it turns out I had an issue on my pad hack attempt where the MCU thought one or both of my triggers were being constantly held down. The outcome of that was that pressing 'A' on a home screen tile would visibly register by flashing but no action was taken.  Long story short, something got FUBAR'd to where the Vcc pin and GND pins for the sensor was shorted; TP17 still showed 3.3v so not sure what's up with that. 

In any case this forced me to find a way to release the triggers without the sensors and I found that way and I think it's going to make you rapid modders happy because I believe it means your 360 code should work as is.  All that it requires is the removal of the RC filter.

With the RC filter removed there is no longer a path for the sensor to influence the trigger pins of the MCU, so we need to force this high manually. What I did was take the 5V USB rail and create a voltage divider using a 330ohm resistor and a 1k trim pot I had on-hand. I dialed the trim pot to 808 ohms to make the output voltage exactly 1.45V. I tied this voltage to the bare pads of where the RC filter used to be (the bottom pads) and my trigger issue went away.

Because I had a 1k trim pot at the top of my divider I had a great opportunity to vary the output voltage down to see just exactly what voltage the XB1 code used as it's threshold for a trigger pull. I'm happy to report that this voltage appears to be somewhere between 1.31v and 1.33v - that is the voltage your PIC pin must drive above for a trigger release. I could have stopped there but I wanted to see what would happen if I drove the voltage up all the way to 3.3V.  As we saw from SethMods's o-scope this voltage never goes above 1.45V so I risked damaging the board by doing this but screw it, science. I'm happy to report 3.3V (well 3.29v) worked without issue.  With that in mind I removed the voltage divider and tied TP17 (3.3v) to the trigger pins but for some reason I'm not sure of this loaded down that rail to the point where it was only putting out ~1v so I quickly removed it. I think this is just an issue with my board so you guys may be ok using that rail unless a PIC can regulate 5v down to 3.3v in which case I would do that.

So now all that's left to do is tie the trigger pins to the 3.3v rail through a 1k pull-up resistor and then tie your PIC  pin to that same node and drop it to GND when you want a button press.   This whole setup essentially turns the trigger buttons to act like all the other buttons. Ill post a schematic when I get a chance but hopefully it made some sense.

Edit
One more thing I forgot which is of interest to rapid modders. You still need to know when a trigger pull happens to take appropriate action and all you need to do for that is tie the output of the sensor to your PIC and use that voltage for signaling purposes. I.e.when the voltage of the sensor goes below 1.31v, the trigger is being pressed so start rapid fire. You still need some code to sync up to the 8ms frames so I lied a bit, there is a bit of extra code to add.
Title: Re: Input for the xbox one controller rapid fire
Post by: SethMods on December 22, 2013, 06:08:57 PM
Op-amp seems a little much.

Seth, are you saying that you can directly drive a release with a 12F683? It sounds like people are saying that they cannot get rapidfire to work.

As I see it, the series resistor in GrammatonKlerik's first post would be the right way to drive this (the Hall sensor would drive its output, while the PIC would drive the 180 Ohm resistor high, leaving a voltage divider for input into the MCU of the controller. The best way to do this would be use a comparator pin on the PIC to see when the trigger gets pulled, then react to that. Kinda like how the PS3 controller code works.

Oh, it might be time to start using the 18F14K50. Stop screwing around with the 12F683 and move on up to USB. For Christs sake, I left enough USB code on these forums for you guys to do anything you want.

Lastly, if it really does come down to cutting traces, a better method would be to use an analog switch.

Yeah, I had no problems driving high and low using 1 pin (not two together) of a 12f683.

My (new XB1) code is very similar to my PS3 code which mimics everyone elses approach, except I chose to use ADC instead of a comparator. (In my PS3 I found it was imperative that a comparator was used as the timing was more sensitive-500 uS per input. But here you have almost 1.5ms for the triggers. So floating 20uS in catching that rising edge doesn't seem to matter too much.)

And you are preaching to the choir when it comes to the 18f14k50.
Title: Re: Input for the xbox one controller rapid fire
Post by: rapidfiremoddr on December 22, 2013, 06:56:00 PM
Yeah, I had no problems driving high and low using 1 pin (not two together) of a 12f683.

My (new XB1) code is very similar to my PS3 code which mimics everyone elses approach, except I chose to use ADC instead of a comparator. (In my PS3 I found it was imperative that a comparator was used as the timing was more sensitive-500 uS per input. But here you have almost 1.5ms for the triggers. So floating 20uS in catching that rising edge doesn't seem to matter too much.)

And you are preaching to the choir when it comes to the 18f14k50.

I don't know how you did it, because I was definitely not able to drive it high with one OR two pins of the 12f683.
Title: Re: Input for the xbox one controller rapid fire
Post by: SethMods on December 22, 2013, 08:01:56 PM
GrammatonKleric, if I understand your comment correctly I think what you are describing is "essentially" cutting the trace between the Hall-Effect Sensor and the MCU. Tie one side to a PIC pin for input and the other side to a PIC pin for output. The downside as you mentioned is that you are taking the analog output from the hall and effectively turning it into a digital output before it hits the MCU.

rapidfiremoddr, what points are you tying to on the XB1 controller to power your PIC? Is it possible that you are not providing your PIC with enough power(current)?


Also, I have been mulling over the fragility of the hall sensors the last few days. I'd like to challenge some of the things that are being said. Every person that has made a comment about the halls that has an electronics background seems to agree that if you drive Vout higher than Vdd you will immediately damage the sensor. Yet you can tie 3.3V to the Vout pin and not damage these things. Even though the Vdd is pulsing (held at 0V for a majority of the time). So I'm wondering if there isn't some extra stuff built into the halls for protection that aren't seen in "typical" hall-effect sensors.

Also, I'm trying to say Hall-Effect Sensor as many different ways as possible since I don't know which are appropriate and which aren't. I'm hoping to get it right at least once per post.  ;-)
Title: Re: Input for the xbox one controller rapid fire
Post by: GrammatonKlerik on December 22, 2013, 09:31:27 PM
GrammatonKleric, if I understand your comment correctly I think what you are describing is "essentially" cutting the trace between the Hall-Effect Sensor and the MCU. Tie one side to a PIC pin for input and the other side to a PIC pin for output. The downside as you mentioned is that you are taking the analog output from the hall and effectively turning it into a digital output before it hits the MCU.
Yep, exactly right. As for the downside, is the analog value of the trigger ever applicable in games that people desire to have rapid trigger mods for?  I guess it would make the controller dedicated to these types of games where it's not important.

Also, I have been mulling over the fragility of the hall sensors the last few days. I'd like to challenge some of the things that are being said. Every person that has made a comment about the halls that has an electronics background seems to agree that if you drive Vout higher than Vdd you will immediately damage the sensor. Yet you can tie 3.3V to the Vout pin and not damage these things. Even though the Vdd is pulsing (held at 0V for a majority of the time). So I'm wondering if there isn't some extra stuff built into the halls for protection that aren't seen in "typical" hall-effect sensors.

I can tell you that I've blown 4 out of 4 across two pads and I'm not even trying to drive these things to anything but GND.  The first ones I tried to pull to ground on the pin themselves as that was before I saw these forums and didn't realize exactly what was going on.  The other two I made sure to tie to the MCU side of the RC filter, although I did not have another series resistor so all 1.65v was dropped across the 100ohm filter resistor pulling 16mA.  I'm wondering if there is some sort of latch-up like phenomenon going on.
Title: Re: Input for the xbox one controller rapid fire
Post by: SethMods on December 23, 2013, 06:43:00 AM
I can tell you that I've blown 4 out of 4 across two pads and I'm not even trying to drive these things to anything but GND. 

Mind blown! You fried all four halls on two different controllers?!?! I must be the luckiest guy on the planet.
Title: Re: Input for the xbox one controller rapid fire
Post by: navydude on December 23, 2013, 09:52:08 AM
Well, I got mine working. I used a BJT. Base connected to the pin of the PIC, collector to Vdd, and emitter to the trigger node. When the pin of the PIC is low, the trigger node is at high impedance, when the pin is high, the trigger will be stuck at ~2.4V, simulating a release. I also measured only about .5mA of current when this is occurring.

.5mA sounds nice. That amout shouldnt damage the sensor. I do have one problem...what is a BJT? I am by no means a expert at this so Im still trying to figure out what you guys are talking about. lol. Please forgive me. I'm just an average tinkering guy that likes to do things himself. If Seth or rapidfiremoddr would please post pics of what you guys have done that would be wonderful. Thanks.
Title: Re: Input for the xbox one controller rapid fire
Post by: GrammatonKlerik on December 23, 2013, 12:32:35 PM
Well, I got mine working. I used a BJT. Base connected to the pin of the PIC, collector to Vdd, and emitter to the trigger node. When the pin of the PIC is low, the trigger node is at high impedance, when the pin is high, the trigger will be stuck at ~2.4V, simulating a release. I also measured only about .5mA of current when this is occurring.

0.5mA measured where exactly?  If you didn't cut any traces and/or remove any components from the board and measured the collector current by putting an ammeter inline then what you measured is Average current which is not what you care about, you want instantaneous current which you can get with an o-scope or simulation.   The average current is going to be very low because most of the time the BJT is off, but the instantaneous current is still in the 28mA range.
Title: Re: Input for the xbox one controller rapid fire
Post by: GrammatonKlerik on December 23, 2013, 12:42:20 PM
I do have one problem...what is a BJT? I am by no means a expert at this so Im still trying to figure out what you guys are talking about. lol.

A BJT stands for Bi-polar Junction Transistor which is a fancy way of saying a current amplifier.  Think of a BJT, or a transistor in general, as the small on/off valve on the fireman's hose.  He turns the valve a little bit to the ON position and he gets a ton of water current running out of the hose.  Now replace the water with electrons, the valve with the BJT and the fireman's hand turning the valve with the voltage output of the PIC pin.

Mind blown! You fried all four halls on two different controllers?!?! I must be the luckiest guy on the planet.

Actually now that I think of it, I was trying to move the rechargeable battery pack off the board so I could fit it into my fight stick.  I may have screwed something up in my attempts to do this because it never did work.


[admin]Please click edit to modify . Please do not double post[/admin]
Title: Re: Input for the xbox one controller rapid fire
Post by: Modded Matt on December 23, 2013, 01:03:04 PM
Actually now that I think of it, I was trying to move the rechargeable battery pack off the board so I could fit it into my fight stick.  I may have screwed something up in my attempts to do this because it never did work.


what "rechargeable battery" are you speaking of?
Title: Re: Input for the xbox one controller rapid fire
Post by: GrammatonKlerik on December 23, 2013, 02:22:26 PM
The one from the play and charge kit.  There are 4 little bumper terminals on the board that are only used for the rechargable battery, it's right inbetween the two large tines that normal AA batteries use.
Title: Re: Input for the xbox one controller rapid fire
Post by: rapidfiremoddr on December 23, 2013, 04:32:15 PM
0.5mA measured where exactly?  If you didn't cut any traces and/or remove any components from the board and measured the collector current by putting an ammeter inline then what you measured is Average current which is not what you care about, you want instantaneous current which you can get with an o-scope or simulation.   The average current is going to be very low because most of the time the BJT is off, but the instantaneous current is still in the 28mA range.

The way my code is, the BJT is on 50% of the time when the trigger is held down, so even though its average current it still can't be higher than 1mA. I measured the current from the trigger node (lower right pin of that MCU) to the emitter terminal of the BJT.
Title: Re: Input for the xbox one controller rapid fire
Post by: Hazer on December 23, 2013, 06:03:29 PM
The way my code is, the BJT is on 50% of the time when the trigger is held down, so even though its average current it still can't be higher than 1mA. I measured the current from the trigger node (lower right pin of that MCU) to the emitter terminal of the BJT.

What he means is that the Hall sensor is only on for a short period of time, and then it gets turned off (refer to previous o-scope screens). Your ammeter would average the current over time, not give you the current only during the pulses. So if the pulse is on for only 10% of the time, you are seeing only 10% of the current that happens during the pulse.

Also, I can understand why Grammatonkleriks sensors are broken. Just think about what these sensors are: They drive a specific voltage output related to the magnetic field they are exposed to. Most likely, they are op-amp driven internally. Since the sensors circuit is trying to drive a positive voltage, grounding the output would probably damage that circuit.

Personally, I dont see why anyone wants to even play around with the sensors direct output. What you are trying to manipulate is the MCU input, which (luckily) is on the other side of the RC filter. Keep all modifications there.
Title: Re: Input for the xbox one controller rapid fire
Post by: GrammatonKlerik on December 24, 2013, 02:48:19 PM
What he means is that the Hall sensor is only on for a short period of time, and then it gets turned off (refer to previous o-scope screens). Your ammeter would average the current over time, not give you the current only during the pulses. So if the pulse is on for only 10% of the time, you are seeing only 10% of the current that happens during the pulse.
Yes, exactly that.

Also, I can understand why Grammatonkleriks sensors are broken. Just think about what these sensors are: They drive a specific voltage output related to the magnetic field they are exposed to. Most likely, they are op-amp driven internally. Since the sensors circuit is trying to drive a positive voltage, grounding the output would probably damage that circuit.
The first pair were definitely due to what you just mentioned as connecting directly to the sensor's output pin was the recommended approach on SRK at the time; that has since changed in large part due to this thread.  Shame on me for not doing my due-diligence first.  The second pair I'm going to chalk up to some issue with the PnC pack as there is a direct short on-board between what is normally the VCC pin of the hall sensor to GND; this is with the sensor removed.

In any case I salvaged both boards by effectively removing the hall from the circuit by disconnecting the 100 ohm filter resistor (and cap for good measure.)  I then tied one of the 3.3v test points to a 10K pull-up resistor and then the other side of the resistor goes to the bottom pads of where the RC filter was.  Now I can safely pull the MCU pin to GND to activate a trigger pull just like all the other buttons.  This method will work for you rapid fire modders too if you send the hall sensors output to a comparator pin on the PIC to know when to start rapid fire.
Title: Re: Input for the xbox one controller rapid fire
Post by: SethMods on December 24, 2013, 03:25:13 PM
Guys,
  We are probably going to go round and round on what SHOULD be done. Here's my implementation. Here's what I'll be doing, and aside from somethings like XBox being able to detect a hacked controller because Vout is higher than 1.5V I think this is perfectly safe.

while( trigger > .20V){  //Dwell until hall is being powered
wait 480uS;                   //to allow Vout to settle
readRT();                       //Read and store RT voltage
    if( rt < setpoint ){
        //Execute RF by driving rt high or low for 600uS
       
    }
wait 5ms;                      //This puts us in the dead part of the frame about 2ms before the trigger is powered again

}   //Loop


Here's what the screenshots look like of the trigger being forced high and low.

High.
(https://acidmods.com/forum/proxy.php?request=http%3A%2F%2Fs23.postimg.org%2Ftidrs8nnr%2FIMAG002.jpg&hash=23a4fe1541f46991cf14eeee47b3444d1adf1281) (http://postimg.org/image/tidrs8nnr/)


Low.
(https://acidmods.com/forum/proxy.php?request=http%3A%2F%2Fs10.postimg.org%2Fq5f6go01x%2FIMAG001.jpg&hash=4d5e0f32729455b67697440dac754de81d31d208) (http://postimg.org/image/q5f6go01x/)

Also, I should mention that his was done with a 12f1822. So I've only tested with a 12f683 and a 12f1822, but both seem to have no problem driving Vout as long as you are in between the filter and MCU.

I'll post some open source code when I get around to it.
Title: Re: Input for the xbox one controller rapid fire
Post by: rapidfiremoddr on December 24, 2013, 06:36:27 PM
What he means is that the Hall sensor is only on for a short period of time, and then it gets turned off (refer to previous o-scope screens). Your ammeter would average the current over time, not give you the current only during the pulses. So if the pulse is on for only 10% of the time, you are seeing only 10% of the current that happens during the pulse.

Also, I can understand why Grammatonkleriks sensors are broken. Just think about what these sensors are: They drive a specific voltage output related to the magnetic field they are exposed to. Most likely, they are op-amp driven internally. Since the sensors circuit is trying to drive a positive voltage, grounding the output would probably damage that circuit.

Personally, I dont see why anyone wants to even play around with the sensors direct output. What you are trying to manipulate is the MCU input, which (luckily) is on the other side of the RC filter. Keep all modifications there.

Stupid me! I measured it with an o-scope and it was pulling 50mA- yikes! I tried some different series resistors and 50ohms was the highest I could go and still be able to drive the trigger to sufficient voltage to reliably simulate a release. With the resistor is pulls 25mA. Probably still very high, but unless I figure out a better way, I'm just going to hope for the best with that.



Also, if anyone could point out exactly which pins and where they're referring to with the MCU, resistor capacitor filter, etc. Where are these components and what is connected to what? That would be very helpful
Title: Re: Input for the xbox one controller rapid fire
Post by: SethMods on December 24, 2013, 08:02:27 PM
(https://acidmods.com/forum/proxy.php?request=http%3A%2F%2Fs15.postimg.org%2F7jborbpqv%2FXB1.jpg&hash=d53efdd8689e225cda1600c16d2e10cd2a2529e2) (http://postimg.org/image/7jborbpqv/)

Kudos to RDC for the great board scans.

It goes something like this.

The MCU powers Vdd on the Hall Sensor through some sort of op-amp. Vout on the Hall Sensor reflects how close the magnet from the trigger is. The signal from Vout goes through the RC Filter and then back to MCU.
Title: Re: Input for the xbox one controller rapid fire
Post by: GrammatonKlerik on December 24, 2013, 08:09:35 PM
Glad to see some empirical  data.  I'm curious, does the XB1 recognize multiple trigger presses within a single frame?  Take the o-scope trace of when you forced it high midway into what I will call the 'active region.'  Since the trace stays at 0.45V for about 0.5ms before being forced high, is that recognized by a pull followed by a release?  My guess is no and the ADC on the MCU samples about 50 - 75% of the way in of the 'active region'.

Title: Re: Input for the xbox one controller rapid fire
Post by: Hazer on December 25, 2013, 06:37:24 PM
Its going to take some trial and error to figure that out. The PS3 controllers did somewhat the same thing with a train pulse (although all the buttons were connected to the same input). On that controller, the first half of the pulse was ignored (made it great for reading button presses physically) and the second half of the pulse was counted for the MCU. This made it so the Pic could read each pulse as an input (using comparator as all pulses are analog) and then you could output your override for the second half the pulse.

This could very well be the same case. Most likely, the MCU only checks the pulse once per pulse. So this could drive the maximum rapidfire rate.

In contrast, one thing never discussed is that the old Matrix controller was actually being 'matrixed' at a rate of 10kHz. So the older controllers could very well have been running at an inefficient rate.
SimplePortal 2.3.5 © 2008-2012, SimplePortal