I've added a Arduino with a vibration motor to my brake pedal - I'd like to build a response curve that would start at 80% brake pressure at 50% strenght then ramp to 100% strength to 95% pressure - then from 95% to 100% pulse the motor to let me know I'm in the "red" zone. I have the curve set but don't see any way to add the pulse when getting to 95-100%
Given how extensive the options are I'm sorta guessing there is a way to do this, am I missing anything?
Thanks!
Hi,
This could be done with 2 effects.
Limiting the first effect to the 50-95% brake pressure range.
And having a dedicated pulse effect if brake > 95, using the blink function
blink(blinkername, blinkdelay, currentstatus)
It would something like that:
blink('BrakePulse', 200, [Brake] > 95)
Hi,
This could be done with 2 effects.
Limiting the first effect to the 50-95% brake pressure range.
And having a dedicated pulse effect if brake > 95, using the blink functionblink(blinkername, blinkdelay, currentstatus)
It would something like that:
blink('BrakePulse', 200, [Brake] > 95)
Ah, awesome - I guess I was assuming you could only create a single custom effect, of course you could do more. Thanks for the suggestion, gonna set this up now. So glad I built this as it's already been extremely helpful, was cheap and so easy to build.
Thank so much for the input,
~Ross
@romainrob Well that didn't do it - no matter what I put in the function it never activates unless I just put [brake] - even putting something simple like [brake] > 25 never activates as shown in the live effects display.
So while I have the second custom effect created I can't get it to pulse or even activate, other than based on the threshold/settings for the response filter. I feel like the blink function might not work in this way but as I can't really find any documentation on it I'm at a bit of a loss.
Any other ideas? Thanks again for your help!
~Ross
@exigeous I forgot, you need a formula returning a result between 0 and 100. My bad.
Try:
blink('BrakePulse', 200, [Brake] > 95) ? 100 : 0
And play with the 200ms value to adjust the pulse rate
@exigeous I forgot, you need a formula returning a result between 0 and 100. My bad.
Try:
blink('BrakePulse', 200, [Brake] > 95) ? 100 : 0And play with the 200ms value to adjust the pulse rate
Well that's not got it either - when I look in the "Raw result" field while editing the formula it bounces between 0 and 100 over and over. Then when in game (or replaying data, wow that feature is awesome) it never activates - my main brake detection does and is vibrating the pedal so I know that's working.
I assume the formula is: If over 95 then return 100, if not then return 0 - correct? Just posted in the Discord as well to see if anyone over there knows, again really appreciate your time and help.
~Ross
The formula is if brake > 95, blink between 0 and 100 every 200ms
I tried it on my weak pedals motors.
It's hard to tune with the inertia, and already pulsating nature of the motors..
I felt ok...ish around 80ms.
I tested with a low threshold of 25 to make it obvious. So:
blink('BrakePulse', 80, [Brake] > 25) ? 100 : 0
Make sure the effect is mapped to a motors.
And double check the output isn't disabled for telemetry replays in the advanced output settings.
The formula is if brake > 95, blink between 0 and 100 every 200ms
I tried it on my weak pedals motors.
It's hard to tune with the inertia, and already pulsating nature of the motors..
I felt ok...ish around 80ms.
I tested with a low threshold of 25 to make it obvious. So:blink('BrakePulse', 80, [Brake] > 25) ? 100 : 0Make sure the effect is mapped to a motors.
And double check the output isn't disabled for telemetry replays in the advanced output settings.
You are a ROCK STAR - I don't understand why this didn't work before, I copy/pasted your code exactly and nothing. It isn't/wasn't the motor assignment as if I just put [brake] it would rumble but now it's working perfectly!
So from 70-95% I get a progressively stronger rumble then at 95% it starts to pulse. The only thing I don't have perfect is when the first one ramps to 95% it would stop so only the pulse is happening, I played around with the code but couldn't work that out so I just turned that effect down a bit and the pulsing one at 100% so while it's doing both technically the pulse is so much louder than I can feel the difference in my foot.
The only odd thing is in some cars the brakes lock up WAY before these, hell the Aston DBR9 in iRacing tends to lock the brakes at around 50% pressure, so I'll either create separate custom effects for different cars or just edit them per car. I do wish there was a way to rename "Custom Effect" as I have 2 now and can't see any way to rename them.
Again thanks so very much!
@exigeous Haha!
I'm afraid results will indeed vary on a per car basis.
You can make the 1st effect stop at 95% brake with this formula:
[Brake] <= 95 ? progress(70, 95, [Brake], 100) : 0
Or even merge both in a single formula:
[Brake] <=95 ? progress(70, 95, [Brake], 100) : (blink('BrakePulse', 200, 1) ? 100 : 0)
But it's probably best to be able to tune them separately