Protocol decoder:ir_nec

From sigrok
Jump to navigation Jump to search
Pv example ir nec.png
Description NEC infrared remote control protocol
Status supported
License GPLv2+
Source code decoders/ir_nec
Input logic
Output ir_nec
Probes IR
Optional probes
Options polarity extended

The ir_nec protocol decoder supports the NEC infrared remote control protocol including the 16bit address extension.


Hama 8in1, code 0001 (Matsui TV)

See the ir/nec/hama_8in1 directory in the sigrok-dumps repository for example files.

Unlabeled LED panel remote

This remote uses the Extended NEC Protocol, address 0xEA41. It uses 8 buttons, but the PCB has space for a total of 16 buttons.

See the ir/nec/extended directory in the sigrok-dumps repository for example files.


This is a pulse-distance based IR protocol. Symbols are determined by checking the span between IR bursts. After an AGC adjustment phase, several fields are sent: address, and command. Another IR burst after the last bit symbol ends the IR frame.

The standard NEC protocol sends address and command values in verbatim as well as in complement form, which improves reliability when the fields are checked for consistency, and as a byproduct results in constant length of a frame. The extended NEC protocol uses 16bits for the address field, and omits the complement. Users need to specify the protocol variant, the decoder cannot automatically detect it (assuming extended just because the address fields are not complements is too weak, the error could be real and must get flagged).