weixin_39834788
weixin_39834788
2020-11-28 08:52

Turning ON/OFF a Mitsubishi projector

Hi all,

I'm trying to replicate the ON/OFF feature from my remote to my NodeMCU.

Version/revison of the library used

v2.3.3

Expected behavior

Being able to transmit the data payload previously received to toggle ON/OFF my projector. I used IRrecvDumpV2 to receive the ON signal. Here are a couple of dumps:


Timestamp : 000047.772
Encoding  : UNKNOWN
Code      : 96A1512F (38 bits)
Library   : v2.3.3

Raw Timing[75]:
   +  8402, -  4172,    +   554, -   490,    +   562, -   484,    +   560, -   514,
   +   532, -   512,    +   534, -  1566,    +   526, -  1572,    +   526, -  1542,
   +   560, -  1568,    +   532, -  4192,    +   534, -  1564,    +   532, -   484,
   +   560, -   512,    +   532, -   512,    +   532, -   514,    +   530, -   514,
   +   526, -  1570,    +   524, -   520,    +   526, - 28506,    +  8454, -  4170,
   +   560, -   514,    +   528, -   516,    +   526, -   520,    +   524, -   490,
   +   556, -  1572,    +   534, -  1534,    +   560, -  1568,    +   530, -  1538,
   +   558, -  4166,    +   560, -  1538,    +   558, -   490,    +   560, -   512,
   +   530, -   514,    +   532, -   484,    +   558, -   514,    +   532, -  1566,
   +   530, -   486,    +   554

uint16_t rawData[75] = {8402, 4172,  554, 490,  562, 484,  560, 514,  532, 512,  534, 1566,  526, 1572,  526, 1542,  560, 1568,  532, 4192,  534, 1564,  532, 484,  560, 512,  532, 512,  532, 514,  530, 514,  526, 1570,  524, 520,  526, 28506,  8454, 4170,  560, 514,  528, 516,  526, 520,  524, 490, 556, 1572,  534, 1534,  560, 1568,  530, 1538,  558, 4166,  560, 1538,  558, 490,  560, 512,  530, 514,  532, 484,  558, 514,  532, 1566,  530, 486, 554};  // UNKNOWN 96A1512F




Timestamp : 000097.106
Encoding  : UNKNOWN
Code      : 96A1512F (38 bits)
Library   : v2.3.3

Raw Timing[75]:
   +  8402, -  4202,    +   530, -   516,    +   524, -   492,    +   558, -   516,
   +   528, -   488,    +   562, -  1536,    +   560, -  1568,    +   524, -  1542,
   +   556, -  1542,    +   554, -  4170,    +   564, -  1536,    +   558, -   488,
   +   562, -   482,    +   560, -   514,    +   528, -   516,    +   532, -   482,
   +   562, -  1538,    +   556, -   518,    +   524, - 28528,    +  8432, -  4202,
   +   528, -   516,    +   532, -   484,    +   562, -   482,    +   556, -   488,
   +   560, -  1540,    +   562, -  1534,    +   556, -  1542,    +   560, -  1540,
   +   560, -  4192,    +   530, -  1570,    +   534, -   512,    +   532, -   484,
   +   556, -   488,    +   558, -   516,    +   528, -   488,    +   562, -  1536,
   +   562, -   512,    +   530

uint16_t rawData[75] = {8402, 4202,  530, 516,  524, 492,  558, 516,  528, 488,  562, 1536,  560, 1568,  524, 1542,  556, 1542,  554, 4170,  564, 1536,  558, 488,  562, 482,  560, 514,  528, 516,  532, 482,  562, 1538,  556, 518,  524, 28528,  8432, 4202,  528, 516,  532, 484,  562, 482,  556, 488, 560, 1540,  562, 1534,  556, 1542,  560, 1540,  560, 4192,  530, 1570,  534, 512,  532, 484,  556, 488,  558, 516,  528, 488,  562, 1536,  562, 512, 530};  // UNKNOWN 96A1512F

They all look a bit different, depending how long I press the button, I think, but the Code stays the same.

Then I tried to send the raw data with:


#ifndef UNIT_TEST
#include <arduino.h>
#endif
#include <irremoteesp8266.h>
#include <irsend.h>

#define IR_LED 4 

IRsend irsend(IR_LED);

uint16_t rawData[75] = {8402, 4202,  530, 516,  524, 492,  558, 516,  528, 488,  562, 1536,  560, 1568,  524, 1542,  556, 1542,  554, 4170,  564, 1536,  558, 488,  562, 482,  560, 514,  528, 516,  532, 482,  562, 1538,  556, 518,  524, 28528,  8432, 4202,  528, 516,  532, 484,  562, 482,  556, 488, 560, 1540,  562, 1534,  556, 1542,  560, 1540,  560, 4192,  530, 1570,  534, 512,  532, 484,  556, 488,  558, 516,  528, 488,  562, 1536,  562, 512, 530};  // UNKNOWN 96A1512F

void setup() {
  irsend.begin();
  Serial.begin(115200, SERIAL_8N1, SERIAL_TX_ONLY);
}

void loop() {
  Serial.println("Sending a rawData capture from IRrecvDumpV2");
  irsend.sendRaw(rawData, 75, 38);
  delay(2000);
}
</irsend.h></irremoteesp8266.h></arduino.h>

Circuit diagram and hardware used (if applicable)

20180401_171958

The circuit looks OK, I checked the transmitter with my phone camera and it blicks when the output data are transmitted.

Sending the data, I get the Sending a rawData capture from IRrecvDumpV2 message on the console and then the LED blinks (on camera), so I believe that the board is actually working as expected. Unfortunately the projector does not turn ON 😞

I tried different frequency than 38, i.e. , 36, 40 and other possible frequencies I read about in other closed issues.

I have also tried to use AutoAnalyseRasData.sh, but seems I can't find a way to feed it the raw data. I keep getting sed: 1: "s/^.*uint.*{//i": bad flag in substitute command: 'i' error 🤔.

Any help? I know this is not a A/C, but it would be cool to have some automation around my entertainment system 😄

Thank you 😄

该提问来源于开源项目:crankyoldgit/IRremoteESP8266

  • 点赞
  • 回答
  • 收藏
  • 复制链接分享

15条回答