cyborg5 / IRLib

An Arduino library for encoding and decoding infrared remote signals
Other
213 stars 77 forks source link

Implemented settable beginning- and ending timeouts. Cleanup. #11

Closed bengtmartensson closed 4 years ago

bengtmartensson commented 9 years ago

These changes implements settable beginning- and ending timeout. The begin timeout is the time it takes for the receive to time out if no IR activity has been detected. The ending timeout is the amount of silence after the signal required to consider the IR signal as finished. Set this short (e.g. 30 ms) to separate different protocols, set it larger (e.g. 100ms) to lump e.g. a NEC1 signal with its repeats.

I removed some Windows-1252 characters, since the Arduino IDE was complaining. I also fixed the -Wall complier warnings, except for one.

cyborg5 commented 8 years ago

My apologies for not responding to this pull space sooner. I had gotten away from working on IRLib for quite a while but I'm busy working on a major rewrite for version 2.0 now. I understand the ending gap configuration. I had planned something similar for 2.0. I don't understand the significance of the beginning timeout. Why should we care how long the beginning gap is? Even if the counter overflows and wraps around, we always ignore that gap anyway. The only time it's useful is if 2 frames of data are coming rapidly after one another we might want to know how much time elapsed between them. Also if the buffer overflows from a very very long sequence such as those used by air conditioners, we can look at that short gap and the fact that we had 100 entries and know for certain that would probably did an overflow.

bengtmartensson commented 8 years ago

The "beginning timeout" is the time it takes for the receiver to give up receiving if nothing arrives, and to report "timeout". For using the Arduino as sensor for an interactive program like IrScrutinizer, this is valuable.

But I can also say that I have now my own "IRlib", https://github.com/bengtmartensson/Infrared4Arduino, so I am no longer a "stakeholder".

cyborg5 commented 4 years ago

This library is depreciated and will no longer be maintained. Please use. https://github.com/cyborg5/IRLib2