Here's what I did:
copied the binary data.
removed the repeated codes in each transmission.
Used the -15 value to locate the polarity bit (one of these is not like the other method), also realizing that most
languages mimic our own (specifically computer languages). It's better to put the negative symbol before the number,
it's prettier.
Separated what appeared to be headers and end of transmission stuff.
Converted the numbers in the middle to base ten, and paired them with the associated Celsius and Fahrenheit values.
Here's what I ended up with:
HDR, PolSymbT/F, Numb, EndTrans Numb Base 10 Coordinates
1011, 00, 111110, 01, => 62 24C,75F ==> (62, 24) or (62,75)
1011, 00, 101101, 01, => 45 23C,74F ==> (45, 23) or (45, 74)
1011, 00, 001100, 01, => 12 0C,32F ==> (12, 0) or (12, 32)
1011, 01, 000110, 01, => -6 -15C,-5F ==> (-6, -15) or (-6, -5)
Because I don't think it would make very much sense to have some kind of other system like NEC, DirecTV, Sony, as in Infrared protocols, since we're not controlling a function but going straight to a display. It should be transmit, receive, and immediately post to the display. => I ran it through a linear regression program. ASCII didn't work out very well. Here's what I got
C(x) = 0.598232x - 8.90006 F(x) = 1.19786x + 10.1603
C(a) Error Offset | F(a) Error Offset
C(62) = 28.190324, 4.19 | F(62) = 84.42762, 9.43
C(45) = 18.02038, -4.98 | F(45) = 64.064, -9.936
C(12) = -1.721276, -1.72 | F(12) = 24.53462, -7.47
C(-6) = -12.489452, 2.51 | F(-6) = 2.97314, 7.97
r^2 = 0.951936
Looking at the error offsets, I'd say that it looks a bit quadratic or parabolic, and we'd like r^2 to be closer to 1 ==> More regression,
but Quadratic instead.
C(x) = 0.00751x^2 - 1.019085x - 9.431543 F(x) = "Screw Fahrenheit"
Better to just do everything in Celsius, until it's time to display
C(a) Error Offset | something, for accuracies sake.
C(62) = 24.88174..., 0.8817... |
C(45) = 21.21871..., -1.7813... |
C(12) = -1.71598..., 1.7160... |
C(-6) = -15.81642..., -0.8164... |
r^2 = 0.992959
Now that r^2 value is much prettier, with much prettier error offsets to match. My recommendation would be to use the quadratic function above, with the x value being the stripped-down converted binary number, and the function C(x) output being an uncalibrated Celsius value.
That should get you close. Because there isn't a perfect linear temperature sensor, and I didn't see any place to store calibration values on my remote sensor, most likely those values are stored on the base station.
And ..... I need to make more coffee.... as if I hadn't enough