JP1 Remotes Forum Index JP1 Remotes


FAQFAQ SearchSearch 7 days of topics7 Days MemberlistMemberlist UsergroupsUsergroups RegisterRegister
ProfileProfile Log in to check your private messagesLog in to check your private messages Log inLog in

Learned NEC-f16 codes not decoding

 
Post new topic   Reply to topic    JP1 Remotes Forum Index -> JP1 - Protocol Decodes
View previous topic :: View next topic  
Author Message
rsbrux



Joined: 25 Dec 2015
Posts: 46

PostPosted: Fri Nov 29, 2019 10:26 am    Post subject: Learned NEC-f16 codes not decoding Reply with quote

I am trying to create an upgrade for the Yamaha RX-V685 Receiver. I found many, but not all, of the needed codes in various tables and RMDU files in the file area. I therefore used my URC-8603 to find the best built-in match (2061) and then learn the missing keys. The learned keys fall into 3 types of NEC codes, however, those recognized as NEC-f16 are not decoded. How can I get proper codes to embed in a stand-alone RMDU?
The RMIR file with the learned codes can be found here.
Back to top
View user's profile Send private message
mathdon
Expert


Joined: 22 Jul 2008
Posts: 3249
Location: Cambridge, UK

PostPosted: Fri Nov 29, 2019 12:28 pm    Post subject: Reply with quote

These signals are not recognised by IrpTransmogrifier, which is the default decoder in RMIR v2.09. However, if you use Options > Set IR Decoder to change to DecodeIR, they are decoded as NEC1-y1 signals. To create a device upgrade with these signals, select the protocol NEC 4DEV Yamaha Combo. The notes for that protocol explain the various options. Under the Functions tab you will find a column headed YStyle. Y1 is one of the styles in the drop-down list that column gives you.
_________________
Graham
Back to top
View user's profile Send private message
Barf
Expert


Joined: 24 Oct 2008
Posts: 968

PostPosted: Fri Nov 29, 2019 12:30 pm    Post subject: Reply with quote

I assume you are using RM 2.09build6.

If a signal is "recognized as NEC-f16" it *is*, per definition, decoded. Just that for some reason the parameters are lost here. I extracted the raw signals from the "Timing Summary", and fed it through IrpTransmogrifier and got:

Code:

Windows:     
SLEEP:       NEC1: {D=122,F=48}, beg=0, end=75, reps=2
PARTY:       NEC1: {D=122,F=52}, beg=0, end=75, reps=2
SCENE:       NEC1-f16: {D=122,F=39908}, beg=0, end=75, reps=2
INPUT:       NEC1-f16: {D=122,F=24607}, beg=0, end=75, reps=2
NET:         NEC1: {D=127,F=63,S=1}, beg=0, end=75, reps=2
USB:         NEC1-f16: {D=127,F=3442,S=1}, beg=0, end=75, reps=2
BLUETOOTH:   NEC1-f16: {D=122,F=49598}, beg=0, end=75, reps=2
SETUP:       NEC1: {D=122,F=132}, beg=0, end=75, reps=2
MENU:        NEC1-f16: {D=122,F=5227}, beg=0, end=75, reps=2
RETURN:      NEC1: {D=122,F=170}, beg=0, end=71, reps=1
HELP:        NEC1-f16: {D=127,F=54698,S=1}, beg=0, end=75, reps=2
TOP MENU:    NEC1-f16: {D=122,F=57248}, beg=0, end=75, reps=2
HOME:        NEC1: {D=127,F=102,S=1}, beg=0, end=75, reps=2
POP-UP MENU: NEC1-f16: {D=122,F=56228}, beg=0, end=71, reps=1
ENHANCER:    NEC1: {D=122,F=148}, beg=0, end=75, reps=2
SUR DECODE:  NEC1: {D=122,F=141}, beg=0, end=75, reps=2
BASS:        NEC1-f16: {D=122,F=49853}, beg=0, end=75, reps=2
STRAIGHT:    NEC1: {D=122,F=86}, beg=0, end=75, reps=2


so IrpTransmogrifier most definitely decodes them (except for "Windows"). So let's hope Graham can have a look at it.

A minor issue is that the signals all contain one or two of the NEC dittos (see the decodes); still some are "decoded" as NEC (indicating no repeat-ditto).
Back to top
View user's profile Send private message Send e-mail Visit poster's website
rsbrux



Joined: 25 Dec 2015
Posts: 46

PostPosted: Sun Dec 01, 2019 2:28 am    Post subject: Reply with quote

mathdon wrote:
These signals are not recognised by IrpTransmogrifier, which is the default decoder in RMIR v2.09. However, if you use Options > Set IR Decoder to change to DecodeIR, they are decoded as NEC1-y1 signals. To create a device upgrade with these signals, select the protocol NEC 4DEV Yamaha Combo. The notes for that protocol explain the various options. Under the Functions tab you will find a column headed YStyle. Y1 is one of the styles in the drop-down list that column gives you.

I tried to create a new upgrade from the DecodeIR values following the instructions here. However, the Learned Signals tab shows only one byte of data, whereas all of the Yamaha codes I have found in the file area have two bytes. The two bytes in the codes I have found in the file area do not consistently add up to 126, 127, 128, 254, 255, 256, 383 or 384, as I would expect from the protocol notes. The built-in codes from the URC8603 are all 4 bytes, but the pairs of bytes each add up to FF (255), so they could presumably be reduced to two bytes. If I save the RMIR file with the newly created upgrade containing only one byte of data, the upgrade is displayed as "Manual Settings" instead of "NEC 4DEV Yamaha Combo". When I try to edit it, I get an error message. "The code of the protocol for this device upgrade is not consistent ...".
In the meantime, I will try to use the codes from DecodeIR to infer additional codes for one of the working RMDUs I have based on data from the file area. Failing that, I will try to learn how to use IrpTransmogrifier stand-alone.
Back to top
View user's profile Send private message
Barf
Expert


Joined: 24 Oct 2008
Posts: 968

PostPosted: Sun Dec 01, 2019 5:31 am    Post subject: Reply with quote

I started RMIR in the debugger, and here is what happens:

LearnedSignalDecode( Decode decode, Value[] matchDevParms, Executor executor ) is called with the third argument null, it makes an effort to find an executor, which fails (executor == null). Then it just returns, without filling in the parameters (return on line 101 in LearnedSignalDecode).

There are two problems here:

1. Why is no executor for NEC1-f16 found?
2. If no executor is found, this case is to be handled gracefully.

I leave #1 to Graham. Independent of this, #2 should be addressed, because there will always be protocols for which an executor, for whatever reason, is not found.

It appears that the only thing needed for #2 is to make sure that the parameters are assigned (line 124 to 139) before we bail out. I tested by just moved those lines, and everything seemed to work. Graham?

Quote:

... I will try to learn how to use IrpTransmogrifier stand-alone.

Good idea. Note that you already have it installed, see the wrapper irptransmogrifier.bat (irptransmogrifier.sh) in the install directory.
Back to top
View user's profile Send private message Send e-mail Visit poster's website
mathdon
Expert


Joined: 22 Jul 2008
Posts: 3249
Location: Cambridge, UK

PostPosted: Sun Dec 01, 2019 9:30 am    Post subject: Reply with quote

Apologies, rsbrux. I find that there was an omission in the IrpTransmogrifier support in RMIR for the NEC-f16 protocol. Please download rmProtocols.xml and copy it into your RMIR installation folder. That is a patch file for the RMIR support for IrpTransmogrifier which should make NEC-f16 be recognised properly. You should be able to select a mixture of NEC, NEC1 and NEC-f16 learned signals and have the Convert to Device Upgrade convert the whole set into a single upgrade. Remember that you can use the Up and Down buttons on the Learned Signals tab to reorder the signals you want so that they can be selected as a single block. Alternatively the conversion process allows you to add further signals to an existing upgrade. Remember also to set the decoder back to IrpTransmogrifier if you still have it as DecodeIR Confused .

Please try this and let me know if it works, so that I can include the patch file in the next RMIR build.
_________________
Graham
Back to top
View user's profile Send private message
mathdon
Expert


Joined: 22 Jul 2008
Posts: 3249
Location: Cambridge, UK

PostPosted: Sun Dec 01, 2019 9:58 am    Post subject: Reply with quote

Barf wrote:
There are two problems here:

1. Why is no executor for NEC1-f16 found?
2. If no executor is found, this case is to be handled gracefully.

1. I had inadvertently omitted the required uei-executor entries in IrpProtocols.xml. The rmProtocols.xml patch file includes them and I would be grateful if you would include those entries in the next release of IrpTransmogrifier (if rsbrux's testing finds that they work).

2. I've fixed this for the next RMIR build.
_________________
Graham
Back to top
View user's profile Send private message
Barf
Expert


Joined: 24 Oct 2008
Posts: 968

PostPosted: Sun Dec 01, 2019 4:04 pm    Post subject: Reply with quote

@Graham:

sounds good. Just a note on the patch file semantics: the patch file's content is merged with the original content, so please do not repeat what is already in the original: it just makes it harder to understand what really changed.
Back to top
View user's profile Send private message Send e-mail Visit poster's website
mdavej
Expert


Joined: 08 Oct 2003
Posts: 3999

PostPosted: Sun Dec 01, 2019 4:36 pm    Post subject: Reply with quote

Here are all the codes for your receiver:
https://www.snapav.com/wcsstore/ExtendedSitesCatalogAssetStore/attachments/documents/Amplifiers/SupportDocuments/Standard_IR_Codes_RX-V685RX-A780-RX-A3080CX-A5200_4.pdf

https://www.snapav.com/wcsstore/ExtendedSitesCatalogAssetStore/attachments/documents/Amplifiers/SupportDocuments/Extended_IR_Codes_RX-V685RX-A780-RX-A3080CX-A5200_6.pdf
Back to top
View user's profile Send private message
mathdon
Expert


Joined: 22 Jul 2008
Posts: 3249
Location: Cambridge, UK

PostPosted: Sun Dec 01, 2019 6:01 pm    Post subject: Reply with quote

Barf wrote:
sounds good. Just a note on the patch file semantics: the patch file's content is merged with the original content, so please do not repeat what is already in the original: it just makes it harder to understand what really changed.

Barf, can you clarify that, though perhaps in the IrpTransmogrifier thread rather than here? I thought I had to give the entire replacement protocol, otherwise I don't see how the merge knows where the new lines go.
_________________
Graham
Back to top
View user's profile Send private message
The Robman
Site Owner


Joined: 01 Aug 2003
Posts: 19059
Location: Chicago, IL

PostPosted: Sun Dec 01, 2019 11:06 pm    Post subject: Reply with quote

mdavej wrote:
Here are all the codes for your receiver:
https://www.snapav.com/wcsstore/ExtendedSitesCatalogAssetStore/attachments/documents/Amplifiers/SupportDocuments/Standard_IR_Codes_RX-V685RX-A780-RX-A3080CX-A5200_4.pdf

https://www.snapav.com/wcsstore/ExtendedSitesCatalogAssetStore/attachments/documents/Amplifiers/SupportDocuments/Extended_IR_Codes_RX-V685RX-A780-RX-A3080CX-A5200_6.pdf

I have converted those PDFs to a spreadsheet and have added the JP1 version of the codes.

http://www.hifi-remote.com/forums/dload.php?action=file&file_id=25745
_________________
Rob
www.hifi-remote.com
Please don't PM me with remote questions, post them in the forums so all the experts can help!
Back to top
View user's profile Send private message Visit poster's website
Display posts from previous:   
Post new topic   Reply to topic       JP1 Remotes Forum Index -> JP1 - Protocol Decodes All times are GMT - 5 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


 

Powered by phpBB © 2001, 2005 phpBB Group
Get Smart! the band's official homepage Rockabilly Central