We are pleased to announce a new version of IRLib library for receiving, decoded, and sending infrared signals using an Arduino. This represents months of work and is a major restructuring of the code to make it easier to include only those protocols that your application actually uses. Unfortunately the restructuring is so significant that it is not backwards compatible with our original IRLib1. It is however relatively easy to update your applications to use the new libraries. We will continue to leave IRLib 1.x in its original repository on GitHub. We have created a new repository https://github.com/cyborg5/IRLib2 for IRLib2. There will be no new updates to the original version of the code. Because we have changed the name to IRLib2 it is possible to have both versions available in your Arduino libraries folder at the same time without conflict.
Also included is a new feature called “auto resume” which ensures that you can continue receiving a second frame of data while processing the first frame.
The users manual has been expanded to 117 pages and not only includes the complete reference to all classes, methods, and variables that we had before, it also contains a new tutorial section which thoroughly explains all of the sample sketches. And finally we have the long-awaited tutorial on how to create new protocols for the library. You will also want to check out Appendix A which explains the changes between IRLib1 and IRLib2 as well as my rationale for the restructuring and the need to make it no longer backwards compatible.
The users manual is available in Microsoft Word, Adobe PDF, and EPUB formats in the GitHub repository. We will no longer be maintaining online HTML version of the documentation because it was too difficult to split into individual webpages and maintain it for this blog. However the supplied formats should be sufficient for all users.
Although we have thoroughly tested the code, it technically is version beta 0.1. If no major bugs are reported in a month or two we will upgrade it to official version 2.0 release.
We can’t wait to see what all of you will do with IRLib2. Please let us know how you are using the code.