Amazon Basics DC Motor Fan Confusing Learns

General JP1 chit-chat. Developing special protocols, decoding IR signals, etc. Also a place to discuss Tips, Tricks, and How-To's.

Moderator: Moderators

Post Reply
120240VAC60HZ
Posts: 191
Joined: Sat Mar 17, 2007 12:40 am
Location: Trumbull, Connecticut

Amazon Basics DC Motor Fan Confusing Learns

Post by 120240VAC60HZ »

I need help creating an upgrade file for my Amazon Basics 12-speed DC motor fan model B07BNK6T5Q

I get confusing learns with DecodeIR all with the same OBC and all with the DirectTV protocol but different devices as well as subdevices therefore I can't make an upgrade file.

With IRTransmorgifier I get no protocol so I'm at a loss of what to do here.

Anyway here is a link to the RMIR file

Thank You

EDIT:

Oh I forgot to tell the forum that it is on the "STB" button

Power = Power
Up Arrow = Speed/Timer up
Down Arrow = Speed/Timer Down
Left Arrow = Breeze Mode
Right Arrow = Timer
OK= Oscillate
Barf
Expert
Posts: 1524
Joined: Fri Oct 24, 2008 1:54 pm
Location: Munich, Germany
Contact:

Post by Barf »

Happy X-Mas to all of you!!

Interesting. I looked at the signals, and it appears to be a new protocol. The learns appear to be quite consistent and noise-free, good. This is what I did:

Load the file in rmir. Turn on Options -> Advanced -> Learned signal Timing Analysis. Learned Signls -> Timing Summary. Save (as girr file, here fan.girr). In the IrpTransmogrifier distro, there is a xslt-script that takes that file to the named-input form of irptransmogrifier. So, (on Linux terminal)

Code: Select all

$ irptransmogrifier  decode  --xslt contributed/input-filters/rawgirr2named.xsl   --namedinput ../support/amazon_fan/fan.girr
Up:    No decodes.
Down:  No decodes.
OK:    No decodes.
Left:  No decodes.
Right: No decodes.
Power: No decodes.
Right, it does not decode. So we try to "analyze"

Code: Select all

$ irptransmogrifier  analyze  --xslt  contributed/input-filters/rawgirr2named.xsl   --namedinput ../support/amazon_fan/fan.girr                           
Up    {38.5k,520,msb}<1,-3|1,-5>(9,-9,A:17,9,-9,B:16,1,-13.764000000000001m,9074u,-5,1,-52m,9074u,-5,1,-130m){A=0x544,B=0x2a2}
Down  {38.5k,520,msb}<1,-3|1,-5>(9,-9,A:17,9,-9,B:16,1,-13.764000000000001m,9074u,-5,1,-52m,9074u,-5,1,-52m,9074u,-5,1,-130m){A=0x4b0,B=0x258}
OK    {38.5k,520,msb}<1,-3|1,-5>(9,-9,A:17,9,-9,B:16,1,-13.764000000000001m,9074u,-5,1,-52m,9074u,-5,1,-130m){A=0x550,B=0x2a8}
Left  {38.5k,520,msb}<1,-3|1,-5>(9,-9,A:17,9,-9,B:16,1,-13.764000000000001m,9074u,-5,1,-52m,9074u,-5,1,-130m){A=0x522,B=0x291}
Right {38.5k,520,msb}<1,-3|1,-5>(9,-9,A:17,9,-9,B:16,1,-13.764000000000001m,9074u,-5,1,-52m,9074u,-5,1,-130m){A=0x446,B=0x223}
Power {38.5k,520,msb}<1,-3|1,-5>(9,-9,A:17,9,-9,B:16,1,-13.764000000000001m,9074u,-5,1,-52m,9074u,-5,1,-130m){A=0x4a4,B=0x252}
which looks quite promising. So, possibly one of the executer wizards can write an executor for the protocol {38.5k,520,msb}<1,-3|1,-5>(9,-9,A:17,9,-9,B:16,1,-13.764000000000001m,9074u,(-5,1,-52m,9074u)*)?

IrpTransmogrifer can transmogrify even more:

Code: Select all

$ irptransmogrifier  analyze  --xslt  contributed/input-filters/rawgirr2named.xsl   --namedinput ../support/amazon_fan/fan.girr --stat --parametertable --bit-usage
Timebase: 520.0

Gaps:
B:      1536    = 3*520         150
C:      2543    = 5*520         61
D:      4592    = 9*520         12
F:      13764                   6
G:      52159                   7
H:      130544                  6

Flashes:
A:      520     = 1*520         217
D:      4592    = 9*520         12
E:      9074                    13

Pairs:
AB:     150
AC:     48
EC:     13
DD:     12
AG:     7
AF:     6
AH:     6
Up    DD AB AB AB AB AB AB AC AB AC AB AC AB AB AB AC AB AB DD AB AB AB AB AB AB AC AB AC AB AC AB AB AB AC AB AF EC AG EC AH
{38.5k,520,msb}<1,-3|1,-5>(9,-9,A:17,9,-9,B:16,1,-13.764000000000001m,9074u,-5,1,-52m,9074u,-5,1,-130m){A=0x544,B=0x2a2}
weight = 26     Pwm2Decoder
Down  DD AB AB AB AB AB AB AC AB AB AC AB AC AC AB AB AB AB DD AB AB AB AB AB AB AC AB AB AC AB AC AC AB AB AB AF EC AG EC AG EC AH
{38.5k,520,msb}<1,-3|1,-5>(9,-9,A:17,9,-9,B:16,1,-13.764000000000001m,9074u,-5,1,-52m,9074u,-5,1,-52m,9074u,-5,1,-130m){A=0x4b0,B=0x258}
weight = 30     Pwm2Decoder
OK    DD AB AB AB AB AB AB AC AB AC AB AC AB AC AB AB AB AB DD AB AB AB AB AB AB AC AB AC AB AC AB AC AB AB AB AF EC AG EC AH
{38.5k,520,msb}<1,-3|1,-5>(9,-9,A:17,9,-9,B:16,1,-13.764000000000001m,9074u,-5,1,-52m,9074u,-5,1,-130m){A=0x550,B=0x2a8}
weight = 26     Pwm2Decoder
Left  DD AB AB AB AB AB AB AC AB AC AB AB AC AB AB AB AC AB DD AB AB AB AB AB AB AC AB AC AB AB AC AB AB AB AC AF EC AG EC AH
{38.5k,520,msb}<1,-3|1,-5>(9,-9,A:17,9,-9,B:16,1,-13.764000000000001m,9074u,-5,1,-52m,9074u,-5,1,-130m){A=0x522,B=0x291}
weight = 26     Pwm2Decoder
Right DD AB AB AB AB AB AB AC AB AB AB AC AB AB AB AC AC AB DD AB AB AB AB AB AB AC AB AB AB AC AB AB AB AC AC AF EC AG EC AH
{38.5k,520,msb}<1,-3|1,-5>(9,-9,A:17,9,-9,B:16,1,-13.764000000000001m,9074u,-5,1,-52m,9074u,-5,1,-130m){A=0x446,B=0x223}
weight = 26     Pwm2Decoder
Power DD AB AB AB AB AB AB AC AB AB AC AB AC AB AB AC AB AB DD AB AB AB AB AB AB AC AB AB AC AB AC AB AB AC AB AF EC AG EC AH
{38.5k,520,msb}<1,-3|1,-5>(9,-9,A:17,9,-9,B:16,1,-13.764000000000001m,9074u,-5,1,-52m,9074u,-5,1,-130m){A=0x4a4,B=0x252}
weight = 26     Pwm2Decoder

Bit usage analysis:
A       00000010*****0**0       8,5,1,2,1
B       00000010*****0**        8,5,1,2
Duplicates analysis:
A       00000010**(a:1)(~a:1)*0**0
B       00000010**(b:1)(~b:1)*0**

Parameter table:
Up      0x00544 0x02a2
Down    0x004b0 0x0258
OK      0x00550 0x02a8
Left    0x00522 0x0291
Right   0x00446 0x0223
Power   0x004a4 0x0252

Feel free to ask me for any details.
The Robman
Site Owner
Posts: 21889
Joined: Fri Aug 01, 2003 9:37 am
Location: Chicago, IL
Contact:

Post by The Robman »

Here's how I see the signals:

I used
0 = +520 -1536;
1 = +520 -2588;

Up
+4500 -4500; 00000010 10100010 +500 -1500;
+4500 -4500; 00000010 10100010 +500 -14000;
+9000 -2500; +500 -52500; (repeats)

Down
+4500 -4500; 00000010 01011000 +500 -1500;
+4500 -4500; 00000010 01011000 +500 -14000;
+9000 -2500; +500 -52500; (repeats)

OK
+4500 -4500; 00000010 10101000 +500 -1500;
+4500 -4500; 00000010 10101000 +500 -14000;
+9000 -2500; +500 -52500; (repeats)

Left
+4500 -4500; 00000010 10010001 +500 -1500;
+4500 -4500; 00000010 10010001 +500 -14000;
+9000 -2500; +500 -52500; (repeats)

Right
+4500 -4500; 00000010 00100011 +500 -1500;
+4500 -4500; 00000010 00100011 +500 -14000;
+9000 -2500; +500 -52500; (repeats)

Power
+4500 -4500; 00000010 01010010 +500 -1500;
+4500 -4500; 00000010 01010010 +500 -14000;
+9000 -2500; +500 -52500; (repeats)

And here are the 6 buttons in binary format:

Code: Select all

Up      00000010 10100010
Down    00000010 01011000
OK      00000010 10101000
Left    00000010 10010001
Right   00000010 00100011
Power   00000010 01010010
In summary:
* You get the data signal twice, followed by a leadout time, then you get a data-less signal repeating. It's not unlike the NEC1 format.

the buttons on the remote are:
On/Off
Timer
Mode
Oscillates
Increase Speed
Decrease Speed


But as this is for a fan, and I see from the description that it has "3 power settings and 3 breeze modes (Nature/Sleep/Normal)", I suspect that the various modes are built into the signals, which would mean your UP and DOWN are really just the codes for the next speed selection.

To prove or disprove this theory, could you learn each button from the remote at least 3 times, and before you do, use the remote to put the fan into a known state (eg, you know which power mode and which breeze mode)

And in case anyone wants to see it, here's the user manual for this fan:
https://m.media-amazon.com/images/I/C1GnB7bMarS.pdf
Rob
www.hifi-remote.com
Please don't PM me with remote questions, post them in the forums so all the experts can help!
The Robman
Site Owner
Posts: 21889
Joined: Fri Aug 01, 2003 9:37 am
Location: Chicago, IL
Contact:

Post by The Robman »

I have written a protocol executor to replicate these signals, and it's included in the following upgrade file:

http://www.hifi-remote.com/forums/dload ... e_id=26804
Rob
www.hifi-remote.com
Please don't PM me with remote questions, post them in the forums so all the experts can help!
120240VAC60HZ
Posts: 191
Joined: Sat Mar 17, 2007 12:40 am
Location: Trumbull, Connecticut

Post by 120240VAC60HZ »

The Robman wrote:I have written a protocol executor to replicate these signals, and it's included in the following upgrade file:

http://www.hifi-remote.com/forums/dload ... e_id=26804
Thank You!
I just tested it and all functions work 100%

Thanks again
The Robman
Site Owner
Posts: 21889
Joined: Fri Aug 01, 2003 9:37 am
Location: Chicago, IL
Contact:

Post by The Robman »

So the UP and DOWN buttons are true up and down buttons and don't just set the fan to a specific setting? Glad it works.

Could you tell me which of the factory functions you assigned to each of the buttons? I can guess 3 of them.

On/Off = POWER
Increase Speed = UP
Decrease Speed = DOWN
Timer
Mode
Oscillates
Rob
www.hifi-remote.com
Please don't PM me with remote questions, post them in the forums so all the experts can help!
120240VAC60HZ
Posts: 191
Joined: Sat Mar 17, 2007 12:40 am
Location: Trumbull, Connecticut

Post by 120240VAC60HZ »

The Robman wrote:So the UP and DOWN buttons are true up and down buttons and don't just set the fan to a specific setting? Glad it works.

Could you tell me which of the factory functions you assigned to each of the buttons? I can guess 3 of them.

On/Off = POWER
Increase Speed = UP
Decrease Speed = DOWN
Timer
Mode
Oscillates
Yes the up/down only do that function and don't set the fan to a specific setting

Anyway the full keymap is as follows

Power = Power
Up Arrow = Speed/Timer up
Down Arrow = Speed/Timer Down
Left Arrow = Breeze Mode
Right Arrow = Timer
OK= Oscillate
The Robman
Site Owner
Posts: 21889
Joined: Fri Aug 01, 2003 9:37 am
Location: Chicago, IL
Contact:

Post by The Robman »

Thanks man, I have updated the Function names in the upgrade that I posted.
Rob
www.hifi-remote.com
Please don't PM me with remote questions, post them in the forums so all the experts can help!
120240VAC60HZ
Posts: 191
Joined: Sat Mar 17, 2007 12:40 am
Location: Trumbull, Connecticut

Post by 120240VAC60HZ »

The Robman wrote:Thanks man, I have updated the Function names in the upgrade that I posted.
Thank You for making a working upgrade file.
mathdon
Expert
Posts: 4725
Joined: Tue Jul 22, 2008 8:53 am
Location: Cambridge, UK

Post by mathdon »

This protocol is now fully incorporated into RMIR v3.0.12 released yesterday.
Graham
Post Reply