IR Remote Decode - Page 1
Forum section: electronics / projects

author: @rt
author_rank: Super Contributor
timestamp: November 25, 2016, 08:01:23 am
content: Hi GuysDoes anyone recognise this coding method from in IR remote?Of course I didn’t need to know to be able to reproduce it. It’s just academic now.I’ve included the header, and the data packet is always the same size, and always starts with a rising edge, and always ends with a falling edge.These are the codes the remote sends for letters A & B. Note the duration of the pauses can also be different, so not normal pulse width coding.Header is 500 microseconds, 2000 pause, then all other timings are also 500 microseconds.Cheers, Art.

author: jimmc
author_rank: Frequent Contributor
timestamp: November 25, 2016, 07:33:34 pm
content: This any help?http://wiki.nethome.nu/doku.php/analyzer/startJim

author: @rt
author_rank: Super Contributor
timestamp: November 26, 2016, 06:00:04 am
content: ThanksI didn’t know something like that existed, but I’m not keen enough to install software on a development machine (my only Windows box).I was hopeful someone might just recognise it.Where t = 500uS, a short pulse is t, and a long pulse is t2, so I just ended up counting out 13 time units for the data packet that waywithout really knowing the intended binary data. The IR interface works fine, but still, I was curious.

author: viperidae
author_rank: Frequent Contributor
timestamp: November 26, 2016, 06:16:31 am
content: Looks like rc5, but short. A high, low is a zero and a low, high is a 1

author: void_error
author_rank: Frequent Contributor
timestamp: November 26, 2016, 06:48:50 am
content: This might helphttp://www.vishay.com/docs/80071/dataform.pdf

author: @rt
author_rank: Super Contributor
timestamp: November 27, 2016, 04:11:53 am
content: I could maybe liken it to what they call biphase coding in that last document, but can’t see a time window that wouldgive each command the same number of bits. The start and end of the packet is also always a rising and falling edge like the two examples.It does work fine anyway, as you don’t really have to understand the protocol to reproduce it with an interpretation of your own.It’s an electronic sign that must be fairly old, as it’s Z80 based... making it even cooler!Here I have my MP3 player serially outputting the track title and artist extracted from ID3 tags, and sent to another interface (16F628A)that buffers the string, and in turn, sends out the IR data to get the string displayed.There are some extra buttons to stop and start it, and some characters such as “-“ require the use of a shift key, etc.

author: Buriedcode
author_rank: Super Contributor
timestamp: November 27, 2016, 06:50:25 pm
content: Most likely, if the drawing is to scale, biphase/Manchester encoding, with a sync bit at the start. RC5 uses this as do many others. Its an old and reliable self-clocking code. The start condition can vary but is almost always an integer multiple of the bit rate. I think, technically the difference between 'biphase' and 'Manchester' is that the later is the inverse of the former - Manchester, a 1 is '0-1' transition, where-as in biphase, it represents a 0. Unless you're sending absolute data (rather than just a string of bits representing a button press) it doesn't actually matter.The other common encoding is a form of PWM whereby each 'bit' consists of 3 chips, with a 0 encoded as 100, and a 1 as 110. So short pulses for 0's, long pulses for 1's, keeping each bit period the same and having a 33% difference in duty cycle. This way the start of each bit is always a rising edge, and has the same period. With the 33% difference it allows RC oscillators to be used at both ends, and if you only sample 3 times per bit period, its very immune to noise. I've used this a lot for IR and cheap 433MHz remotes. Used by the older version of keeloq, and PT2262 based systems.

author: madires
author_rank: Super Contributor
timestamp: November 27, 2016, 07:32:23 pm
content: I agree, it's biphase. And it looks somewhat similar to the Motorola code, which uses a 512µs based timing. BTW, Manchester or biphase encoding allows both transition methods. One is called Thomas (0: L-H transition), and the other one IEEE 802.3 (Ethernet, 0: H-L transition).

author: @rt
author_rank: Super Contributor
timestamp: November 28, 2016, 02:26:04 am
content: Thanks everyoneFinally it seems to make some sense. Just 6 bits is still up to 64 keys on a remote.This is the first time I could interpret it in a manner that every command has the same number of bits.I can sleep so long as none disagrees, we sync from the falling edge of the sync pulse (red X),The yellow X markers are always rising for the first one and always falling for the second one.The red lines represent the start and finish of the “time window” described close to the start of the doc void_error posted.