Pages: [1]   Go Down
Author Topic: ACU>RITE Temp Sensor # 606TX  (Read 1464 times)
0 Members and 1 Guest are viewing this topic.
Mesa,AZ
Offline Offline
Newbie
*
Karma: 0
Posts: 8
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Any One Decode The Format Of The Binary RF Stream ?
I Have Some Samples....

101 100 1111 100 1100 1 111 1001 100 1111 100 1100 1 111 1001 100 1111 100 1100 1111 1001 100 1111 100 1100 1111 1001  {24°C-75°F}
    |                                         |                                         |                                        |
101 100 1011 010 1100 1 011 0101 100 1011 010 1100 1 011 0101 100 1011 010 1100 1011 0101 100 1011 010 1100 1011 0101  {23°C-74°F}
    |                                         |                                         |                                        |
101 100 0011 000 1100 0 011 0001 100 0011 000 1100 0 011 0001 100 0011 000 1100 0011 0001 100 0011 000 1100 0011 0001  {0°C-32°F}
    |                                         |                                         |                                        |
It Is Repeating, 4 Times....
Logged

0
Offline Offline
Shannon Member
****
Karma: 162
Posts: 10496
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

8 times, 11 bit repeat, could be a serial char with 2 stop bits even, but the value doesn't make sense - some more examples at intermediate temperatures would be good to help work it out.
Logged

[ I won't respond to messages, use the forum please ]

Mesa,AZ
Offline Offline
Newbie
*
Karma: 0
Posts: 8
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Here is One More Colder....

101 100 1111 100 1100 1 111 1001 100 1111 100 1100 1 111 1001 100 1111 100 1100 1 111 1001 100 1111 100 1100 1111 1001  24°C-75°F
     |                                        |                                         |                                         |
101 100 1011 010 1100 1 011 0101 100 1011 010 1100 1 011 0101 100 1011 010 1100 1 011 0101 100 1011 010 1100 1011 0101  23°C-74°F
     |                                        |                                         |                                         |
101 100 0011 000 1100 0 011 0001 100 0011 000 1100 0 011 0001 100 0011 000 1100 0 011 0001 100 0011 000 1100 0011 0001  0°C-32°F
     |                                        |                                         |                                         |
101 101 0001 100 1101 0 001 1001 101 0001 100 1101 0 001 1001 101 0001 100 1101 0 001 1001 101 0001 100 1101 0001 1001  -15°C-5°F
     |                                        |                                         |                                         |

This is Received Using an 433 MHz Receiver Transmitter Pair From E-Bay. smiley-cool
Its Just a 1's & 0's Data Stream.



* mxcpm1yxdmSJNuM3fKtDCN7JdsQ.jpg (10.45 KB, 225x183 - viewed 23 times.)
Logged

0
Offline Offline
Shannon Member
****
Karma: 162
Posts: 10496
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Do you know what the modulation type is for sure?
Logged

[ I won't respond to messages, use the forum please ]

Dallas, TX
Offline Offline
Sr. Member
****
Karma: 10
Posts: 318
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

They are "binary palindromes", for want of a better term. The {0°C-32°F} sequence for example contains a series of 38 bits, the second 19 bits of which is a mirror image of the first 19 bits. I haven't figured out the encoding but I might guess some sort of NRZ. IR remotes use something similar to this.
Logged

Mesa,AZ
Offline Offline
Newbie
*
Karma: 0
Posts: 8
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I Hope I (we) Can Get This Going....
You Can Get A Sensor For $5.00 # 606TX. This one is Temperature Only...
The Temperature & Humidity Sensor Is $5.00 Also, # 593TXR.

Is There Sketch For Measuring a Digital Pin In Microseconds, High & Low, Mine Might Be In Error.....

Logged

Mesa,AZ
Offline Offline
Newbie
*
Karma: 0
Posts: 8
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

The Display and Sensor Looks Like This....
# 00380

The Timing is :
Digital Pin High No Data Received. When Receiving Data, The Highs Is About 500 Microseconds And The Lows Are 2,000 Microseconds (Shorts) &
4,000 Microseconds (Longs). VPWM ? (Variable Pulse Width Modulation ?)

So I Say 500 Microseconds = Nothing (High)
        2,000 Microseconds = 0 (Binary) (Low)
        4,000 Microseconds = 1 (Binary) (Low)





* mxcp00380_av-sensor-300dpi-hi-res_1.jpg (16.6 KB, 600x600 - viewed 21 times.)

* mxcp00380_av-display-300dpi-hi-res_1.jpg (1.99 KB, 70x70 - viewed 240 times.)
« Last Edit: October 20, 2012, 10:14:07 am by Shane99875 » Logged

Dallas, TX
Offline Offline
Sr. Member
****
Karma: 10
Posts: 318
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

It would probably help if you posted the sketch you are using.
Logged

Mesa,AZ
Offline Offline
Newbie
*
Karma: 0
Posts: 8
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Here Is 1 Of My Sketch's :  smiley-cool
--------------------------------------------------------------------------------------------------------------------
/*
 *  Read Pulse in MicroSeconds
 *  Using Digital Pin # 47
 *  Pin # 47 High When NOT Reciving Data
 *  Pin # 47 Goes Low When Reciving Data
 */


int Pin = 47;                           // Reciver is connected to pin # 47
unsigned long Duration;
int Count = 0;
int EndCount = 0;
int PulseLow[500];
int PulseHigh[500];
int a;

void setup() {
  pinMode(Pin, INPUT);                 // Set the switch pin as input

  Serial.begin(9600);                  // Set up serial communication at 9600bps
  Serial.println("Reading Pin(47) MicroSeconds:");
  Serial.println("Count  High  Low");
}

void loop() {

do { 
 Duration = pulseIn(Pin, HIGH);                // Wait For Data
} while (Duration < 1);

  PulseHigh[Count] = Duration;

do {                                           
   Duration = pulseIn(Pin, LOW);
   PulseLow[Count] = Duration;
   
   Duration = pulseIn(Pin, HIGH);             // Reciving Data, Short & Long Pulse's
   PulseHigh[Count] = Duration;
   Count++;
} while (Duration > 10);

   
 EndCount = Count;
 Count = 0;
 
for(Count; Count < EndCount; Count=Count+1) {       // Print Out Data To Serial Terminal
 Serial.print(Count);
 Serial.print("      ");
 Serial.print(PulseHigh[Count]);
 Serial.print("   ");
 Serial.println(PulseLow[Count]);
 }
 
 do {                                     // Loop Forerver
  a = 0;
 } while (a = 1);
 
}

---------------------------------------------------------------------------------------------------------------------------------------
And The Data Dump... In Microseconds...

Reading Pin(47) MicroSeconds:
Count  High  Low
0      529   481
1      533   2047
2      529   4145
3      519   4174
4      523   2055
5      514   2057
6      514   4155
7      520   4183
8      520   2060
9      515   4159
10      514   4161
11      523   2061
12      515   2057
13      516   4159
14      518   4182
15      520   2059
16      510   2062
17      518   4159
18      519   4190
19      514   2061
20      514   4151
21      523   4157
22      522   2060
23      514   2060
24      523   4155
25      520   4182
26      514   2056
27      515   2061
28      519   4159
29      515   4183
30      514   2060
31      522   4157
32      523   4153
33      518   2061
34      523   2056
35      524   4156
36      516   4182
37      514   2052
38      518   2061
39      512   4160
40      516   4178
41      520   2061
42      520   4156
43      520   4155
44      516   2060
45      526   2057
46      518   4155
47      514   4181
48      520   2060
49      511   2059
50      514   4157
51      522   4186
52      522   2060
53      514   4157
54      518   4155
55      526   2057
56      518   2056
57      516   4155
58      522   4181
59      520   2060
60      514   2060
61      519   4160
62      520   4186
63      516   2059
64      516   4149
65      523   4156
66      523   2059
67      518   2057
68      524   4156
69      522   4182
70      514   2060
71      520   2061
72      516   4159
73      514   4183
74      515   2060
75      522   4157
76      524   4156
77      518   2060
78      520   2057
79      522   4155
80      518   4181
81      515   2056
82      519   2060
83      514   4159
84      514   4176
85      520   2060
86      522   4156
87      516   4157
88      13418   2060
89      7230   39
90      0   0
Logged

Dallas, TX
Offline Offline
Sr. Member
****
Karma: 10
Posts: 318
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

That's a clever scheme for capturing the data. I tend to believe your theory about the modulation is correct. I haven't had an aha! moment about the encoding yet. Have you exhausted the web for hints from other users of the sensors?
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 2
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

The weather station software WxShield has added support for acu-rite as of version 1.7.

« Last Edit: November 02, 2013, 05:45:33 pm by Ogiller » Logged

Oregon, USA
Offline Offline
Edison Member
*
Karma: 38
Posts: 1571
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Some time ago I decoded the transmission of an ACURITE W091 Temperature Sensor, also 433 MHz and it seems to use a similar protocol. The bit coding certainly seems to be the same.  I used a 433 MHz receiver, the line audio in jack and Audacity on a laptop to capture the signal. My notes indicate the following:

9 milliseconds start bit
4 milliseconds RF off = 1 bit
2 milliseconds RF off =  0 bit

Transmissions: 9 ms start bit, followed by 24 bits repeated 11 times
each 24 bit packet consists of 10 bit sensor ID, 12 bits temperature in degrees C*10, then two bits of unknown function. Negative temperature is stored as 2's complement.
The sensor ID is a rolling code and changes every time you disconnect and reconnect the battery.

The WxShield software mentioned in a previous post doesn't appear to decode this particular sensor. I spent some time looking at your data but am stumped. I like a challenge, so more examples with different values would help! Please let us know how you finally decode your transmissions.
« Last Edit: November 03, 2013, 01:38:13 pm by jremington » Logged

"It seems to run on some form of electricity"

Pages: [1]   Go Up
Jump to: