Yes,I´ve read it yesterday and i thing i understand, but what i don´t understand well is if i read something in the interrupt but just when all is finish is not the same that read when we go back to the loop.I am thinking in this particular case, when we hava the variable that is needed update and we go back to the loop for make a copy.is not the same read this variable that we will copy in the loop??? well is not the same and i see the real case no when i did this i have unexpected values and when i read in the loop i have expected values.... but for me it´s a little extrange.

If you do something slow in the interrupt like Serial.println no interrupts can happen for a long time, this means that we will get inaccurate values because we are not able to respond to the new interrupts until we finish the current one. When we do get to respond the values we read will be wrong.

So it is the same variable, but by using Serial.println in the interrupt we were ensuring that it would become inaccurate.

You want to get in and out of interrupts as quickly as possible

If you look here you will see that I am reading timers directly instead of using micros, you can also see the improvement in accuracy in the graphs -

aha, i understand you, thanks a lot Duane. now i ill try to update the RC to my proyect, i am doing a puppet.but i will follow your web, and in some days i hope to probe your fast library.Only one thing , I want to include you in the acknowlegement of my proyect,you have help me a lot,Can you mail me your name to alehop@mononokeproducciones.com

Duane at this moment a haven,t any place for show my proyects but i want to do one blog.Whent this happend of course I put the link to your work.But, one more time, Thanks, this week i want to change my code for include RC control i will tell you how works all together.

I am trying but when I veryfy say that A13 is not declare in this scoope;I soupouse that may be is becouse is not allow by library ....-------------------------------------------------------------------code--------------------------------- PCintPort::attachInterrupt(A13, calcThrottle,CHANGE);------------------------------------------------------------I want to use this pins only becouse I have made a shield for the mega and in the last moment I decide to include RC control so I am trying to keep the shield.... you know if i change the shield i must change all the circuits that i have done and I need to finish the proyect....