JP1 codes -> arduino IRremote library??

If you're not a JP1 user, but would like help from the JP1 experts, post your question here.

Moderator: Moderators

Post Reply
ianc2674
Posts: 5
Joined: Wed Jul 25, 2012 3:05 pm

JP1 codes -> arduino IRremote library??

Post by ianc2674 »

Howdy.
I'm looking for a way to convert the data found in the .rmdu files into a format suitable for the arduino library IRremote ( http://www.arcfn.com/2009/08/multi-prot ... brary.html ).


This is the code I want to use.

Description=Canon Camcorder WL-D88 Remote
Remote.name=URC-6131(Old) PVR Remote 2K
Remote.signature=PVR0PVR0
DeviceType=VCR
DeviceIndex=2
SetupCode=1167
Protocol=00 5A
Protocol.name=NEC2
ProtocolParms=131 227 null
FixedData=21 3E 38


this is the button I want to use

Function.7.name=Photo
Function.7.hex=F3


and the arduino library format looks like this...


irsend.sendNEC (0xA16E0CF3, 32); (Canon WL-D77 remote photo button)


I was able to get the canon d77 remote code directly from the physical remote, but I don't have a d88 remote for my other canon camera.

I've been plugging various guesses to test but not getting anywhere. Any ideas?

Thanks.
3FG
Expert
Posts: 3440
Joined: Mon May 18, 2009 11:48 pm

Post by 3FG »

The correct way to do this is to download RemoteMaster and open the rmdu file. It then tells you the device.subdevice and function (OBC) numbers. I've done this for you:

Code: Select all

play	1
Start/Stop/Rec	3
pause	4
||>	16
stop	23
Zoom Telephoto	28
Zoom Wide	29
Arrow Up	32
Arrow Down	33
Arrow Right	34
Arrow Left	35
Select	36
menu	37
Photo	48
Func	70
Playlist	72
rewind <<	75
fast fwd >>	77
Display	78
<||	80
RM says this is device 131.227. Photo is function number 48. So converting to Hex we have 83.E3 function 30. Reversing the order of the bits, we get C1, C7, 0C, or 0xC1C70CF3

I don't know what 32 means.
ianc2674
Posts: 5
Joined: Wed Jul 25, 2012 3:05 pm

Post by ianc2674 »

3FG wrote:The correct way to do this is to download RemoteMaster and open the rmdu file. It then tells you the device.subdevice and function (OBC) numbers. I've done this for you:

Code: Select all

play	1
Start/Stop/Rec	3
pause	4
||>	16
stop	23
Zoom Telephoto	28
Zoom Wide	29
Arrow Up	32
Arrow Down	33
Arrow Right	34
Arrow Left	35
Select	36
menu	37
Photo	48
Func	70
Playlist	72
rewind <<	75
fast fwd >>	77
Display	78
<||	80
RM says this is device 131.227. Photo is function number 48. So converting to Hex we have 83.E3 function 30. Reversing the order of the bits, we get C1, C7, 0C, or 0xC1C70CF3

I don't know what 32 means.
I assume that 32 refers to the number of bits. Which seems wrog for the canon codes.

Anyways, the 0xC1C70CF3 didn't work.
3FG
Expert
Posts: 3440
Joined: Mon May 18, 2009 11:48 pm

Post by 3FG »

NEC codes are 32 bits, and NEC is used in most Canon cameras. So I doubt that is the problem.
I checked to see if I had made a calculation mistake: I loadid the D88 upgrade into a remote, learned the resulting signal, decoded it into the same basic format as the Arduino, and it says 0xC1C70CF3. So I don't know what is the problem. Are you sure that a D88 remotes should work?
vickyg2003
Site Admin
Posts: 7109
Joined: Sat Mar 20, 2004 12:19 pm
Location: Florida
Contact:

Post by vickyg2003 »

Yep, almost all canon cameras use Nec protocols. We do have a few canons (Rebel, ESOS) that use that weird 1 bit protocol, but that doesn't apply to camcorders.

I'm kind of interested in the Canon WL-D77 remote photo button that the OP posted. Isn't irsend.sendNEC (0xA16E0CF3, 32); show that this is 133.59? Or did I miscalculate? AFAIK we don't have any upgrades with that combo. Shutter is the same OBC as shown in the WL-D88 .

ianc2674, can you confirm the remote, or give us the camera model number?
Remember to provide feedback to let us know how the problem was solved and share your upgrades.

Tip: When creating an upgrade, always include ALL functions from the oem remote, even if you never plan on assigning them to a button. Complete function lists makes an upgrade more helpful to others.
ianc2674
Posts: 5
Joined: Wed Jul 25, 2012 3:05 pm

Post by ianc2674 »

vickyg2003 wrote:Yep, almost all canon cameras use Nec protocols. We do have a few canons (Rebel, ESOS) that use that weird 1 bit protocol, but that doesn't apply to camcorders.

I'm kind of interested in the Canon WL-D77 remote photo button that the OP posted. Isn't irsend.sendNEC (0xA16E0CF3, 32); show that this is 133.59? Or did I miscalculate? AFAIK we don't have any upgrades with that combo. Shutter is the same OBC as shown in the WL-D88 .

ianc2674, can you confirm the remote, or give us the camera model number?
Yes I can. Here are the cameras.

Canon ZR65MC uses WL-D77. I successfully captured codes from that remote and use them with Arduino.

Canon Vixia HF10 uses WL-D88 remote. I do not have this one. This camera is listed with this remote in this file.
https://www.hifi-remote.com/forums/dload ... 0212fd877b
ianc2674
Posts: 5
Joined: Wed Jul 25, 2012 3:05 pm

solved

Post by ianc2674 »

The code given works. I had not realized they put the IR sensor on the viewfinder and not the front of the camera! RTFM.

There is also an option to turn off the remote control on this camera and probably other canon's, so anyone else who is testing ir on canon camcorders, remember to check your menu for that option.

Thank you for the help!
vickyg2003
Site Admin
Posts: 7109
Joined: Sat Mar 20, 2004 12:19 pm
Location: Florida
Contact:

Post by vickyg2003 »

Thank you for posting the follow up.
Remember to provide feedback to let us know how the problem was solved and share your upgrades.

Tip: When creating an upgrade, always include ALL functions from the oem remote, even if you never plan on assigning them to a button. Complete function lists makes an upgrade more helpful to others.
ianc2674
Posts: 5
Joined: Wed Jul 25, 2012 3:05 pm

JP1 codes -> arduino IRremote library??

Post by ianc2674 »

3FG wrote:The correct way to do this is to download RemoteMaster and open the rmdu file. It then tells you the device.subdevice and function (OBC) numbers. I've done this for you:

Code: Select all

play	1
Start/Stop/Rec	3
pause	4
||>	16
stop	23
Zoom Telephoto	28
Zoom Wide	29
Arrow Up	32
Arrow Down	33
Arrow Right	34
Arrow Left	35
Select	36
menu	37
Photo	48
Func	70
Playlist	72
rewind <<	75
fast fwd >>	77
Display	78
<||	80
RM says this is device 131.227. Photo is function number 48. So converting to Hex we have 83.E3 function 30. Reversing the order of the bits, we get C1, C7, 0C, or 0xC1C70CF3

I don't know what 32 means.
Hi 3FG,

Sorry, I'm revisiting this old post b/c I am having problems following this format and I am trying to use another code from this remote with my arduino.
I understand the device code; 131 = C1 and 227 = C7 after converting to hex and reversing bits, I understand that F3 is the hex code for the photo button but where does 0C come from?

while C1C70CF3 works for photo, if I try substituting 3F (record/start/stop) in place of F3 I get nothing.

Thanks for any help!
3FG
Expert
Posts: 3440
Joined: Mon May 18, 2009 11:48 pm

Post by 3FG »

Let's take photo first. The OBC is 48 or 30 in hexadecimal. Reversing 30 gives 0C, which is the 3rd byte of the signal. The NEC protocol calls for the 4th byte to be the binary complement of the 3rd byte. XORing 0C with 0xFF gives 0xF3. Another way to calculate is 0xFF-0x0C = 0xF3.

So for record/start/stop, the OBC is 3 or 0x03. Reversing gives 0xC0, which is the 3rd byte, and the 4th byte is 0x3F.
The Robman
Site Owner
Posts: 22008
Joined: Fri Aug 01, 2003 9:37 am
Location: Chicago, IL
Contact:

Post by The Robman »

I always find that it's easier to build this sort of thing into a spreadsheet:
https://www.hifi-remote.com/forums/dload ... e_id=11639
Rob
www.hifi-remote.com
Please don't PM me with remote questions, post them in the forums so all the experts can help!
Post Reply