Loading...
Searching...
No Matches
ir_remote_types.h File Reference
Internal API

Describes and decodes the signals from IR remotes. More...

`#include <stdint.h>`
`#include <sys/time.h>`
`#include <unistd.h>`
`#include <string.h>`
`#include <math.h>`
`#include <stdlib.h>`
`#include "media/lirc.h"`

Go to the source code of this file.

## Classes

struct | ir_code_node
| An ir_code for entering into (singly) linked lists, i.e. More...
struct | ir_ncode
| IR Command, corresponding to one (command defining) line of the configuration file. More...
struct | decode_ctx_t
| State describing code, pre, post + gap and repeat state. More...
struct | ir_remote
| One remote as represented in the configuration file. More...

## Macros

#define | IR_PROTOCOL_MASK 0x07ff
#define | RAW_CODES 0x0001
| for internal use only
#define | RC5 0x0002
| IR data follows RC5 protocol.
#define | SHIFT_ENC RC5
| IR data is shift encoded (name obsolete).
#define | RC6 0x0004
| IR data follows RC6 protocol.
#define | RCMM 0x0008
| IR data follows RC-MM protocol.
#define | SPACE_ENC 0x0010
| IR data is space encoded.
#define | SPACE_FIRST 0x0020
| bits are encoded as space+pulse
#define | GRUNDIG 0x0080
| encoding found on Grundig remote
#define | BO 0x0100
| encoding found on Bang & Olufsen remote
#define | SERIAL 0x0200
| serial protocol
#define | XMP 0x0400
| XMP protocol.
#define | REVERSE 0x0800
#define | NO_HEAD_REP 0x1000
| no header for key repeats
#define | NO_FOOT_REP 0x2000
| no foot for key repeats
#define | CONST_LENGTH 0x4000
| signal length+gap is always constant
#define | REPEAT_HEADER 0x8000
| header is also sent before repeat code
#define | COMPAT_REVERSE 0x00010000
| compatibility mode for REVERSE flag
#define | REPEAT_MAX_DEFAULT 600
| stop repeating after 600 signals (approx.
#define | DEFAULT_FREQ 38000
#define | IR_PARITY_NONE 0
#define | IR_PARITY_EVEN 1
#define | IR_PARITY_ODD 2

## Typedefs

typedef uint64_t | ir_code
| Denotes an internal coded representation for an IR transmission.

## Detailed Description

Describes and decodes the signals from IR remotes.

Definition in file ir_remote_types.h.

## Macro Definition Documentation

## BO

#define BO 0x0100

encoding found on Bang & Olufsen remote

Definition at line 112 of file ir_remote_types.h.

## COMPAT_REVERSE

#define COMPAT_REVERSE 0x00010000

compatibility mode for REVERSE flag

Definition at line 123 of file ir_remote_types.h.

## CONST_LENGTH

#define CONST_LENGTH 0x4000

signal length+gap is always constant

Definition at line 120 of file ir_remote_types.h.

## DEFAULT_FREQ

#define DEFAULT_FREQ 38000

Definition at line 130 of file ir_remote_types.h.

## GRUNDIG

#define GRUNDIG 0x0080

encoding found on Grundig remote

Definition at line 111 of file ir_remote_types.h.

## IR_PARITY_EVEN

#define IR_PARITY_EVEN 1

Definition at line 133 of file ir_remote_types.h.

## IR_PARITY_NONE

#define IR_PARITY_NONE 0

Definition at line 132 of file ir_remote_types.h.

## IR_PARITY_ODD

#define IR_PARITY_ODD 2

Definition at line 134 of file ir_remote_types.h.

## IR_PROTOCOL_MASK

#define IR_PROTOCOL_MASK 0x07ff

Definition at line 95 of file ir_remote_types.h.

## NO_FOOT_REP

#define NO_FOOT_REP 0x2000

no foot for key repeats

Definition at line 119 of file ir_remote_types.h.

## NO_HEAD_REP

#define NO_HEAD_REP 0x1000

no header for key repeats

Definition at line 118 of file ir_remote_types.h.

## RAW_CODES

#define RAW_CODES 0x0001

for internal use only

Definition at line 100 of file ir_remote_types.h.

## RC5

#define RC5 0x0002

IR data follows RC5 protocol.

Definition at line 101 of file ir_remote_types.h.

## RC6

#define RC6 0x0004

IR data follows RC6 protocol.

Definition at line 107 of file ir_remote_types.h.

## RCMM

#define RCMM 0x0008

IR data follows RC-MM protocol.

Definition at line 108 of file ir_remote_types.h.

## REPEAT_HEADER

#define REPEAT_HEADER 0x8000

header is also sent before repeat code

Definition at line 121 of file ir_remote_types.h.

## REPEAT_MAX_DEFAULT

#define REPEAT_MAX_DEFAULT 600

stop repeating after 600 signals (approx.

1 minute) update technical.html when changing this value

Definition at line 128 of file ir_remote_types.h.

## REVERSE

#define REVERSE 0x0800

Definition at line 117 of file ir_remote_types.h.

## SERIAL

#define SERIAL 0x0200

serial protocol

Definition at line 113 of file ir_remote_types.h.

## SHIFT_ENC

#define SHIFT_ENC RC5

IR data is shift encoded (name obsolete).

Definition at line 102 of file ir_remote_types.h.

## SPACE_ENC

#define SPACE_ENC 0x0010

IR data is space encoded.

Definition at line 109 of file ir_remote_types.h.

## SPACE_FIRST

#define SPACE_FIRST 0x0020

bits are encoded as space+pulse

Definition at line 110 of file ir_remote_types.h.

## XMP

#define XMP 0x0400

XMP protocol.

Definition at line 114 of file ir_remote_types.h.

## Typedef Documentation

## ir_code

typedef uint64_t ir_code

Denotes an internal coded representation for an IR transmission.

Note that there may be more than one ir_code in one ir_ncode.

Definition at line 43 of file ir_remote_types.h.