why IR transmitter can't generate the raw data correclty/

Hi,
i have an IR ac remote and want to decode its button in hex.
In receiver side i use ESP8266(using arduino library "IRremoteESP8266" and Ex. IRreceiveDumpv2)

when i press the button i got,

Protocol : UNKNOWN

Code : 0xB2BFD0 (34 Bits)

uint16_t rawData[67] ={4406, 4308, 558, 1566, 556, 524, 578, 1544, 554, 1568, 566, 514, 578, 500, 578, 1542, 556, 526, 578, 500, 578, 1542, 556, 524, 576, 500, 578, 1542, 556, 1566, 556, 526, 576, 1544, 556, 1568, 556, 524, 574, 1546, 556, 1566, 556, 1566, 556, 1566, 556, 1568, 556, 1566, 556, 526, 554, 1566, 556, 524, 554, 526, 552, 526, 554, 524, 554, 524, 554, 524, 554, 1566, 556, 1566, 556, 524, 554, 1566, 556, 526, 552, 526, 554, 524, 554, 524, 554, 524, 552, 526, 554, 1566, 556, 524, 554, 1566, 556, 1568, 554, 1568, 556, 1566, 556, 5194, 4402, 4310, 556, 1568, 556, 526, 552, 1568, 556, 1566, 556, 524, 554, 526, 552, 1568, 554, 526, 554, 524, 554, 1568, 554, 526, 554, 526, 552, 1568, {556, 1566, 556, 524, 554, 1566, 556, 1568, 554, 526, 554, 1568, 554, 1568, 556, 1568, 554, 1568, 554, 1568, 556, 1568, 554, 526, 552, 1566, 556, 524, 552, 526, 552, 526, 554, 524, 554, 524, 554, 526, 552, 1568, 556, 1566, 556, 526, 552, 1568, 556, 524, 554, 526, 552, 526, 554, 524, 552, 526, 554, 524, 554, 1566, 556, 526, 552, 1568, 554, 1568, 554, 1568, 554, 1568, 556};

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
In transmitter side i use IRsendDemo:
when i transmit the above given Rawdata it works fine, it shows similar raw data & hex code in arduino terminal.

but when i transmit the above hex code it shows the exact hex code but this time the raw data is not same, and my ac is not turned on or doing any functinality because the rawdata is not same.

Can anyone explain why its not happening??

because i many tutorial they did the same and get the same results.

Above HEX code only is a hash of the full code, nothing usable for transmission. With "unknown" protocol only the raw data can be used.

but when i transmit the above hex code it shows the exact hex code but this time the raw data is not same, and my ac is not turned on or doing any functinality because the rawdata is not same.

Some AC controllers send a lot of data and you used to have to increase the irRemote buffer size to receive the full code sequence.

See this in the Wiki

Above HEX code only is a hash of the full code, nothing usable for transmission. With "unknown" protocol only the raw data can be used.

ok fine,
then is there any way to control ac from transmitting hex code only?

No, see #1

saman_naz:
ok fine,
then is there any way to control ac from transmitting hex code only?

You would have to reverse-engineer the protocol so you could translate the raw pulses into a compact code that you can then decode back into the raw pulses. Add that protocol to the library and then your encoder/decoder can produce/send hex codes.
Start by counting the number of distinct pulse widths in your raw data. Don't count any outliers in the first few pulses since that is usually a long "Here comes the data" preamble. The pulses used to be units of 50 microseconds but now they seem to be 64's. Any pulses +/- 64 should be considered the same length. It looks like you have short pulses (~500) and long pulses (~1500). It looks like 'short, short' is one polarity (call it a 0) and 'short, long' is another polarity (call it a 1). There may be an existing decoder/encoder that has a similar pattern and I would use that as the basis for your custom decoder/encoder.

From the raw data stream in the OP, it appears everything has been transmitted twice. There is a header in the middle of it. The array rawData[67] is far too small to contain that data stream.

There is also a misplaced '{' in the line after the second header, that part should be ignored.
I wonder how the "34 Bits" are determined, there are more bits in the raw data up to the second header but not in the array?

We better wait for a valid dump before further wrong guessing.

This topic was automatically closed 120 days after the last reply. New replies are no longer allowed.