Help needed with load cell / tacho

Hi There,
I am still a newby at this
I have found a sketch for a tacho (rpm counter)
and got it to work quite well then i found a good load cell sketch
and added it to my tacho sketch and it also works well
but now the tacho doesn't work and i cant work out why
I have attached the sketch
and it would be great if somebody can help me

Thanks

tacLoadCell.txt (6.46 KB)

Check your wiring and Interrupt connection . code seems OK.
check below part in mapping

Its not hardware .If i load the tacho part only it works fine
I must be a conflict with the load cell

but now the tacho doesn't work and i cant work out why

Gee, I can't imagine why.

void loop()
 {
   
   //Update RPM every second
   //delay(1000);
   //Don't process interrupts during calculations
   detachInterrupt(0);

Unless maybe the fact that you detached the interrupt handler has something to do with it. Why on earth would you do that?

To prevent the interrupt from firing while you copy data, detaching and (never) reattaching the handler is NOT the way to do that. interrupts() and noInterrupts() is the proper way.

float mapfloat(float x, float in_min, float in_max, float out_min, float out_max)
{
  return (x - in_min) * (out_max - out_min) / (in_max - in_min) + out_min;


   //Restart the interrupt processing
   attachInterrupt(0, rpm_fun, FALLING);
}

Do you really think that code after the return statement is ever going to be executed?

Even if the statement were in the correct place in the mapFloat() function, the mapFloat() function has NOTHING to do with interrupts, so attaching an interrupt handler in the function is stupid.