GithubHelp home page GithubHelp logo

esp32-ir-remote-control's Introduction

ESP32-IR-Remote-Control

C++ class for the infrared remote control and reciever module

Arduino IR kit

Examplecode:

#include "Arduino.h"
#include "src/IR.h"

#define IR_PIN  4
IR ir(IR_PIN);  // do not change the objectname, it must be "ir"

    uint8_t ir_button[20] = {0x52,  // 0
                             0x16,  // 1
                             0x19,  // 2
                             0x0d,  // 3
                             0x0c,  // 4
                             0x18,  // 5
                             0x5e,  // 6
                             0x08,  // 7
                             0x1c,  // 8
                             0x5a,  // 9
                             0x42,  // #
                             0x4a,  // *
                             0x44,  // left
                             0x43,  // right 
                             0x46,  // up
                             0x15,  // down
                             0x40,  // OK 
                             0x00, 
                             0x00, 
                             0x00
    };

//--------------------------------------------------------------
void setup(){
    Serial.begin(115200);
    ir.begin();
    for(uint8_t i = 0; i < 20; i++) {
        ir.set_irButtons(i, ir_button[i]);
    }
    ir.set_irAddress(0x00);
}

void loop(){
    ir.loop();
    // do something else
    // ...
}
//--------------------------------------------------------------
//   events called from IR Library
//--------------------------------------------------------------
void ir_res(uint32_t res){
    Serial.print("ir_res: ");
    Serial.println(res);
}

void ir_number(uint16_t num){
    Serial.print("ir_number: ");
    Serial.println(num);
}

void ir_key(uint8_t key){
    Serial.print("ir_key: ");
    Serial.println(key);
}

void ir_long_key(int8_t key){
    Serial.print("long pressed key nr: ");
    Serial.println(key);
}

void ir_code(uint8_t addr, uint8_t cmd){
    Serial.printf("ir_code: ..  IR address 0x%02x, IR command 0x%02x\n", addr, cmd);
}

console output (pressed # 123):

Serial Console Output

recieved codewods for this RC:

RC Code

VS1838 pins;

VS1838B Pins

esp32-ir-remote-control's People

Contributors

schreibfaul1 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

esp32-ir-remote-control's Issues

external table with IR-Codes for several remote control

I have remote controls from different manufacturers. The IR codes are hardcoded in the repository. Can you integrate external code tables (for example in the include folder) for the different remote controls? If I mount the current repository as .git, an update will overwrite my changes.

support for esp8266

Hi dear wolle
this ir remote is excellent
I know this is for esp32 but please support esp8266 if possible

IR Code ändern

Hallo, da ich nicht die gleiche Fernbedienung bekommen habe ich von einer anderen FB den Code ausgelesen und in die IR.cpp eingetragen. Leider funtionieren nicht alle Tasten oder einmal geht eine Taste dann die selbe wieder nicht. Das habe ich geändert
case 19125: ir_resp=0; break; //ZERO 0x4AB5
case 26775: ir_resp=1; break; //ONE 0x6897
case 39015: ir_resp=2; break; //TWO 0x9867
case 45135: ir_resp=3; break; //THREE 0xB04F
case 12495: ir_resp=4; break; //FOUR 0x30CF
case 6375 : ir_resp=5; break; //FIVE 0x18E7
case 31365: ir_resp=6; break; //SIX 0x7A85
case 4335 : ir_resp=7; break; //SEVEN 0x10EF
case 14535: ir_resp=8; break; //EIGHT 0x38C7
case 23205: ir_resp=9; break; //NINE 0x5AA5
case 765: ir_resp=10; break; //OK 0x02FD
case 25245: ir_resp=11; break; //UP 0x629D
case 43095: ir_resp=12; break; //DOWN 0xA857
case 49725: ir_resp=13; break; //RIGHT 0xC23D
case 8925: ir_resp=14; break; //LEFT 0x22DD
case 21165: ir_resp=15; break; //HASH 0x52AD
case 17085: ir_resp=16; break; //STAR 0x42BD

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.