Static Wikipedia February 2008 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu

Web Analytics
Cookie Policy Terms and Conditions Consumer IR - Wikipedia, the free encyclopedia

Consumer IR

From Wikipedia, the free encyclopedia

Consumer IR, or CIR, refers to a wide variety of Infrared Remote Control Protocols. The term is often used to refer to an infrared port on a PDA, laptop, or other computer that supports CIR as well as other protocols such as IrDA. Since the Consumer IR protocols are for the most part not standardized, computers and universal remotes often memorize a bit stream, possibly with compression and possibly without determining the actual bit rate, and play it back. Similarities between remotes are often largely the accidental result of the finite selection of infrared encoder/decoder chips (though now microcontrollers are also used) and IR receiver modules or imitation of the older chips rather than by design. Manufacturers of consumer appliances often do reuse the same protocol on many similar devices, though for each manufacturer and device type there are usually multiple protocols in use (just look at the code listings for any universal remote).

  • Infrared Wavelength: around 930nm [1] 870nm and 950nm 8[2]
  • Carrier Frequency: Usually fixed carrier frequency, typically somewhere between 33 to 40KHz or 50 to 60KHz. [3]. Examination of LIRC datafiles shows the vast majority use 38Khz. A few protocols such as ITT's protocol [4] do not use a carrier frequency. Electronics component distributer Digi-Key carries Panasonic infrared receivers with 36.7, 38, 40, and 56.8KHz carrier frequencies and Mouser carries Vishay receiver with carrier frequencies of 36, 38, 56, 455, and 33.0 to 57KHz with maximum data rates of 800 and 4000bps (20k for the 455khz carrier).
  • Modulation Schemes: typically 100% Amplitude Shift Keying (ASK). May also involve pulse position modulation, biphase/manchester encoding, etc. of the transmitted pulses (as opposed to the carrier itself). Most remotes use the length of the space between pulses to encode data.
  • Data Rate: usually significantly lower than the carrier frequency. Most protocols seem to range between 120hz and 4Khz. Data rate may be variable as some common bit encoding schemes vary the timing between pulses to distinguish between a 1 and 0.
  • Encoding: varies based on encoder/decoder chips used. Usually includes some redundancy for error detection or correction. For example, some NEC chips send the same code four times (inverted the second and forth time).
  • Key to code mapping: varies from remote control to remote control. In many cases, the codes sent may have more to do with the row and column positions on the remote than any unified plan.

With the ready availability of inexpensive microcontroller chips, many remotes may be based on such chips today rather than dedicated remote control encoder chips. This makes it easier to keep the same codes when moving the buttons on the remote. Also, the decoder functionality will often be integrated into a more complicated micro-controller which controls the A/V device, eliminating the need for the separate chip. In the absence of a viable standard the microcontrollers can be used to emulate the ambiguous protocols used by the old dedicated encoder/decoder chips and it appears that this is often the case. There are even stripped down 4 bit mask programmable microcontrollers designed only for remote control use (such as NEC uPD6124A (discontinued), uPD6125A (discontinued), uPD6126A (discontinued), uPD6132, uPD6133, uPD6134, µPD1724x, uPD67AMC, uPD68AMC, uPD68AMC, uPD6P9M1MC (OTP), upd6PLM3MC (OTP), and µPD17932x (8-bit)). These offer keyboard wake, low power standby modes, and sample controller code though similar features are present on more general PIC microcontrollers.

Sony manufactured a number of consumer devices of different types which shared a common protocol, called S-link. A jack on each device allowed the remote control signals to be interconnected between devices. The protocol included the useful but unusual feature of supporting more than one of the same type of device (such as multiple CD changers). Some A/V components could generate informational status codes that could be used to do things like automatically stop your tape deck when the CD you were recording stopped playing. Software running on a PC with a suitable interface could also control the A/V components and monitor their activity; for example, your computer could tell what disk and track were playing in your CD changer and look up the titles in one of the internet CD databases. Sony charges $5000 [5] for access to the S-Link documentation.

Some infrared wireless PC keyboards and mice use protocols similar to Consumer IR devices. Some PC remote controls used for controlling computer media players, controlling presentation software, or other applications also use Consumer IR style protocols. Some computer remotes, keyboards, and mice may also use IrDA protocol though IrDA was designed for very short range use.


The RC5 and RECS 80 codes have been casually referred to as international standards [6] [7] although it appears that they may just be the proprietary protocols developed by Philips and used in some of their ICs used by various manufacturers. Note that Philips Semiconductors is now NXP. RECS80 uses pulse position modulation and RC5 uses bi-phase. The Philips SAA3004, SAA3007, and SAA3008 encoders used RECS80, and the SAA3006 and SAA3010 encoder chips used RC5. The SAA3049A decoder chip decoded either type. All of these chips have been discontinued.

The lack of standardization creates a lot of problems for consumers. The need to purchase universal remotes because the original can't control related functions on interconnected devices and upgrade them when you buy a new device, universal remotes that don't adequately control the devices, inability to control more than one of the same type unit, most consumer setups can't stop tape recording when CD ends, VCRs are often unable to control cable channels, etc. A well designed Consumer IR standard would have fields for device type (CD player, DVD player, TV, VCR, Cable Box, Receiver, Tape Deck, DVR, home automation, etc), unit number (settable via dip switches on remote and A/V component or other means), and function code and would standardize the values in each field. It would address the semantic differences between different similar operations (separate play and pause vs. play/pause, stop and eject vs stop/eject, etc) and would recommend that devices accept all of the semantic variations, not just the ones present on the original remote. This would allow consistent behavior across devices with a universal remote (or other control device) and would allow enhanced remotes with features like jog/shuttle. It would also allow devices to talk together, even across brands. Even if such a standard were created today, however, it would be years before consumers saw the full benefits due to legacy devices.

An analysis of remote control definition files from the LIRC project yielded the following statistics on carrier frequency:

  • 111 38000Hz
  • 81 56000Hz
  • 41 40000Hz
  • 32 36000Hz
  • 13 39200Hz
  • 8 32000Hz
  • 3 40244Hz
  • 3 37037Hz
  • 2 37916Hz
  • 1 57600Hz
  • 1 56800Hz
  • 1 44000Hz
  • 1 42000Hz
  • 1 38380Hz
  • 1 14000Hz

Note that the default frequency is 38000Hz and frequency was not specified on about 90% of the remotes so it appears that the overwhelming majority use 38KHz. Considerable additional statistical information could be gleaned from elaborate parsing of the LIRC files.

Since this article documents a non-standard, it is hard to avoid weasel words in some sections and attribute to a reliable source. There are few authoritative sources for statistical info other than the makers of universal remote controls and they usually consider their data to be trade secrets. The best data that is available would be to harvest the information from many hardware hacking projects, encoder/decoder IC datasheets, and projects like LIRC.

CEA-931-B defines a method for encapsulating remote control codes over IP and CEA-931-A defines a method for encapsulating remote control codes over IEEE-1394 [8]. These documents are not free even though free standards are the norm for Internet Protocols and contributed significantly to their widespread adoption.

[edit] External Links

Static Wikipedia 2008 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -

Static Wikipedia 2007 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -

Static Wikipedia 2006 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu