Hi. I have a PIC-based device that is designed to learn IR codes so that it can be controlled. The device has about a dozen functions that should be controllable from an IR remote. However, it doesn't have its own remote control. Instead, I want to be able to learn an arbitrary remote IR code from an arbitrary remote controller, and then respond to that code whenever I see it (by "I" I mean the device). I've looked through the PICList FAQ, and found some helpful information about Sony and Philips IR codes, and IR in general. Unfortunately, none of it really helps. It seems that all learning remotes just regurgitate a learned pulse train; easy enough. What I need to do is learn a dozen pulse trains, then every time my IR module receives a pulse train, I need to reliably match it against one of the dozen I have stored. If it doesn't match any of those, then I just ignore it. This strikes me as memory and processor-intensive, and possibly beyond the PIC's (16F877) capabilities (my PIC is also scanning for front-panel buttons and watching a serial port). A slightly different approach would be to figure out how to decode pulse trains from different remotes into their logical values (address, data, etc). Then, looking up the matching code in a table is easy (easier than matching a table of pulse train descriptions, I think). Surely there is some more clever technique out there that someone has come across. If you know of anything, or have any suggestions, please let me know. Thanks! -- Rick rmann@latencyzero.com.sansspam -- http://www.piclist.com hint: The PICList is archived three different ways. See http://www.piclist.com/#archives for details.