Firmware live stream happening this weekend: viewtopic.php?f=13&p=43195
For anything you'd like to see added to Speeduino
User avatar
By PSIG
#38969
evo_lucian wrote:
Fri Nov 08, 2019 4:35 am
I have always felt that first step in traction control should be ignition retard and followed by cutting of cylinders if it really gets out of hand. Cutting 1 out of 4 cylinders is an automatic 25% reduction in power.
Correct, and why you may want to expand the range simply, by adding more "n" as I outlined. ;) Well, you're sort-of correct, as 1/5 would be a 20% reduction. Using 1/33 would give an average 3% reduction. 1/17 for 6%. 1/9 in my 2nd example for 11%. Dial-in what you need and works best for your steps, as you could freely adjust both the amount and steps of reduction. Tune it.
warhead wrote:
Fri Nov 08, 2019 1:43 pm
That's right!. Would have a retard limit or something and if its not enough, could be used rolling cut or progressive cut and hard cut if its necessary depending user's config.
Here's the reason for the optional 1/n alternative — retard works well for reducing power, but also dumps-in a lot of heat. For the racer in the video it's fine, as he's using much better fuel than most of us on the street. For streeters using det-limited pump gas, randomly dropping a load of heat into a system that is already on the edge of the fuel's capabilities can trip them into detonation or preignition. For those users, progressive power-reduction is a safer alternative without the risks that retard can bring.

Use the one that fits your application.

David
By Falcao
#38971
warhead wrote:
Fri Nov 08, 2019 10:08 pm
Sorry i didn't mention about tunerstudio. That part was copied from other variables, there i learned how works .ini file. I edited it, adding my variables to config pages. Its a great Josh's job, because its all organized and easy to understand. Open the attached .ini and look for "SLIP" or "SPEED" and you will see what i've done.
Oh thank you very much ! Thank you for sharing your work, I will look at your .ini and try to add my own speedometer function 😅
By Fera
#40326
warhead wrote:
Fri Nov 08, 2019 9:43 pm
As simple as this (for now!):

//INTERRUPTS
void vsssetup() {
pinMode(20, INPUT);
attachInterrupt(digitalPinToInterrupt(20), vssdriven, RISING) ;
pinMode(21, INPUT);
attachInterrupt(digitalPinToInterrupt(21), vssundriven, RISING) ;
}

//TOOTH TIME VSS1
void vssdriven()
{
unsigned long dtime2 = currentStatus.dtime1;
currentStatus.dtime1 = micros();
currentStatus.dvsstime = currentStatus.dtime1 - dtime2; //tooth time
}

//TOOTH TIME VSS2
void vssundriven()
{
unsigned long utime2 = currentStatus.utime1;
currentStatus.utime1 = micros();
currentStatus.uvsstime = currentStatus.utime1 - utime2;//tooth time
}

//SPEED
void speedcalc() {
float temp = 60000000 / (currentStatus.dvsstime * configPage2.dvssteeth);
currentStatus.dvsspeed = (temp * configPage2.dvssdiameter * 0.0018846); //dvsspeed=(rpm*diameter*3.141592*60)/1000000;
float temp2 = 60000000 / (currentStatus.uvsstime * configPage2.uvssteeth);
currentStatus.uvsspeed = (temp2 * configPage2.uvssdiameter * 0.0018846);//uvsspeed=(rpm*diameter*3.141592*60)/1000000;

//SLIP
currentStatus.slip = 100 * (temp - temp2) / temp2; //veldif = 100 * (veldriven - velundriven) / velundriven ; //%
if (currentStatus.slip < 0)currentStatus.slip = 0;
if (currentStatus.slip > 255)currentStatus.slip = 255;
}

speedcalc() is executed each 100ms (inside 100ms loop)

Hi, I'm very interested. Would you like to share the code?

@bugster_de I think I may try the map instead of […]

Startup Jaguar V12

This stall issue when computer is disconnected, […]

Hi folks, I have a couple of 14point7 Spartan 2 O[…]

Hayabusa advice

Hello! I'm new here and this is my first post. I'm[…]

Still can't find what you're looking for?