Posted: Thu Aug 31, 2017 7:16 pm
Yes, they're fine. All the blanks and None is because the protocol is unknown to us. That's the part we're trying to work out. Thanks, this is good stuff.
Barf, as usual your scary technical lagnuage was over my head. I googled Mogrifier, and then TranMogrifier to try and understand the technical jargon you were using. Imagine my surprise when you were borrowing a term from Calvin and Hobbes.Barf wrote:
I imported Dave's ict file in IrScrutinizer, deleted the MCE signals, exported as a text file, and fed it into IrpTransmogrifier. It produced
(Command line wasCode: Select all
A: {306,msb}<-1,1|1,-1>(9,A:8,B:8,C:8,D:8,E:5,-74m){A=0x20,B=0x0,C=0x0,D=0x0,E=0x0} weight = 20 B: {306,msb}<-1,1|1,-1>(9,A:8,B:8,C:8,D:8,E:5,-74m){A=0x20,B=0x10,C=0x0,D=0x28,E=0x0} weight = 20 C: {306,msb}<-1,1|1,-1>(9,A:8,B:8,C:8,D:8,E:5,-74m){A=0x20,B=0x8,C=0x0,D=0x30,E=0x0} weight = 20 D: {306,msb}<-1,1|1,-1>(9,A:8,B:8,C:8,D:8,E:5,-269m){A=0x20,B=0x0,C=0x0,D=0x0,E=0x0} weight = 20 Home: {306,msb}<-1,1|1,-1>(9,A:8,B:8,C:8,D:8,E:5,-269m){A=0x20,B=0x0,C=0x0,D=0x0,E=0x0} weight = 20 -: {306,msb}<-1,1|1,-1>(9,A:8,B:8,C:8,D:8,E:5,-169m){A=0x20,B=0x0,C=0x0,D=0x0,E=0x0} weight = 20 #: {306,msb}<-1,1|1,-1>(9,A:8,B:8,C:8,D:8,E:5,-74m)7{A=0x20,B=0xb0,C=0x1,D=0x0,E=0x2} weight = 21 *: {306,msb}<-1,1|1,-1>(9,A:8,B:8,C:8,D:8,E:5,-74m)7{A=0x20,B=0xa0,C=0x1,D=0x28,E=0x2} weight = 21 .: {306,msb}<-1,1|1,-1>(9,A:8,B:8,C:8,D:8,E:5,-74m)7{A=0x20,B=0x68,C=0x1,D=0xb8,E=0x0} weight = 21 +: {306,msb}<-1,1|1,-1>(9,A:8,B:8,C:8,D:8,E:5,-74m)7{A=0x20,B=0x30,C=0x1,D=0x70,E=0x2} weight = 21 alt: {306,msb}<-1,1|1,-1>(9,A:8,B:8,C:8,D:8,E:5,-74m)7{A=0x20,B=0x30,C=0x0,D=0x0,E=0x4} weight = 21 &: {306,msb}<-1,1|1,-1>(9,A:8,B:8,C:8,D:8,E:5,-74m)7{A=0x20,B=0xc8,C=0x1,D=0x20,E=0x2} weight = 21 @: {306,msb}<-1,1|1,-1>(9,A:8,B:8,C:8,D:8,E:5,-74m)7{A=0x20,B=0x50,C=0x0,D=0xf8,E=0x2} weight = 21 `: {306,msb}<-1,1|1,-1>(9,A:8,B:8,C:8,D:8,E:5,-74m){A=0x20,B=0x18,C=0x1,D=0xa8,E=0x0} weight = 20 /: {306,msb}<-1,1|1,-1>(9,A:8,B:8,C:8,D:8,E:5,-169m){A=0x20,B=0x0,C=0x0,D=0x0,E=0x0} weight = 20 Caps Lock: {306,msb}<-1,1|1,-1>(9,A:8,B:8,C:8,D:8,E:5,-74m){A=0x20,B=0x0,C=0x0,D=0x0,E=0x0} weight = 20 ^: {306,msb}<-1,1|1,-1>(9,A:8,B:8,C:8,D:8,E:5,-74m)7{A=0x20,B=0xe8,C=0x1,D=0xc8,E=0x0} weight = 21 :: {306,msb}<-1,1|1,-1>(9,A:8,B:8,C:8,D:8,E:5,-74m)7{A=0x20,B=0xa8,C=0x1,D=0x18,E=0x2} weight = 21 ,: {306,msb}<-1,1|1,-1>(9,A:8,B:8,C:8,D:8,E:5,-74m){A=0x20,B=0x40,C=0x1,D=0x99,E=0x0} weight = 20 ctrl: {306,msb}<-1,1|1,-1>(9,A:8,B:8,C:8,D:8,E:5,-74m){A=0x20,B=0x50,C=0x1,D=0xb1,E=0x0} weight = 20 $: {306,msb}<-1,1|1,-1>(9,A:8,B:8,C:8,D:8,E:5,-74m){A=0x20,B=0x18,C=0x0,D=0x0,E=0x1} weight = 20 ": {306,msb}<-1,1|1,-1>(9,A:8,B:8,C:8,D:8,E:5,-74m)7{A=0x20,B=0xd8,C=0x1,D=0x8,E=0x2} weight = 21)Code: Select all
irptransmogrifier analyze --repeat --name ~/jp1/mce_keyboard/newkeys.txt --decoder biphase --maxparameterwidth 8
(Please ignore "weight = ...."). (The split of the payload parameter is arbitrary.) Remarkable is that several different keys apper to send the same signal (A, D, Home,...)
vicky2003 wrote:Barf, as usual your scary technical lagnuage was over my head. I googled Mogrifier, and then TranMogrifier to try and understand the technical jargon you were using. Imagine my surprise when you were borrowing a term from Calvin and Hobbes. Laughing Not so frightening now.
Can you be more specific?Other than some of the codes not being picked up correctly...
Can it possibly be that I used too large tolerance (was 100 microseconds) when analyzing?The reason that the A D and Home sent the same thing, is that typical of keyboard protocols there is a button down frame and a button up frame.
It wasn't you, it was the ICT was bad.Barf wrote:Can you be more specific?Other than some of the codes not being picked up correctly...
Can it possibly be that I used too large tolerance (was 100 microseconds) when analyzing?The reason that the A D and Home sent the same thing, is that typical of keyboard protocols there is a button down frame and a button up frame.
Short answer: You probably forgot "Import all/raw", to transfer the imported signals to the editor of raw signals. Then go to the "export" pane, Select Export format "text", and unselect all the checkboxes to the right, except "raw". The press "Export raw remote".Or at least I think I did. I loaded the file, do I have to do more than that
and then on the EXPORT I got stuck. I went to that screen and I can't do anything.
Code: Select all
{301,msb}<-1,1|1,-1>(9,A:37,-497m){A=0x400000000}
Code: Select all
B Down: {301,msb}<-1,1|1,-1>(9,A:37,-74m)3{A=0x402000500}
D Down: {301,msb}<-1,1|1,-1>(9,A:37,-74m)4{A=0x40c000700}
E down: {301,msb}<-1,1|1,-1>(9,A:37,-74m)5{A=0x411000800}
G Down: {301,msb}<-1,1|1,-1>(9,A:37,-74m)4{A=0x41f000a00}
H Down: {301,msb}<-1,1|1,-1>(9,A:37,-74m)6{A=0x412000b00}
K Down: {301,msb}<-1,1|1,-1>(9,A:37,-74m)8{A=0x41e000c00}
L Down: {301,msb}<-1,1|1,-1>(9,A:37,-74m)6{A=0x41d000f00}
M Down: {301,msb}<-1,1|1,-1>(9,A:37,-74m)2{A=0x412001000}
N Down: {301,msb}<-1,1|1,-1>(9,A:37,-74m)5{A=0x41f001100}
O down: {301,msb}<-1,1|1,-1>(9,A:37,-74m)5{A=0x41c001200}
P Down: {301,msb}<-1,1|1,-1>(9,A:37,-74m)2{A=0x411001300}
Q Down: {301,msb}<-1,1|1,-1>(9,A:37,-74m)4{A=0x41d001400}
R down: {301,msb}<-1,1|1,-1>(9,A:37,-74m){A=0x410001500}
S Down: {301,msb}<-1,1|1,-1>(9,A:37,-74m){A=0x413001600}
T Down: {301,msb}<-1,1|1,-1>(9,A:37,-74m)5{A=0x41e001700}
U Down: {301,msb}<-1,1|1,-1>(9,A:37,-74m)4{A=0x403001800}
V Down: {301,msb}<-1,1|1,-1>(9,A:37,-74m)4{A=0x40e001900}
W Down: {301,msb}<-1,1|1,-1>(9,A:37,-74m)3{A=0x40e001900}
X Down: {301,msb}<-1,1|1,-1>(9,A:37,-74m)4{A=0x40d001a00}
Y Down: {301,msb}<-1,1|1,-1>(9,A:37,-74m)5{A=0x400001b00}
Z Down: {301,msb}<-1,1|1,-1>(9,A:37,-74m)5{A=0x40c001c00}
Z down2: {301,msb}<-1,1|1,-1>(9,A:37,-74m)5{A=0x401001d00}
Code: Select all
B Down: {301,msb}<-1,1|1,-1>(9,A:8,B:5,C:11,D:5,E:8,-74m)3{A=0x20,B=0x2,C=0x0,D=0x5,E=0x0}
D Down: {301,msb}<-1,1|1,-1>(9,A:8,B:5,C:11,D:5,E:8,-74m)4{A=0x20,B=0xc,C=0x0,D=0x7,E=0x0}
E down: {301,msb}<-1,1|1,-1>(9,A:8,B:5,C:11,D:5,E:8,-74m)5{A=0x20,B=0x11,C=0x0,D=0x8,E=0x0}
G Down: {301,msb}<-1,1|1,-1>(9,A:8,B:5,C:11,D:5,E:8,-74m)4{A=0x20,B=0x1f,C=0x0,D=0xa,E=0x0}
H Down: {301,msb}<-1,1|1,-1>(9,A:8,B:5,C:11,D:5,E:8,-74m)6{A=0x20,B=0x12,C=0x0,D=0xb,E=0x0}
K Down: {301,msb}<-1,1|1,-1>(9,A:8,B:5,C:11,D:5,E:8,-74m)8{A=0x20,B=0x1e,C=0x0,D=0xc,E=0x0}
L Down: {301,msb}<-1,1|1,-1>(9,A:8,B:5,C:11,D:5,E:8,-74m)6{A=0x20,B=0x1d,C=0x0,D=0xf,E=0x0}
M Down: {301,msb}<-1,1|1,-1>(9,A:8,B:5,C:11,D:5,E:8,-74m)2{A=0x20,B=0x12,C=0x0,D=0x10,E=0x0}
N Down: {301,msb}<-1,1|1,-1>(9,A:8,B:5,C:11,D:5,E:8,-74m)5{A=0x20,B=0x1f,C=0x0,D=0x11,E=0x0}
O down: {301,msb}<-1,1|1,-1>(9,A:8,B:5,C:11,D:5,E:8,-74m)5{A=0x20,B=0x1c,C=0x0,D=0x12,E=0x0}
P Down: {301,msb}<-1,1|1,-1>(9,A:8,B:5,C:11,D:5,E:8,-74m)2{A=0x20,B=0x11,C=0x0,D=0x13,E=0x0}
Q Down: {301,msb}<-1,1|1,-1>(9,A:8,B:5,C:11,D:5,E:8,-74m)4{A=0x20,B=0x1d,C=0x0,D=0x14,E=0x0}
R down: {301,msb}<-1,1|1,-1>(9,A:8,B:5,C:11,D:5,E:8,-74m){A=0x20,B=0x10,C=0x0,D=0x15,E=0x0}
S Down: {301,msb}<-1,1|1,-1>(9,A:8,B:5,C:11,D:5,E:8,-74m){A=0x20,B=0x13,C=0x0,D=0x16,E=0x0}
T Down: {301,msb}<-1,1|1,-1>(9,A:8,B:5,C:11,D:5,E:8,-74m)5{A=0x20,B=0x1e,C=0x0,D=0x17,E=0x0}
U Down: {301,msb}<-1,1|1,-1>(9,A:8,B:5,C:11,D:5,E:8,-74m)4{A=0x20,B=0x3,C=0x0,D=0x18,E=0x0}
V Down: {301,msb}<-1,1|1,-1>(9,A:8,B:5,C:11,D:5,E:8,-74m)4{A=0x20,B=0xe,C=0x0,D=0x19,E=0x0}
W Down: {301,msb}<-1,1|1,-1>(9,A:8,B:5,C:11,D:5,E:8,-74m)3{A=0x20,B=0xe,C=0x0,D=0x19,E=0x0}
X Down: {301,msb}<-1,1|1,-1>(9,A:8,B:5,C:11,D:5,E:8,-74m)4{A=0x20,B=0xd,C=0x0,D=0x1a,E=0x0}
Y Down: {301,msb}<-1,1|1,-1>(9,A:8,B:5,C:11,D:5,E:8,-74m)5{A=0x20,B=0x0,C=0x0,D=0x1b,E=0x0}
Z Down: {301,msb}<-1,1|1,-1>(9,A:8,B:5,C:11,D:5,E:8,-74m)5{A=0x20,B=0xc,C=0x0,D=0x1c,E=0x0}
Z down2:{301,msb}<-1,1|1,-1>(9,A:8,B:5,C:11,D:5,E:8,-74m)5{A=0x20,B=0x1,C=0x0,D=0x1d,E=0x0}
Code: Select all
{301,msb}<-1,1|1,-1>(9,A:8,B:5,C:11,D:5,E:8,-74m)*(9,Q:37,-497m){A=0x20,C=0x0,E=0x0,Q=0x400000000}[B:0..31,D:0..31]
Code: Select all
B Down: {301,msb}<-1,1|1,-1>(9,A:37,-74m)3{A=0x402000500}Get the development version here. (You can also change 64 to 63.)my command window keeps saying the maximumparameterwidth needs to be <64.
The argument to --name needs to be the name of the file where the commands are; I doubt that ~/jp1/mce_keyboard/downsNoACF.txt make sense in your environment. Get the file above, save it to the working directory, and useirptransmogrifier --absolutetolerance 100 analyze --repeat --maxparameterwidth 64 --name ~/jp1/mce_keyboard/downsNoACF.txt
Code: Select all
irptransmogrifier --absolutetolerance 100 analyze --repeat --maxparameterwidth 64 --name downsNoACF.txt IrpTransmogrifier is a bit smarter here, it builds a histogram of all durations, and computes the average in each "bin", and uses that. Put the "-s" (or "--statistics") option in the command line (for example immediately after "analyze"), and it will tell you the "rounded" durations it is using.Rob has a spreadsheet that will create an IR file so that we can use IR.exe's facility to round
As I said before, you can also capture IR signals directly in IrScrutinizer, using the widget, or other hardware.vickyg2003 wrote:Start IRScrutinezer
Select Export Tab
Setup the Export dir.
Set Export Format to Text
Check Raw and Uncheck any other boxes
Select Import Tab
Alternatively, select a subset with left click/shift click/control click, and import that subset using import select./raw.Select ICT tab
Locate the ICT
Click Load URL
Click Import all/ RAW
No, that checkbox is ignored. However, you can edit the table just as in remotemaster (function), or like in Excel, deleting, renaming, etc.Click OK when asked to Jump to Panel
Select the buttons I want checking on the .ver
Alternatively, if you unselect "Automatic file names" on the Export pane, you will have to supply the file name yourself. Use the method you like best (that is why it is selectable!).Click on the Export button
Note the filename in the window at the bottom of the screen
Open a CMD window
issue the command line
irptransmogrifier --absolutetolerance 100 analyze --repeat --maxparameterwidth 64 --name filename.txt
And get the information I'm looking for.
This is SO MUCH EASIER THAN what I was needed to do before, but I never would have figured this out on my own.
You can use --parameterwidths to subdivide the data, as I did in a previous post. (You may have to "lock" the decode type with "--decode biphase" to keep the decode type, though.)Anyway here are some more keys. They all had the same button up code as the letters.
F1 Down: {301,msb}<-1,1|1,-1>(9,A:37,-73m){A=0x41e003a00}
F2 Down: {301,msb}<-1,1|1,-1>(9,A:37,-73m)2{A=0x413003b00}
F3 Down: {301,msb}<-1,1|1,-1>(9,A:37,-73m){A=0x41f003c00}
F4 down: {301,msb}<-1,1|1,-1>(9,A:37,-73m){A=0x412003d00}
f5 down: {301,msb}<-1,1|1,-1>(9,A:37,-73m){A=0x411003e00}
f6 Down: {301,msb}<-1,1|1,-1>(9,A:37,-73m){A=0x41c003f00}
f7 Down: {301,msb}<-1,1|1,-1>(9,A:37,-73m){A=0x414004000}
Code: Select all
F1 Down: {299,msb}<-1|1>(A:64,B:19,-73m){A=0xffacaad52aaaab53,B=0x15555}
F2 Down: {299,msb}<-1|1>(A:64,B:19,-73m)2{A=0xffacaacb4aaaab53,B=0x25555}
F3 Down: {299,msb}<-1|1>(A:64,B:19,-73m){A=0xffacaad54aaaab54,B=0x55555}
F4 down: {299,msb}<-1|1>(A:64,B:19,-73m){A=0xffacaacb2aaaab54,B=0x65555}
f5 down: {299,msb}<-1|1>(A:64,B:19,-73m){A=0xffacaacacaaaab55,B=0x15555}
f6 Down: {299,msb}<-1|1>(A:64,B:19,-73m){A=0xffacaad4aaaaab55,B=0x25555}
f7 Down: {299,msb}<1,-1|2,-2>(9,-1,A:26,-0,1,-1,B:6,-73m){A=0x10c0080,B=0x0}
F8 Down: {299,msb}<-1|1>(A:64,B:19,-73m){A=0xffacaad2caaaacaa,B=0x65555}
f9 Down: {299,msb}<-1|1>(A:64,B:19,-73m){A=0xffacaad32aaaacab,B=0x15555}
f10 down: {299,msb}<-1|1>(A:64,B:19,-73m){A=0xffacaacd4aaaacab,B=0x25555}
f11 Down: {299,msb}<-1|1>(A:64,B:19,-73m){A=0xffacaad34aaaacac,B=0x55555}
f12 Down: {299,msb}<-1|1>(A:64,B:19,-73m)4{A=0xffacaacd2aaaacac,B=0x65555}
Alt: {299,msb}<-1|1>(A:64,B:19,-73m){A=0xffacaaad2aaaaaaa,B=0x55565}
Ampersand: {299,msb}<-1|1>(A:64,B:19,-73m){A=0xffacaad2caaaab2c,B=0x55559}
AT: {299,msb}<-1|1>(A:64,B:19,-73m){A=0xffacaab32aaaaad5,B=0x25559}
Backquote: {299,msb}<-1|1>(A:64,B:19,-73m){A=0xffacaaab4aaaab4c,B=0x65555}
Backslash: {299,msb}<-1|1>(A:64,B:19,-73m){A=0xffacaab4aaaaab4a,B=0x65555}
Back Space: {299,msb}<-1|1>(A:64,B:19,-73m){A=0xffacaab4aaaaab33,B=0x15555}
CapsLock: {299,msb}<-1|1>(A:64,B:19,-73m){A=0xffacaad4caaaab52,B=0x65555}
Caret: {299,msb}<1,-1|2,-2>(9,-1,A:21,2,-1,1,-2,B:7,-73m){A=0x87004,B=0x2}
Colon: {299,msb}<-1|1>(A:64,B:19,-73m){A=0xffacaab2aaaaab4b,B=0x25955}
Colon 2: {299,msb}<-1|1>(A:64,B:19,-73m){A=0xffacaab2aaaaab4b,B=0x25955}
Comma: {299,msb}<-1|1>(A:64,B:19,-73m){A=0xffacaab32aaaab4d,B=0x15955}
CTRl: {299,msb}<-1|1>(A:64,B:18,-73m){A=0xffacaaab4aaaaaaa,B=0x2aaab}
CTRL2: {299,msb}<-1|1>(A:64,B:18,-73m){A=0xffacaaab4aaaaaaa,B=0x2aaab}