Go Down

Topic: Infrared receiver RCMM Decoding issues (Read 179 times) previous topic - next topic

duom

Hi everyone!

I am trying to decode the IR signals from a remote. I'm using an arduino pro micro, and a TSOP38238 IR receiver.

I found out that the remote uses the Nokia32(RCMM) protocol, and I have been able to partially decode it using cyborg5/IRLib and  this sketch. I refer to this LiRC file to tweak the timing values for my remote.

Compared to other remotes I tried (with different protocols) the RCMM algorithm doesn't manage to decode the signal every time. Around 40% of the time when I press a button I got an "Unknown type received" output from the decoder.

Here is the output of the sketch mentionned above for 10 clicks on the same button :

Code: [Select]
#1-----
Decoded RCMM: Value:24002601 (32 bits)
Raw samples(36): Gap:35644
  Head: m410  s290
0:m160 s240 1:m210 s590      2:m210 s390    3:m210 s240     
4:m210 s240 5:m210 s240      6:m160 s290    7:m160 s290     
8:m160 s240 9:m210 s590      10:m210 s390   11:m210 s590         
12:m160 s290    13:m160 s290         14:m160 s240   15:m210 s440         
 
16:m160
Extent=9460
Mark  min:160    max:210
Space min:240    max:590
 
 
 
#2-----
Unknown type received. Ignoring.
Decoded Unknown(0): Value:0 (0 bits)
Raw samples(2): Gap:44428
  Head: m410  s290
 
Extent=700
Mark  min:32767  max:0
Space min:32767  max:0
 
 
 
#3-----
Unknown type received. Ignoring.
Decoded Unknown(0): Value:0 (0 bits)
Raw samples(16): Gap:47958
  Head: m360  s4840
0:m160 s1240    1:m160 s640      2:m160 s290    3:m160 s240     
4:m160 s290 5:m160 s490      6:m160
Extent=9510
Mark  min:160    max:160
Space min:240    max:1240
 
 
 
#4-----
Unknown type received. Ignoring.
Decoded Unknown(0): Value:0 (0 bits)
Raw samples(36): Gap:16772
  Head: m360  s290
0:m160 s290 1:m160 s640      2:m160 s440    3:m160 s290     
4:m160 s290 5:m160 s290      6:m160 s290    7:m160 s240     
8:m160 s640 9:m160 s640      10:m160 s440   11:m160 s590         
12:m160 s290    13:m160 s290         14:m160 s290   15:m160 s440         
 
16:m210
Extent=9810
Mark  min:160    max:210
Space min:240    max:640
 
 
 
#5-----
Decoded RCMM: Value:24002601 (32 bits)
Raw samples(36): Gap:4486
  Head: m360  s340
0:m160 s290 1:m160 s590      2:m160 s440    3:m210 s240     
4:m160 s290 5:m160 s290      6:m160 s290    7:m160 s290     
8:m160 s290 9:m160 s590      10:m160 s440   11:m210 s590         
12:m160 s290    13:m160 s290         14:m160 s290   15:m160 s440         
 
16:m160
Extent=9460
Mark  min:160    max:210
Space min:240    max:590
 
 
 
#6-----
Decoded RCMM: Value:2400A601 (32 bits)
Raw samples(36): Gap:6172
  Head: m360  s340
0:m160 s290 1:m160 s590      2:m160 s490    3:m160 s240     
4:m160 s290 5:m160 s290      6:m160 s290    7:m160 s290     
8:m160 s640 9:m110 s640      10:m160 s440   11:m160 s640         
12:m160 s290    13:m160 s290         14:m160 s290   15:m160 s440         
 
16:m160
Extent=9810
Mark  min:110    max:160
Space min:240    max:640
 
 
 
#7-----
Decoded RCMM: Value:24002601 (32 bits)
Raw samples(36): Gap:13336
  Head: m410  s290
0:m160 s290 1:m160 s590      2:m160 s490    3:m160 s290     
4:m160 s240 5:m160 s290      6:m160 s290    7:m160 s290     
8:m160 s290 9:m160 s640      10:m110 s490   11:m160 s590         
12:m160 s290    13:m160 s290         14:m160 s290   15:m160 s440         
 
16:m160
Extent=9460
Mark  min:110    max:160
Space min:240    max:640
 
 
 
#8-----
Decoded RCMM: Value:2400A601 (32 bits)
Raw samples(36): Gap:27504
  Head: m410  s290
0:m160 s290 1:m160 s640      2:m160 s440    3:m160 s290     
4:m160 s290 5:m160 s290      6:m160 s240    7:m160 s290     
8:m160 s640 9:m160 s590      10:m210 s440   11:m160 s590         
12:m160 s290    13:m160 s290         14:m160 s290   15:m160 s440         
 
16:m160
Extent=9810
Mark  min:160    max:210
Space min:240    max:640
 
 
 
#9-----
Unknown type received. Ignoring.
Decoded Unknown(0): Value:0 (0 bits)
Raw samples(4): Gap:14236
  Head: m360  s340
0:m160
Extent=860
Mark  min:160    max:160
Space min:32767  max:0
 
 
#10-----
Decoded RCMM: Value:2400A601 (32 bits)
Raw samples(36): Gap:32836
  Head: m410  s290
0:m160 s290 1:m160 s640      2:m160 s440    3:m160 s290     
4:m160 s290 5:m160 s290      6:m160 s240    7:m160 s290     
8:m160 s640 9:m160 s590      10:m160 s490   11:m160 s590         
12:m160 s290    13:m160 s290         14:m160 s290   15:m160 s440         
 
16:m160
Extent=9810
Mark  min:160    max:160
Space min:240    max:640


Given the output above I think it's a timing issue (when I get a successful decoding I have two possible outputs: 2400A601 and 24002601). How can I use the above output to tweak the timing values and get a consistent output and no more "Unknown type received. Ignoring." ?

Thanks in advance for your help !

 

AnalysIR

FYI: For RCMM, you should get better results with a :
TSOP38G36
or maybe even a TSSP4038.
This is a particularly difficult protocol of generic IR receivers 

BartmanEH

#2
Feb 07, 2016, 02:31 am Last Edit: Feb 07, 2016, 05:09 pm by BartmanEH
@duom, did you make progress on this issue? I have the same issue.

@AnalysIR, the TSOP38G36 seems particularly difficult to source. It's not available via DigiKey or Mouser and the Vishay website shows none in distribution and no samples to be requested.

Go Up
 


Please enter a valid email to subscribe

Confirm your email address

We need to confirm your email address.
To complete the subscription, please click the link in the email we just sent you.

Thank you for subscribing!

Arduino
via Egeo 16
Torino, 10131
Italy