rtl_433 icon indicating copy to clipboard operation
rtl_433 copied to clipboard

Abode/AbodeRF 433Mhz sensors support (possible Climax rebrand)

Open kiler129 opened this issue 1 year ago • 11 comments

Background

Abode used to be a great platform to build alarm systems that work offline, with decently priced hardware. They also offered a fair semi-managed option. In late 2022 the company decided to pull a rug on users by making all notifications useless, in addition to paywalling previously free detection details, effectively making self-monitoring next to useless. Naturally users got pissed but nothing has changed. While they couldn't kill HomeKit, probably due to Apple certification, they ensured it's nerfed to basics. Building into the system also isn't possible as alarm can only be triggered by official sensors.

BUT... the sensors are pretty decent, small, and many people in the US have a lot of them installed. Thus, the only sensible option is DIYing the alarm and getting rid of Abode gateway :)

Are sensors reusable?

There's very little information about that. There are some posts asking about reusing sensors but nothing more than that. Abode itself is pretty tight-lipped about how each component connects. While the gateway supports Zigbee and Z-Wave, all sensors appear to be 433Mhz ones using """proprietary AbodeRF""".

Digging through FCC database I found that Abode Systems has very little in it. Beyond WiFi products, the only thing is an alarm keypad that runs on 433Mhz. Then, I found a Reddit post suggesting Abode is a Climax rebrand + a nice coat of paint. The FCC search brought me to the same line of contact sensors from Climax (minus Abode labels). Looking at the RF report these indeed run at 433Mhz.

Reusing sensors

I looked at the contributing guidelines, but it seems a bit over my head to write a decoder. Did anyone maybe tried to touch these sensors? They offer pairing and allegedly "jamming protection" (which was allegedly proven false), ~~they don't seem to send any periodic messages nor offer battery monitoring. Just a simple open/close status broadcast.~~ (Edit: see https://github.com/merbanan/rtl_433/issues/2724#issuecomment-1938164871 - periodic messages sent every 30-50min and "battery low" signal allegedly are implemented).

If nobody tried, would posting a capture itself of pairing and repeated open/close help decode and possibly support these sensors?

kiler129 avatar Nov 21 '23 04:11 kiler129

Yes, sample files would be great and a quick way to see what the protocol is like.

The FCC internal photos show two QFP chips (U2, U4) -- can you maybe open one sender and identify the markings on those?

zuckschwerdt avatar Nov 21 '23 10:11 zuckschwerdt

I have a ton of these, would be phenomenal to use them without the alarm necessarily

jwjenkin avatar Jan 06 '24 01:01 jwjenkin

@kiler129 & @jwjenkin Would you be able to provide several .cu8 files of these devices with descriptions of the device and conditions (open/close) that generated the signal? See "Supporting Additional Devices and Test Data" in CONTRIBUTING for info.

Essentially, rtl_433 -S unknown should get you started (assuming 433 MHz) and if you want to be more discriminating and provide quality samples, maybe disconnect the antenna on your RTL and hold the Abode/Climax device a few centimeters from you RTL device to get those samples.

klohner avatar Jan 08 '24 19:01 klohner

@klohner Sorry for a huge delay - life got away a bit, with my SDR getting killed in the process and being replaced with genuine RTL-SDRv3 :)

I collected a few samples from the device (Abode Mini Door/Window Sensor, specs from manufacturer). Let me know if I can collect any other samples. I described the current ones below.

@zuckschwerdt As for the electronics, I took high-res pictures of both sides of the board, with an additional macro shot of the U8 and its pesky laser markings: IMG_9678 IMG_9674 IMG_9676

Googling around with MDC-3 I found this manual from Climax (preserved here if it gets deleted). It describes a few things about the "learn/test" mode as well as states that "The Door Contact will automatically transmit Supervisory signals periodically to the Control Panel at random intervals of 30 to 50 minutes in Normal Operation Mode.", suggesting that some spurious transmissions as seen below may be these supervision signals.


I think the table with summary will be the best. All sample files are attached (samples.tgz):

  • Smp# represents file number e.g. 1 is g001_433.92M_250k.cu8
  • Action is what I physically did to the sensor
  • Door/Tamper/Pair columns represent state of a button/door reed switch when the action was performed
    • - was put in a column when action was performed on a given input
    • ? designates unknown state (i.e. where I cannot be 100% certain what was the state)
    • 0 designates open circuit/not pressed/not triggered by magnet; while 1 represents the opposite state
    • Door is a reed switch, labeled S3 on the PCB
    • Tamper is a microswitch with a spring, normally held in pressed state by the case, labeled S1 on PCB
    • Pair is a momentary microswitch, labeled as S2 on PCB
  • All samples collected, as recommended, without antenna attached with the receiver's SMA ~1-2mm from the sensor's antenna
Smp# Action Door Tamper Pair
1 Press tamper 0 - 0
2 Release tamper 0 - 0
3 Press tamper 0 - 0
4 Release tamper 0 - 0
5-8 Press pair 0 0 -
9-12 Press pair 0 1 -
13 Unknown[1] 0 ? 0
14 Press tamper 1 - 0
15 Release tamper 1 - 0
16 Press tamper 1 - 0
17 Release tamper 1 - 0
18-21 Press pair 1 0 -
22-25 Press pair 1 1 -
26 Close door - 1 0
27 Open door - 1 0
28 Close door - 1 0
29 Open door - 1 0
30 Close door - 1 0
31 Unknown[2] 1 1 0
32 Open door - 1 0
33 Close door - 1 0
34 Open door - 1 0
35-38 Unknown[3] ? ? ?
39 Close door - 0 0
40 Open door - 0 0
41 Close door - 0 0
42 Open door - 0 0
43 Close door - 0 0
44 Open door - 0 0
45 Close door - 0 0
46 Open door - 0 0

References for "unknown" from table:

  1. Spurious message when sensor was on the table
  2. Message sent without state change when door was closed for a few seconds; doesn't happen all the time
  3. Sensor flew away when I was taking notes :D Attached for completeness of series in case there's some counter in the packets

Full capture log from rtl_433:

# rtl_433 -S unknown
rtl_433 version 22.11 (2022-11-19) inputs file rtl_tcp RTL-SDR SoapySDR
Use -h for usage help and see https://triq.org/ for documentation.
Trying conf file at "rtl_433.conf"...
Trying conf file at "/root/.config/rtl_433/rtl_433.conf"...
Trying conf file at "/usr/local/etc/rtl_433/rtl_433.conf"...
Trying conf file at "/etc/rtl_433/rtl_433.conf"...
Registered 191 out of 223 device decoding protocols [ 1-4 8 11-12 15-17 19-23 25-26 29-36 38-60 63 67-71 73-100 102-105 108-116 119 121 124-128 130-149 151-161 163-168 170-175 177-197 199 201-215 217-223 ]
Detached kernel driver
Found Rafael Micro R820T tuner
Exact sample rate is: 250000.000414 Hz
[R82XX] PLL not locked!
Sample rate set to 250000 S/s.
Tuner gain set to Auto.
Tuned to 433.920MHz.
Allocating 15 zero-copy buffers
baseband_demod_FM: low pass filter for 250000 Hz at cutoff 25000 Hz, 40.0 us
*** Saving signal to file g001_433.92M_250k.cu8 (556365 samples, 1179648 bytes)
*** Saving signal to file g002_433.92M_250k.cu8 (611385 samples, 1310720 bytes)
*** Saving signal to file g003_433.92M_250k.cu8 (572053 samples, 1179648 bytes)
*** Saving signal to file g004_433.92M_250k.cu8 (572073 samples, 1179648 bytes)

*** Saving signal to file g005_433.92M_250k.cu8 (247211 samples, 524288 bytes)
*** Saving signal to file g006_433.92M_250k.cu8 (286573 samples, 655360 bytes)
*** Saving signal to file g007_433.92M_250k.cu8 (278689 samples, 655360 bytes)
*** Saving signal to file g008_433.92M_250k.cu8 (294408 samples, 655360 bytes)


*** Saving signal to file g009_433.92M_250k.cu8 (286509 samples, 655360 bytes)
*** Saving signal to file g010_433.92M_250k.cu8 (270804 samples, 655360 bytes)
*** Saving signal to file g011_433.92M_250k.cu8 (247227 samples, 524288 bytes)
*** Saving signal to file g012_433.92M_250k.cu8 (270814 samples, 655360 bytes)
*** Saving signal to file g013_433.92M_250k.cu8 (270830 samples, 655360 bytes)



*** Saving signal to file g014_433.92M_250k.cu8 (611383 samples, 1310720 bytes)
*** Saving signal to file g015_433.92M_250k.cu8 (587770 samples, 1179648 bytes)
*** Saving signal to file g016_433.92M_250k.cu8 (579973 samples, 1179648 bytes)
*** Saving signal to file g017_433.92M_250k.cu8 (619206 samples, 1310720 bytes)
*** Saving signal to file g018_433.92M_250k.cu8 (247207 samples, 524288 bytes)
*** Saving signal to file g019_433.92M_250k.cu8 (255097 samples, 524288 bytes)
*** Saving signal to file g020_433.92M_250k.cu8 (270827 samples, 655360 bytes)
*** Saving signal to file g021_433.92M_250k.cu8 (286546 samples, 655360 bytes)

*** Saving signal to file g022_433.92M_250k.cu8 (294415 samples, 655360 bytes)
*** Saving signal to file g023_433.92M_250k.cu8 (270818 samples, 655360 bytes)
*** Saving signal to file g024_433.92M_250k.cu8 (262947 samples, 655360 bytes)
*** Saving signal to file g025_433.92M_250k.cu8 (262955 samples, 655360 bytes)




*** Saving signal to file g026_433.92M_250k.cu8 (572125 samples, 1179648 bytes)
*** Saving signal to file g027_433.92M_250k.cu8 (572059 samples, 1179648 bytes)
*** Saving signal to file g028_433.92M_250k.cu8 (564179 samples, 1179648 bytes)
*** Saving signal to file g029_433.92M_250k.cu8 (564097 samples, 1179648 bytes)
*** Saving signal to file g030_433.92M_250k.cu8 (564157 samples, 1179648 bytes)
*** Saving signal to file g031_433.92M_250k.cu8 (270793 samples, 655360 bytes)
*** Saving signal to file g032_433.92M_250k.cu8 (595562 samples, 1310720 bytes)
*** Saving signal to file g033_433.92M_250k.cu8 (572024 samples, 1179648 bytes)
*** Saving signal to file g034_433.92M_250k.cu8 (587744 samples, 1179648 bytes)



*** Saving signal to file g035_433.92M_250k.cu8 (619221 samples, 1310720 bytes)
*** Saving signal to file g036_433.92M_250k.cu8 (627110 samples, 1310720 bytes)
*** Saving signal to file g037_433.92M_250k.cu8 (587847 samples, 1179648 bytes)
*** Saving signal to file g038_433.92M_250k.cu8 (619279 samples, 1310720 bytes)



*** Saving signal to file g039_433.92M_250k.cu8 (587769 samples, 1179648 bytes)
*** Saving signal to file g040_433.92M_250k.cu8 (595709 samples, 1310720 bytes)
*** Saving signal to file g041_433.92M_250k.cu8 (587796 samples, 1179648 bytes)
*** Saving signal to file g042_433.92M_250k.cu8 (564162 samples, 1179648 bytes)
*** Saving signal to file g043_433.92M_250k.cu8 (564184 samples, 1179648 bytes)
*** Saving signal to file g044_433.92M_250k.cu8 (587745 samples, 1179648 bytes)
*** Saving signal to file g045_433.92M_250k.cu8 (611379 samples, 1310720 bytes)
*** Saving signal to file g046_433.92M_250k.cu8 (548506 samples, 1179648 bytes)
^CSignal caught, exiting!
Reattached kernel driver

kiler129 avatar Feb 12 '24 07:02 kiler129

That is a very nice and detailed analysis! Re chips: the bigger one is a TI MSP430G2553 MCU -- the sensor seems capable and well designed, the idle messages, perhaps with battery info a great and not found in cheaper ones. No idea what that "119B D904 125" part is.

zuckschwerdt avatar Feb 12 '24 13:02 zuckschwerdt

The signals are clipping (too loud) but it looks like FSK with 100 µs PCM. This will get data: rtl_433 -Y minmax -R 0 -X 'n=name,m=FSK_PCM,s=100,l=100,r=4000'

There is a consistent prefix of aaaaaaaa29cd29cd0a0000 but the payload seems encrypted. Have a look through all the codes to see if any correlation pops out.

Raw codes

[g001_433.92M_250k.cu8]
{173}d555555514e694e685000009287de27bd6ceb9cadb80[@0.1s]
{172}aaaaaaaa29cd29cd0a0000311eaeefd3a6698391360[@0.6s]
{173}d555555514e694e6850000086fdd1a065756398d4c00[@0.9s]
{172}aaaaaaaa29cd29cd0a00003cfff053ef58ca8fbec10[@1.3s]
{172}aaaaaaaa29cd29cd0a00002980db3426f0acbca6a40[@1.7s]
{172}aaaaaaaa29cd29cd0a000017a72c0d8de6272e24f50[@2.1s]
[g002_433.92M_250k.cu8]
{171}aaaaaaaa29cd29cd0a00001642448bdeb594f5d3840[@0.2s]
{172}aaaaaaaa29cd29cd0a000027c5a21efb8c8dffd6030[@0.7s]
{172}aaaaaaaa29cd29cd0a000028b0a2c2f2b0b5ffd4e20[@1.1s]
{173}d555555514e694e685000014bb5177720034fffd3700[@1.5s]
{172}aaaaaaaa29cd29cd0a00002aa8319d34afe0fff9770[@2.0s]
{172}aaaaaaaa29cd29cd0a00002b9c3121682b22ff5ed60[@2.4s]
[g003_433.92M_250k.cu8]
{173}d555555514e694e685000004d2912e471e4f06d5b580[@0.1s]
{172}aaaaaaaa29cd29cd0a000019cd4c503c06ac2d50790[@0.6s]
{173}d555555514e694e685000016a735a2083b0e8092c880[@0.9s]
{173}d555555514e694e68500000fa79028066d46b989ad00[@1.3s]
{172}aaaaaaaa29cd29cd0a0000132e2c45f7fbc67cf6ed0[@1.7s]
{173}d555555514e694e6850000045991670e3b3486a46000[@2.1s]
[g004_433.92M_250k.cu8]
{171}aaaaaaaa29cd29cd0a0000164bf72bb8b38d1b4da20[@0.1s]
{172}aaaaaaaa29cd29cd0a00001ed9db1e6f2b9d2b990c0[@0.6s]
{172}aaaaaaaa29cd29cd0a000032e3b65c8e8cac2c9c010[@0.9s]
{173}d555555514e694e68500000bd0c92230cfc6bd321900[@1.3s]
{172}aaaaaaaa29cd29cd0a00001bb44d45c027227a67b90[@1.7s]
{172}aaaaaaaa29cd29cd0a00000f692c7d5b27470b072b0[@2.1s]
[g005_433.92M_250k.cu8]
{173}d555555514e694e685000007144de9e05f6ac759c500[@0.1s]
{173}d555555514e694e685000013e8b5e9b693ea965c8b80[@0.4s]
{173}d555555514e694e685000007144de9e05f6ac759c500[@0.8s]
[g006_433.92M_250k.cu8]
{173}d555555514e694e68500001114d729b1cfd58637f280[@0.2s]
{173}d555555514e694e68500001bc1e5a86061d4391a2900[@0.6s]
{173}d555555514e694e68500000612cdc936e3f56db0ca00[@1.1s]
[g007_433.92M_250k.cu8]
{172}aaaaaaaa29cd29cd0a0000237d6b95bd399d8e32aa0[@0.2s]
{173}d555555514e694e68500000fae57611a44ce47357280[@0.6s]
{173}d555555514e694e6850000131b11284713bb06192000[@1.1s]
[g008_433.92M_250k.cu8]
{173}d555555514e694e6850000199ce5c38e0034066f8900[@0.1s]
{173}d555555514e694e68500000ceb510869df7acd4a6900[@0.6s]
{173}d555555514e694e685000017830f3eaf9cb28601d700[@1.1s]
[g009_433.92M_250k.cu8]
{172}aaaaaaaa29cd29cd0a00001c78b60d6dc1df5065650[@0.2s]
{173}d555555514e694e68500001aee7286b096efce562880[@0.6s]
{173}d555555514e694e685000000bc2664b69cd4638d9780[@1.1s]
[g010_433.92M_250k.cu8]
{172}aaaaaaaa29cd29cd0a00001c80f050dc2d9d93ceb50[@0.2s]
{173}d555555514e694e68500000de5db49476d0e7e503c80[@0.7s]
{172}aaaaaaaa29cd29cd0a000015947cc2e3b921fc5e460[@1.1s]
[g011_433.92M_250k.cu8]
{172}aaaaaaaa29cd29cd0a000029842787d3b9d593a1640[@0.1s]
{173}d555555514e694e6850000057d98c97bbcfaeaf0e280[@0.4s]
{173}d555555514e694e6850000131793f75eeb4e49c58a80[@0.8s]
[g012_433.92M_250k.cu8]
{172}aaaaaaaa29cd29cd0a00002d5ce57dc00614931e860[@0.2s]
{172}aaaaaaaa29cd29cd0a00001eebcbceef2b9c8588650[@0.6s]
{172}aaaaaaaa29cd29cd0a00001eebcbceef2b9c8588650[@1.1s]
[g013_433.92M_250k.cu8]
{173}d555555514e694e6850000059891220821d3d20cd380[@0.2s]
{173}d555555514e694e68500000872f82246f8323dd2b700[@0.7s]
{172}aaaaaaaa29cd29cd0a00003786ba5ce3b0ec7ce9840[@1.1s]
[g014_433.92M_250k.cu8]
{172}aaaaaaaa29cd29cd0a00002234e5c4f2f8d600dc680[@0.2s]
{173}d555555514e694e68500000c1cd1222f988ebdbafe80[@0.6s]
{172}aaaaaaaa29cd29cd0a00001eedf3c4d3aee000fc590[@1.1s]
{171}aaaaaaaa29cd29cd0a000007dad785a6895350aad80[@1.5s]
{172}aaaaaaaa29cd29cd0a000016c3a22126f8ee7b214d0[@2.0s]
{172}aaaaaaaa29cd29cd0a00000c30f03df7317aa4a98a0[@2.4s]
[g015_433.92M_250k.cu8]
{172}aaaaaaaa29cd29cd0a00001c79f3ee7235f67927dc0[@0.0s]
{172}aaaaaaaa29cd29cd0a00001f5be5bc8d102979f2710[@0.5s]
{172}aaaaaaaa29cd29cd0a0000237ca3d35b3c4879e8380[@0.9s]
{173}d555555514e694e685000013ecd8a98861f77f063400[@1.3s]
{173}d555555514e694e685000006ff67ae31e5d67a95d980[@1.7s]
{172}aaaaaaaa29cd29cd0a0000125acb506dc31bf5fd3b0[@2.1s]
[g016_433.92M_250k.cu8]
{171}aaaaaaaa29cd29cd0a000014139e88de743793d38e0[@0.1s]
{172}aaaaaaaa29cd29cd0a00001163cbc4d3ae66a8dd5b0[@0.5s]
{173}d555555514e694e685000013f0b75e2fa2703de8ff00[@1.0s]
{173}d555555514e694e685000007c0e5caf7da9154708900[@1.3s]
{172}aaaaaaaa29cd29cd0a0000183d2ec0e303ebf7e8200[@1.7s]
{172}aaaaaaaa29cd29cd0a00001f63a345d3cdeea476f60[@2.1s]
[g017_433.92M_250k.cu8]
{172}aaaaaaaa29cd29cd0a000024ba6e3de40596a2ecce0[@0.2s]
{173}d555555514e694e68500001466bfb6fbd3e35154d780[@0.6s]
{172}aaaaaaaa29cd29cd0a00003c1292ef3ce44805e1f50[@1.1s]
{172}aaaaaaaa29cd29cd0a000003f2b6ee1c3547f931720[@1.5s]
{173}d555555514e694e68500000b6479de791e0ad3766280[@2.0s]
{172}aaaaaaaa29cd29cd0a000019e2f3c40c911da6014b0[@2.4s]
[g018_433.92M_250k.cu8]
{172}aaaaaaaa29cd29cd0a00001aeea3445fb7a8c840590[@0.1s]
{172}aaaaaaaa29cd29cd0a000032042c0de4461ca3f8a80[@0.4s]
{172}aaaaaaaa29cd29cd0a00001bd5a3ef3135d5c884980[@0.8s]
[g019_433.92M_250k.cu8]
{172}aaaaaaaa29cd29cd0a000020476e928dfa9cc86acc0[@0.0s]
{171}aaaaaaaa29cd29cd0a00001685447a680a34a942f40[@0.4s]
{172}aaaaaaaa29cd29cd0a0000223d7f443ce076c842100[@0.8s]
[g020_433.92M_250k.cu8]
{173}d555555514e694e68500000937f2f7b0c1b2aa2fd700[@0.2s]
{173}d555555514e694e685000013257da293785a642be380[@0.7s]
{173}d555555514e694e68500000689975e06237aaa075d80[@1.1s]
[g021_433.92M_250k.cu8]
{173}d555555514e694e68500001563963efbc1f547337680[@0.2s]
{173}d555555514e694e685000007c272e018b08a21861d00[@0.6s]
{172}aaaaaaaa29cd29cd0a000014d31a21dc438c54dd600[@1.1s]
[g022_433.92M_250k.cu8]
{171}aaaaaaaa29cd29cd0a00005e309a891c6bebf853bc0[@0.1s]
{171}aaaaaaaa29cd29cd0a0000187747784d6a8e168b040[@0.6s]
{172}aaaaaaaa29cd29cd0a000027e89b6de4aeb456ccb90[@1.1s]
[g023_433.92M_250k.cu8]
{173}d555555514e694e6850000046b72beb698945a91de00[@0.2s]
{173}d555555514e694e68500000c261169d7f76f85ff2300[@0.6s]
{172}aaaaaaaa29cd29cd0a000035f4a25326929cfc9b940[@1.1s]
[g024_433.92M_250k.cu8]
{173}d555555514e694e68500001285a643fdb06ac4403900[@0.3s]
{171}aaaaaaaa29cd29cd0a0000497698a7dfdd5111379e0[@0.7s]
{173}d555555514e694e685000008b2b71a319690da98aa80[@1.1s]
[g025_433.92M_250k.cu8]
{173}d555555514e694e68500001c613586af988e22d13c00[@0.3s]
{171}aaaaaaaa29cd29cd0a000033d7f6695ebfdb6be3b80[@0.6s]
{173}d555555514e694e68500000cf5fd9a57aff6daf8ee00[@1.1s]
[g026_433.92M_250k.cu8]
{172}aaaaaaaa29cd29cd0a0000184d4dce8d0ef3089f610[@0.1s]
{173}d555555514e694e68500001c640f77933f2214def780[@0.5s]
{172}aaaaaaaa29cd29cd0a0000184d4dce8d0ef3089f610[@0.9s]
{172}aaaaaaaa29cd29cd0a000015a59258acb5740834d70[@1.3s]
{172}aaaaaaaa29cd29cd0a00003094b634efc1936e4cc40[@1.7s]
{173}d555555514e694e6850000050cd722c752f5ebdf9800[@2.1s]
[g027_433.92M_250k.cu8]
{172}aaaaaaaa29cd29cd0a0000264e7c0dd3bc637f56af0[@0.1s]
{172}aaaaaaaa29cd29cd0a000016d820d3ef9d2992c2990[@0.5s]
{173}d555555514e694e685000013f93e226e574d3fdbdb00[@0.9s]
{172}aaaaaaaa29cd29cd0a000008d8ae5cefadb29e95150[@1.2s]
{172}aaaaaaaa29cd29cd0a00002122315c31e6b21046450[@1.7s]
{171}aaaaaaaa29cd29cd0a00003ee862fade5ba62156a40[@2.1s]
[g028_433.92M_250k.cu8]
{172}aaaaaaaa29cd29cd0a00002e5bcf0d0ca51a77d1920[@0.1s]
{173}d555555514e694e6850000102dd728065ac9c573a780[@0.5s]
{172}aaaaaaaa29cd29cd0a0000100a925ce4dea69688930[@0.9s]
{172}aaaaaaaa29cd29cd0a00000e51927dfbb6299690350[@1.3s]
{171}aaaaaaaa29cd29cd0a00001ca324fbf76c532d206a0[@1.8s]
{172}aaaaaaaa29cd29cd0a0000205bae500cb5938ae74f0[@2.1s]
[g029_433.92M_250k.cu8]
{172}aaaaaaaa29cd29cd0a000028e1b650efd68a92fb060[@0.1s]
{173}d555555514e694e68500000e4b574931eb4d6f9c5f00[@0.5s]
{173}d555555514e694e6850000184c8f673196a288502000[@0.9s]
{172}aaaaaaaa29cd29cd0a00003210cb5372aeb210cce90[@1.3s]
{172}aaaaaaaa29cd29cd0a000016dca27dbda6639e50e80[@1.7s]
{172}aaaaaaaa29cd29cd0a000017cea234efb99a9eb1ed0[@2.1s]
[g030_433.92M_250k.cu8]
{172}aaaaaaaa29cd29cd0a00002ae1cf45638fb2d7803a0[@0.1s]
{172}aaaaaaaa29cd29cd0a00001e0e7c7df28f1a9607350[@0.5s]
{172}aaaaaaaa29cd29cd0a00003361a295e341778af5a50[@0.9s]
{172}aaaaaaaa29cd29cd0a000017d631eeac0e29fe18bf0[@1.3s]
{172}aaaaaaaa29cd29cd0a00003c2ee56d0c359b772fc90[@1.7s]
{172}aaaaaaaa29cd29cd0a0000127fdbd0347e665b16a40[@2.1s]
[g031_433.92M_250k.cu8]
{173}d555555514e694e685000019ab93e8391d0deb3e3d80[@0.2s]
{172}aaaaaaaa29cd29cd0a000027f4cf34613a759560bb0[@0.6s]
{171}aaaaaaaa29cd29cd0a000058ed9724b667bdac77120[@1.1s]
[g032_433.92M_250k.cu8]
{173}d555555514e694e6850000013126607dd6b343d2cd80[@0.3s]
{173}d555555514e694e68500000df3be6046eb3329020f00[@0.6s]
{173}d555555514e694e685000010965b5e34532231a48b00[@1.1s]
{172}aaaaaaaa29cd29cd0a000036e7e5448d76c3df04280[@1.5s]
{173}d555555514e694e6850000163f512c792c4dcf436600[@1.9s]
{172}aaaaaaaa29cd29cd0a000007eb4d9de3e629fed1440[@2.4s]
[g033_433.92M_250k.cu8]
{173}d555555514e694e685000013fc659ef1ef572db94080[@0.1s]
{172}aaaaaaaa29cd29cd0a0000100831bc633545f605750[@0.5s]
{172}aaaaaaaa29cd29cd0a000038cfa35cfba5a69633560[@0.9s]
{172}aaaaaaaa29cd29cd0a000004bf4d44f2351f7f7b4a0[@1.3s]
{172}aaaaaaaa29cd29cd0a00001d5eb6443c8f1f4a9d2b0[@1.7s]
{173}d555555514e694e68500001a7c72ac7181d4cb4e2880[@2.1s]
[g034_433.92M_250k.cu8]
{173}d555555514e694e68500001641170f602bd4b1862800[@0.0s]
{172}aaaaaaaa29cd29cd0a00002700a2ce7229e852dbc30[@0.4s]
{172}aaaaaaaa29cd29cd0a000022571e44682d249524e10[@0.9s]
{172}aaaaaaaa29cd29cd0a00000a28a271638ab2c9146c0[@1.3s]
{173}d555555514e694e685000011d18f38863cd94ab35b80[@1.7s]
{172}aaaaaaaa29cd29cd0a00001f82cf50c02bae954eca0[@2.1s]
[g035_433.92M_250k.cu8]
{172}aaaaaaaa29cd29cd0a00001d611eefdc46dd7dd2140[@0.2s]
{173}d555555514e694e6850000163ef2a87da0bbc599fc00[@0.6s]
{173}d555555514e694e685000005abd706b1dc0d045ca900[@1.1s]
{172}aaaaaaaa29cd29cd0a00000d206beee3b726cd16190[@1.5s]
{172}aaaaaaaa29cd29cd0a00001c9b1e44d380a97dfc840[@2.0s]
{172}aaaaaaaa29cd29cd0a00000f9b7c21d3cbaecd382a0[@2.4s]
[g036_433.92M_250k.cu8]
{172}aaaaaaaa29cd29cd0a00001be21e1ee32fa6d501000[@0.1s]
{173}d555555514e694e68500000f03d12836ad0fe3a77a00[@0.6s]
{173}d555555514e694e6850000172c0d1ed7bdf5fe2ab200[@1.0s]
{172}aaaaaaaa29cd29cd0a00000d1c7c3d72d8eb109b720[@1.5s]
{172}aaaaaaaa29cd29cd0a00001d5dcb348daf9bc79d710[@2.0s]
{173}d555555514e694e68500000fbcd1621e2c8b63ffaa80[@2.4s]
[g037_433.92M_250k.cu8]
{172}aaaaaaaa29cd29cd0a000033626e5810378a7d00a30[@0.0s]
{173}d555555514e694e68500000d01e5ac5665c504696f00[@0.4s]
{173}d555555514e694e68500000f0793ceee539366984780[@0.9s]
{173}d555555514e694e685000016c00d77fd9bb33e96bc80[@1.3s]
{173}d555555514e694e6850000173058e760636ebebf3f80[@1.8s]
{172}aaaaaaaa29cd29cd0a00001360f050c041a6017e8e0[@2.1s]
[g038_433.92M_250k.cu8]
{171}aaaaaaaa29cd29cd0a000018916ddcc7b0cd096d1c0[@0.2s]
{172}aaaaaaaa29cd29cd0a00001e052e5c8d59eb10549f0[@0.6s]
{172}aaaaaaaa29cd29cd0a00002e566e5063279bc77ca30[@1.1s]
{173}d555555514e694e685000011cc798693002208159780[@1.5s]
{173}d555555514e694e68500001328d1ce8861eeeab36b00[@1.9s]
{173}d555555514e694e68500001b705d6777cf8942ab6200[@2.4s]
[g039_433.92M_250k.cu8]
{173}d555555514e694e685000004ea912c3797cd7c697200[@0.0s]
{172}aaaaaaaa29cd29cd0a00002e5e7f9dfbb812cd71e90[@0.4s]
{173}d555555514e694e685000007cee7a2f1e1e1d284e680[@0.9s]
{172}aaaaaaaa29cd29cd0a000027fd1a10318026085f080[@1.3s]
{173}d555555514e694e68500000691784ede828952f11080[@1.7s]
{172}aaaaaaaa29cd29cd0a00001e0df3c4d3b0dd011dc40[@2.1s]
[g040_433.92M_250k.cu8]
{173}d555555514e694e6850000156e3762719c948495b880[@0.3s]
{173}d555555514e694e685000002e4916277ac895880ca00[@0.6s]
{173}d555555514e694e685000015e8372830840c04801e00[@1.0s]
{172}aaaaaaaa29cd29cd0a0000309c22d05b2b16108a080[@1.5s]
{173}d555555514e694e685000008bd8f2c46acd300797580[@1.9s]
{172}aaaaaaaa29cd29cd0a000017d1274534341fad69080[@2.4s]
[g041_433.92M_250k.cu8]
{173}d555555514e694e6850000126cd8f71372123e47af80[@0.0s]
{172}aaaaaaaa29cd29cd0a000027016ebc5f46dd7cb1c40[@0.5s]
{173}d555555514e694e68500000eb3f2cef1b08d52ca6400[@0.9s]
{173}d555555514e694e68500001798dd29fd9e4d80877a00[@1.4s]
{173}d555555514e694e68500000b739729ada1cdfc50df00[@1.7s]
{171}aaaaaaaa29cd29cd0a000078629985f667159be3fc0[@2.1s]
[g042_433.92M_250k.cu8]
{173}d555555514e694e68500001476bfb6fbcfe1d6cb7680[@0.1s]
{173}d555555514e694e685000000d11128563c530249b100[@0.5s]
{172}aaaaaaaa29cd29cd0a000004c9f05cd359b29829f90[@0.9s]
{173}d555555514e694e68500000df6f2e17bf40c58bdcf00[@1.3s]
{173}d555555514e694e6850000080951490e2cf4697f1480[@1.7s]
{172}aaaaaaaa29cd29cd0a000008e8cf58f2b0ae9832250[@2.1s]
[g043_433.92M_250k.cu8]
{172}aaaaaaaa29cd29cd0a000015bef3216308b2ca10bf0[@0.1s]
{172}aaaaaaaa29cd29cd0a0000270a2287e3f012f8896d0[@0.6s]
{173}d555555514e694e68500000eb80d6277a0f9d4da6b80[@1.0s]
{173}d555555514e694e685000013851143f1f8097c44b680[@1.4s]
{172}aaaaaaaa29cd29cd0a00000e612787f7b7129078380[@1.7s]
{172}aaaaaaaa29cd29cd0a0000336d2c4434f0a6a5cf070[@2.1s]
[g044_433.92M_250k.cu8]
{173}d555555514e694e68500001033b74946f94d696e1980[@0.0s]
{172}aaaaaaaa29cd29cd0a000016eca387c0d866988e430[@0.4s]
{173}d555555514e694e68500000df88d1a082d4d4c060380[@0.9s]
{172}aaaaaaaa29cd29cd0a00002d87ae5c8e00930046060[@1.4s]
{173}d555555514e694e6850000126f11287917c558a7fc80[@1.8s]
{173}d555555514e694e68500001d66a686b0d7f456da2700[@2.1s]
[g045_433.92M_250k.cu8]
{172}aaaaaaaa29cd29cd0a0000136fe53dd32f9a56889e0[@0.2s]
{172}aaaaaaaa29cd29cd0a00002536ba215bc393ca014e0[@0.7s]
{172}aaaaaaaa29cd29cd0a00001bf9b1ee5fa729fc81fc0[@1.1s]
{172}aaaaaaaa29cd29cd0a00002c902c50e3fa18a9e37e0[@1.6s]
{173}d555555514e694e68500000a7ed1e23684227e43fe00[@1.9s]
{173}d555555514e694e685000013357da29378596530e580[@2.4s]
[g046_433.92M_250k.cu8]
{172}aaaaaaaa29cd29cd0a0000252cfb10f23e4498a1a60[@0.2s]
{173}d555555514e694e68500001573963efbbdf44c227c80[@0.6s]
{172}aaaaaaaa29cd29cd0a00001186e544722fc74d00560[@1.0s]
{173}d555555514e694e68500000eb53fa9b1e3c9821a2800[@1.4s]
{172}aaaaaaaa29cd29cd0a00001285a3341cbe744d4ce10[@1.8s]
{173}d555555514e694e6850000138257649a4fbbcc27fa00[@2.1s]
Raw codes (adjusted for prefix)

[g001_433.92M_250k.cu8]
aaaaaaaa29cd29cd0a00001250fbc4f7ad9d7395b70[@0.1s]
aaaaaaaa29cd29cd0a0000311eaeefd3a6698391360[@0.6s]
aaaaaaaa29cd29cd0a000010dfba340caeac731a980[@0.9s]
aaaaaaaa29cd29cd0a00003cfff053ef58ca8fbec10[@1.3s]
aaaaaaaa29cd29cd0a00002980db3426f0acbca6a40[@1.7s]
aaaaaaaa29cd29cd0a000017a72c0d8de6272e24f50[@2.1s]
[g002_433.92M_250k.cu8]
aaaaaaaa29cd29cd0a00001642448bdeb594f5d3840[@0.2s]
aaaaaaaa29cd29cd0a000027c5a21efb8c8dffd6030[@0.7s]
aaaaaaaa29cd29cd0a000028b0a2c2f2b0b5ffd4e20[@1.1s]
aaaaaaaa29cd29cd0a00002976a2eee40069fffa6e0[@1.5s]
aaaaaaaa29cd29cd0a00002aa8319d34afe0fff9770[@2.0s]
aaaaaaaa29cd29cd0a00002b9c3121682b22ff5ed60[@2.4s]
[g003_433.92M_250k.cu8]
aaaaaaaa29cd29cd0a000009a5225c8e3c9e0dab6b0[@0.1s]
aaaaaaaa29cd29cd0a000019cd4c503c06ac2d50790[@0.6s]
aaaaaaaa29cd29cd0a00002d4e6b4410761d0125910[@0.9s]
aaaaaaaa29cd29cd0a00001f4f20500cda8d73135a0[@1.3s]
aaaaaaaa29cd29cd0a0000132e2c45f7fbc67cf6ed0[@1.7s]
aaaaaaaa29cd29cd0a000008b322ce1c76690d48c00[@2.1s]
[g004_433.92M_250k.cu8]
aaaaaaaa29cd29cd0a0000164bf72bb8b38d1b4da20[@0.1s]
aaaaaaaa29cd29cd0a00001ed9db1e6f2b9d2b990c0[@0.6s]
aaaaaaaa29cd29cd0a000032e3b65c8e8cac2c9c010[@0.9s]
aaaaaaaa29cd29cd0a000017a19244619f8d7a64320[@1.3s]
aaaaaaaa29cd29cd0a00001bb44d45c027227a67b90[@1.7s]
aaaaaaaa29cd29cd0a00000f692c7d5b27470b072b0[@2.1s]
[g005_433.92M_250k.cu8]
aaaaaaaa29cd29cd0a00000e289bd3c0bed58eb38a0[@0.1s]
aaaaaaaa29cd29cd0a000027d16bd36d27d52cb9170[@0.4s]
aaaaaaaa29cd29cd0a00000e289bd3c0bed58eb38a0[@0.8s]
[g006_433.92M_250k.cu8]
aaaaaaaa29cd29cd0a00002229ae53639fab0c6fe50[@0.2s]
aaaaaaaa29cd29cd0a00003783cb50c0c3a87234520[@0.6s]
aaaaaaaa29cd29cd0a00000c259b926dc7eadb61940[@1.1s]
[g007_433.92M_250k.cu8]
aaaaaaaa29cd29cd0a0000237d6b95bd399d8e32aa0[@0.2s]
aaaaaaaa29cd29cd0a00001f5caec234899c8e6ae50[@0.6s]
aaaaaaaa29cd29cd0a0000263622508e27760c32400[@1.1s]
[g008_433.92M_250k.cu8]
aaaaaaaa29cd29cd0a00003339cb871c00680cdf120[@0.1s]
aaaaaaaa29cd29cd0a000019d6a210d3bef59a94d20[@0.6s]
aaaaaaaa29cd29cd0a00002f061e7d5f39650c03ae0[@1.1s]
[g009_433.92M_250k.cu8]
aaaaaaaa29cd29cd0a00001c78b60d6dc1df5065650[@0.2s]
aaaaaaaa29cd29cd0a000035dce50d612ddf9cac510[@0.6s]
aaaaaaaa29cd29cd0a000001784cc96d39a8c71b2f0[@1.1s]
[g010_433.92M_250k.cu8]
aaaaaaaa29cd29cd0a00001c80f050dc2d9d93ceb50[@0.2s]
aaaaaaaa29cd29cd0a00001bcbb6928eda1cfca0790[@0.7s]
aaaaaaaa29cd29cd0a000015947cc2e3b921fc5e460[@1.1s]
[g011_433.92M_250k.cu8]
aaaaaaaa29cd29cd0a000029842787d3b9d593a1640[@0.1s]
aaaaaaaa29cd29cd0a00000afb3192f779f5d5e1c50[@0.4s]
aaaaaaaa29cd29cd0a0000262f27eebdd69c938b150[@0.8s]
[g012_433.92M_250k.cu8]
aaaaaaaa29cd29cd0a00002d5ce57dc00614931e860[@0.2s]
aaaaaaaa29cd29cd0a00001eebcbceef2b9c8588650[@0.6s]
aaaaaaaa29cd29cd0a00001eebcbceef2b9c8588650[@1.1s]
[g013_433.92M_250k.cu8]
aaaaaaaa29cd29cd0a00000b3122441043a7a419a70[@0.2s]
aaaaaaaa29cd29cd0a000010e5f0448df0647ba56e0[@0.7s]
aaaaaaaa29cd29cd0a00003786ba5ce3b0ec7ce9840[@1.1s]
[g014_433.92M_250k.cu8]
aaaaaaaa29cd29cd0a00002234e5c4f2f8d600dc680[@0.2s]
aaaaaaaa29cd29cd0a00001839a2445f311d7b75fd0[@0.6s]
aaaaaaaa29cd29cd0a00001eedf3c4d3aee000fc590[@1.1s]
aaaaaaaa29cd29cd0a000007dad785a6895350aad80[@1.5s]
aaaaaaaa29cd29cd0a000016c3a22126f8ee7b214d0[@2.0s]
aaaaaaaa29cd29cd0a00000c30f03df7317aa4a98a0[@2.4s]
[g015_433.92M_250k.cu8]
aaaaaaaa29cd29cd0a00001c79f3ee7235f67927dc0[@0.0s]
aaaaaaaa29cd29cd0a00001f5be5bc8d102979f2710[@0.5s]
aaaaaaaa29cd29cd0a0000237ca3d35b3c4879e8380[@0.9s]
aaaaaaaa29cd29cd0a000027d9b15310c3eefe0c680[@1.3s]
aaaaaaaa29cd29cd0a00000dfecf5c63cbacf52bb30[@1.7s]
aaaaaaaa29cd29cd0a0000125acb506dc31bf5fd3b0[@2.1s]
[g016_433.92M_250k.cu8]
aaaaaaaa29cd29cd0a000014139e88de743793d38e0[@0.1s]
aaaaaaaa29cd29cd0a00001163cbc4d3ae66a8dd5b0[@0.5s]
aaaaaaaa29cd29cd0a000027e16ebc5f44e07bd1fe0[@1.0s]
aaaaaaaa29cd29cd0a00000f81cb95efb522a8e1120[@1.3s]
aaaaaaaa29cd29cd0a0000183d2ec0e303ebf7e8200[@1.7s]
aaaaaaaa29cd29cd0a00001f63a345d3cdeea476f60[@2.1s]
[g017_433.92M_250k.cu8]
aaaaaaaa29cd29cd0a000024ba6e3de40596a2ecce0[@0.2s]
aaaaaaaa29cd29cd0a000028cd7f6df7a7c6a2a9af0[@0.6s]
aaaaaaaa29cd29cd0a00003c1292ef3ce44805e1f50[@1.1s]
aaaaaaaa29cd29cd0a000003f2b6ee1c3547f931720[@1.5s]
aaaaaaaa29cd29cd0a000016c8f3bcf23c15a6ecc50[@2.0s]
aaaaaaaa29cd29cd0a000019e2f3c40c911da6014b0[@2.4s]
[g018_433.92M_250k.cu8]
aaaaaaaa29cd29cd0a00001aeea3445fb7a8c840590[@0.1s]
aaaaaaaa29cd29cd0a000032042c0de4461ca3f8a80[@0.4s]
aaaaaaaa29cd29cd0a00001bd5a3ef3135d5c884980[@0.8s]
[g019_433.92M_250k.cu8]
aaaaaaaa29cd29cd0a000020476e928dfa9cc86acc0[@0.0s]
aaaaaaaa29cd29cd0a00001685447a680a34a942f40[@0.4s]
aaaaaaaa29cd29cd0a0000223d7f443ce076c842100[@0.8s]
[g020_433.92M_250k.cu8]
aaaaaaaa29cd29cd0a0000126fe5ef618365545fae0[@0.2s]
aaaaaaaa29cd29cd0a0000264afb4526f0b4c857c70[@0.7s]
aaaaaaaa29cd29cd0a00000d132ebc0c46f5540ebb0[@1.1s]
[g021_433.92M_250k.cu8]
aaaaaaaa29cd29cd0a00002ac72c7df783ea8e66ed0[@0.2s]
aaaaaaaa29cd29cd0a00000f84e5c0316114430c3a0[@0.6s]
aaaaaaaa29cd29cd0a000014d31a21dc438c54dd600[@1.1s]
[g022_433.92M_250k.cu8]
aaaaaaaa29cd29cd0a00005e309a891c6bebf853bc0[@0.1s]
aaaaaaaa29cd29cd0a0000187747784d6a8e168b040[@0.6s]
aaaaaaaa29cd29cd0a000027e89b6de4aeb456ccb90[@1.1s]
[g023_433.92M_250k.cu8]
aaaaaaaa29cd29cd0a000008d6e57d6d3128b523bc0[@0.2s]
aaaaaaaa29cd29cd0a0000184c22d3afeedf0bfe460[@0.6s]
aaaaaaaa29cd29cd0a000035f4a25326929cfc9b940[@1.1s]
[g024_433.92M_250k.cu8]
aaaaaaaa29cd29cd0a0000250b4c87fb60d58880720[@0.3s]
aaaaaaaa29cd29cd0a0000497698a7dfdd5111379e0[@0.7s]
aaaaaaaa29cd29cd0a000011656e34632d21b531550[@1.1s]
[g025_433.92M_250k.cu8]
aaaaaaaa29cd29cd0a000038c26b0d5f311c45a2780[@0.3s]
aaaaaaaa29cd29cd0a000033d7f6695ebfdb6be3b80[@0.6s]
aaaaaaaa29cd29cd0a000019ebfb34af5fedb5f1dc0[@1.1s]
[g026_433.92M_250k.cu8]
aaaaaaaa29cd29cd0a0000184d4dce8d0ef3089f610[@0.1s]
aaaaaaaa29cd29cd0a000038c81eef267e4429bdef0[@0.5s]
aaaaaaaa29cd29cd0a0000184d4dce8d0ef3089f610[@0.9s]
aaaaaaaa29cd29cd0a000015a59258acb5740834d70[@1.3s]
aaaaaaaa29cd29cd0a00003094b634efc1936e4cc40[@1.7s]
aaaaaaaa29cd29cd0a00000a19ae458ea5ebd7bf300[@2.1s]
[g027_433.92M_250k.cu8]
aaaaaaaa29cd29cd0a0000264e7c0dd3bc637f56af0[@0.1s]
aaaaaaaa29cd29cd0a000016d820d3ef9d2992c2990[@0.5s]
aaaaaaaa29cd29cd0a000027f27c44dcae9a7fb7b60[@0.9s]
aaaaaaaa29cd29cd0a000008d8ae5cefadb29e95150[@1.2s]
aaaaaaaa29cd29cd0a00002122315c31e6b21046450[@1.7s]
aaaaaaaa29cd29cd0a00003ee862fade5ba62156a40[@2.1s]
[g028_433.92M_250k.cu8]
aaaaaaaa29cd29cd0a00002e5bcf0d0ca51a77d1920[@0.1s]
aaaaaaaa29cd29cd0a0000205bae500cb5938ae74f0[@0.5s]
aaaaaaaa29cd29cd0a0000100a925ce4dea69688930[@0.9s]
aaaaaaaa29cd29cd0a00000e51927dfbb6299690350[@1.3s]
aaaaaaaa29cd29cd0a00001ca324fbf76c532d206a0[@1.8s]
aaaaaaaa29cd29cd0a0000205bae500cb5938ae74f0[@2.1s]
[g029_433.92M_250k.cu8]
aaaaaaaa29cd29cd0a000028e1b650efd68a92fb060[@0.1s]
aaaaaaaa29cd29cd0a00001c96ae9263d69adf38be0[@0.5s]
aaaaaaaa29cd29cd0a000030991ece632d4510a0400[@0.9s]
aaaaaaaa29cd29cd0a00003210cb5372aeb210cce90[@1.3s]
aaaaaaaa29cd29cd0a000016dca27dbda6639e50e80[@1.7s]
aaaaaaaa29cd29cd0a000017cea234efb99a9eb1ed0[@2.1s]
[g030_433.92M_250k.cu8]
aaaaaaaa29cd29cd0a00002ae1cf45638fb2d7803a0[@0.1s]
aaaaaaaa29cd29cd0a00001e0e7c7df28f1a9607350[@0.5s]
aaaaaaaa29cd29cd0a00003361a295e341778af5a50[@0.9s]
aaaaaaaa29cd29cd0a000017d631eeac0e29fe18bf0[@1.3s]
aaaaaaaa29cd29cd0a00003c2ee56d0c359b772fc90[@1.7s]
aaaaaaaa29cd29cd0a0000127fdbd0347e665b16a40[@2.1s]
[g031_433.92M_250k.cu8]
aaaaaaaa29cd29cd0a0000335727d0723a1bd67c7b0[@0.2s]
aaaaaaaa29cd29cd0a000027f4cf34613a759560bb0[@0.6s]
aaaaaaaa29cd29cd0a000058ed9724b667bdac77120[@1.1s]
[g032_433.92M_250k.cu8]
aaaaaaaa29cd29cd0a000002624cc0fbad6687a59b0[@0.3s]
aaaaaaaa29cd29cd0a00001be77cc08dd66652041e0[@0.6s]
aaaaaaaa29cd29cd0a0000212cb6bc68a6446349160[@1.1s]
aaaaaaaa29cd29cd0a000036e7e5448d76c3df04280[@1.5s]
aaaaaaaa29cd29cd0a00002c7ea258f2589b9e86cc0[@1.9s]
aaaaaaaa29cd29cd0a000007eb4d9de3e629fed1440[@2.4s]
[g033_433.92M_250k.cu8]
aaaaaaaa29cd29cd0a000027f8cb3de3deae5b72810[@0.1s]
aaaaaaaa29cd29cd0a0000100831bc633545f605750[@0.5s]
aaaaaaaa29cd29cd0a000038cfa35cfba5a69633560[@0.9s]
aaaaaaaa29cd29cd0a000004bf4d44f2351f7f7b4a0[@1.3s]
aaaaaaaa29cd29cd0a00001d5eb6443c8f1f4a9d2b0[@1.7s]
aaaaaaaa29cd29cd0a000034f8e558e303a9969c510[@2.1s]
[g034_433.92M_250k.cu8]
aaaaaaaa29cd29cd0a00002c822e1ec057a9630c500[@0.0s]
aaaaaaaa29cd29cd0a00002700a2ce7229e852dbc30[@0.4s]
aaaaaaaa29cd29cd0a000022571e44682d249524e10[@0.9s]
aaaaaaaa29cd29cd0a00000a28a271638ab2c9146c0[@1.3s]
aaaaaaaa29cd29cd0a000023a31e710c79b29566b70[@1.7s]
aaaaaaaa29cd29cd0a00001f82cf50c02bae954eca0[@2.1s]
[g035_433.92M_250k.cu8]
aaaaaaaa29cd29cd0a00001d611eefdc46dd7dd2140[@0.2s]
aaaaaaaa29cd29cd0a00002c7de550fb41778b33f80[@0.6s]
aaaaaaaa29cd29cd0a00000b57ae0d63b81a08b9520[@1.1s]
aaaaaaaa29cd29cd0a00000d206beee3b726cd16190[@1.5s]
aaaaaaaa29cd29cd0a00001c9b1e44d380a97dfc840[@2.0s]
aaaaaaaa29cd29cd0a00000f9b7c21d3cbaecd382a0[@2.4s]
[g036_433.92M_250k.cu8]
aaaaaaaa29cd29cd0a00001be21e1ee32fa6d501000[@0.1s]
aaaaaaaa29cd29cd0a00001e07a2506d5a1fc74ef40[@0.6s]
aaaaaaaa29cd29cd0a00002e581a3daf7bebfc55640[@1.0s]
aaaaaaaa29cd29cd0a00000d1c7c3d72d8eb109b720[@1.5s]
aaaaaaaa29cd29cd0a00001d5dcb348daf9bc79d710[@2.0s]
aaaaaaaa29cd29cd0a00001f79a2c43c5916c7ff550[@2.4s]
[g037_433.92M_250k.cu8]
aaaaaaaa29cd29cd0a000033626e5810378a7d00a30[@0.0s]
aaaaaaaa29cd29cd0a00001a03cb58accb8a08d2de0[@0.4s]
aaaaaaaa29cd29cd0a00001e0f279ddca726cd308f0[@0.9s]
aaaaaaaa29cd29cd0a00002d801aeffb37667d2d790[@1.3s]
aaaaaaaa29cd29cd0a00002e60b1cec0c6dd7d7e7f0[@1.8s]
aaaaaaaa29cd29cd0a00001360f050c041a6017e8e0[@2.1s]
[g038_433.92M_250k.cu8]
aaaaaaaa29cd29cd0a000018916ddcc7b0cd096d1c0[@0.2s]
aaaaaaaa29cd29cd0a00001e052e5c8d59eb10549f0[@0.6s]
aaaaaaaa29cd29cd0a00002e566e5063279bc77ca30[@1.1s]
aaaaaaaa29cd29cd0a00002398f30d260044102b2f0[@1.5s]
aaaaaaaa29cd29cd0a00002651a39d10c3ddd566d60[@1.9s]
aaaaaaaa29cd29cd0a000036e0baceef9f128556c40[@2.4s]
[g039_433.92M_250k.cu8]
aaaaaaaa29cd29cd0a000009d522586f2f9af8d2e40[@0.0s]
aaaaaaaa29cd29cd0a00002e5e7f9dfbb812cd71e90[@0.4s]
aaaaaaaa29cd29cd0a00000f9dcf45e3c3c3a509cd0[@0.9s]
aaaaaaaa29cd29cd0a000027fd1a10318026085f080[@1.3s]
aaaaaaaa29cd29cd0a00000d22f09dbd0512a5e2210[@1.7s]
aaaaaaaa29cd29cd0a00001e0df3c4d3b0dd011dc40[@2.1s]
[g040_433.92M_250k.cu8]
aaaaaaaa29cd29cd0a00002adc6ec4e33929092b710[@0.3s]
aaaaaaaa29cd29cd0a000005c922c4ef5912b101940[@0.6s]
aaaaaaaa29cd29cd0a00002bd06e5061081809003c0[@1.0s]
aaaaaaaa29cd29cd0a0000309c22d05b2b16108a080[@1.5s]
aaaaaaaa29cd29cd0a0000117b1e588d59a600f2eb0[@1.9s]
aaaaaaaa29cd29cd0a000017d1274534341fad69080[@2.4s]
[g041_433.92M_250k.cu8]
aaaaaaaa29cd29cd0a000024d9b1ee26e4247c8f5f0[@0.0s]
aaaaaaaa29cd29cd0a000027016ebc5f46dd7cb1c40[@0.5s]
aaaaaaaa29cd29cd0a00001d67e59de3611aa594c80[@0.9s]
aaaaaaaa29cd29cd0a00002f31ba53fb3c9b010ef40[@1.4s]
aaaaaaaa29cd29cd0a000016e72e535b439bf8a1be0[@1.7s]
aaaaaaaa29cd29cd0a000078629985f667159be3fc0[@2.1s]
[g042_433.92M_250k.cu8]
aaaaaaaa29cd29cd0a000028ed7f6df79fc3ad96ed0[@0.1s]
aaaaaaaa29cd29cd0a000001a22250ac78a60493620[@0.5s]
aaaaaaaa29cd29cd0a000004c9f05cd359b29829f90[@0.9s]
aaaaaaaa29cd29cd0a00001bede5c2f7e818b17b9e0[@1.3s]
aaaaaaaa29cd29cd0a00001012a2921c59e8d2fe290[@1.7s]
aaaaaaaa29cd29cd0a000008e8cf58f2b0ae9832250[@2.1s]
[g043_433.92M_250k.cu8]
aaaaaaaa29cd29cd0a000015bef3216308b2ca10bf0[@0.1s]
aaaaaaaa29cd29cd0a0000270a2287e3f012f8896d0[@0.6s]
aaaaaaaa29cd29cd0a00001d701ac4ef41f3a9b4d70[@1.0s]
aaaaaaaa29cd29cd0a0000270a2287e3f012f8896d0[@1.4s]
aaaaaaaa29cd29cd0a00000e612787f7b7129078380[@1.7s]
aaaaaaaa29cd29cd0a0000336d2c4434f0a6a5cf070[@2.1s]
[g044_433.92M_250k.cu8]
aaaaaaaa29cd29cd0a000020676e928df29ad2dc330[@0.0s]
aaaaaaaa29cd29cd0a000016eca387c0d866988e430[@0.4s]
aaaaaaaa29cd29cd0a00001bf11a34105a9a980c070[@0.9s]
aaaaaaaa29cd29cd0a00002d87ae5c8e00930046060[@1.4s]
aaaaaaaa29cd29cd0a000024de2250f22f8ab14ff90[@1.8s]
aaaaaaaa29cd29cd0a00003acd4d0d61afe8adb44e0[@2.1s]
[g045_433.92M_250k.cu8]
aaaaaaaa29cd29cd0a0000136fe53dd32f9a56889e0[@0.2s]
aaaaaaaa29cd29cd0a00002536ba215bc393ca014e0[@0.7s]
aaaaaaaa29cd29cd0a00001bf9b1ee5fa729fc81fc0[@1.1s]
aaaaaaaa29cd29cd0a00002c902c50e3fa18a9e37e0[@1.6s]
aaaaaaaa29cd29cd0a000014fda3c46d0844fc87fc0[@1.9s]
aaaaaaaa29cd29cd0a0000266afb4526f0b2ca61cb0[@2.4s]
[g046_433.92M_250k.cu8]
aaaaaaaa29cd29cd0a0000252cfb10f23e4498a1a60[@0.2s]
aaaaaaaa29cd29cd0a00002ae72c7df77be89844f90[@0.6s]
aaaaaaaa29cd29cd0a00001186e544722fc74d00560[@1.0s]
aaaaaaaa29cd29cd0a00001d6a7f5363c7930434500[@1.4s]
aaaaaaaa29cd29cd0a00001285a3341cbe744d4ce10[@1.8s]
aaaaaaaa29cd29cd0a00002704aec9349f77984ff40[@2.1s]

zuckschwerdt avatar Feb 12 '24 14:02 zuckschwerdt

@zuckschwerdt : I found something interesting here

In their analysis, the code is encrypted but it can be replayed and it will work. I also notice that the payload part is always starting by niblle 0 , 1 , 2 or 3.

ProfBoc75 avatar Feb 12 '24 20:02 ProfBoc75

That is indeed a very nice find! I didn't spot the sync-word but it's obvious now, 29cd. In summary aaaa aaaa 29cd 29cd 0a00 00 … -- so we know the alignment is correct.

zuckschwerdt avatar Feb 12 '24 20:02 zuckschwerdt

The last 0 should be ignore.

Data layout : 8 byte + 2 byte CRC-16 , poly=0x8005, init=0x8e8b, for 94% from the 222 samples

reveng -w 16 -s 1250fbc4f7ad9d7395b7 311eaeefd3a669839136 10dfba340caeac731a98 3cfff053ef58ca8fbec1 2980db3426f0acbca6a4
width=16  poly=0x8005  init=0x8e8b  refin=false  refout=false  xorout=0x0000  check=0xdbab  residue=0x0000  name=(none)

reveng -w 16 -s 2aa8319d34afe0fff977 2b9c3121682b22ff5ed6 09a5225c8e3c9e0dab6b 19cd4c503c06ac2d5079 2d4e6b4410761d012591
width=16  poly=0x8005  init=0x8e8b  refin=false  refout=false  xorout=0x0000  check=0xdbab  residue=0x0000  name=(none)

or poly=0x8005, init=0x9d13, for the rest of 6% from the samples

reveng -w 16 -s 07dad785a6895350aad8 14139e88de743793d38e 1642448bdeb594f5d384 164bf72bb8b38d1b4da2 1685447a680a34a942f4 187747784d6a8e168b04 18916ddcc7b0cd096d1c 1ca324fbf76c532d206a 33d7f6695ebfdb6be3b8 3ee862fade5ba62156a4 497698a7dfdd5111379e 58ed9724b667bdac7712 5e309a891c6bebf853bc 78629985f667159be3fc
width=16  poly=0x8005  init=0x9d13  refin=false  refout=false  xorout=0x0000  check=0xb46e  residue=0x0000  name=(none)

2 CRC formulas, strange or false positive or ?

ProfBoc75 avatar Feb 12 '24 23:02 ProfBoc75

(...) the sensor seems capable and well designed, the idle messages, perhaps with battery info a great and not found in cheaper ones.

Indeed. If supported, I would actually look for OEM version of these as these sensors are legitimately good and do last for long on a battery.

The signals are clipping (too loud) but it looks like FSK with 100 µs PCM. This will get data: rtl_433 -Y minmax -R 0 -X 'n=name,m=FSK_PCM,s=100,l=100,r=4000'

Would you like me to re-record some with greater distance?

I found something interesting here

@ProfBoc75 the encryption would make sense, as they have the whole pairing song-and-dance. In addition, they advertise them as not being able to be spoofed (I know I know :D). I also have their motion sensor and quite a few door sensors, so maybe grabbing recordings from at least another door sensor would aid comparison?

Also, this slide is interesting from the thesis: image

Maybe @AxlLind himself could chime in with more details? :)

kiler129 avatar Feb 12 '24 23:02 kiler129

Re that picture: we know that sync-words are very commonly 16-bit and repeated once. Also we can sensibly expect a length byte. This is more likely:

Preamble Sync-Word Len Type? Payload (10 bytes)   Demod-Junk
aaaaaaaa 29cd 29cd 0a  0000  311eaeefd3a669839136 0

And even more likely with @ProfBoc75's finding of the checksum :

Preamble Sync-Word Len Payload (10 bytes)   Checksum Demod-Junk
aaaaaaaa 29cd 29cd 0a  0000311eaeefd3a66983 9136     0

And then using that assumption and computing the CRC-16 starting with the 0a length byte we get a very nice poly=0x8005 init=0xffff.

zuckschwerdt avatar Feb 12 '24 23:02 zuckschwerdt

Any status? This seems like a start but not close to landing something. Is it still useful to have an issue?

gdt avatar Jun 03 '24 22:06 gdt

@gdt I played a bit with it and wasn't able to get anywhere. However, I'm not very good at RE protocols like that. Maybe if we had a dump of the gateway or at least one of the sensors.....

I didn't try, but I can almost bet the chip is read-protected and I'm far away from decaping for the mere sensors ;)

kiler129 avatar Jun 04 '24 16:06 kiler129

Does it make sense for you to make a PR which adds a decoder which just has the hex of the encrypted bits? That would let more people gather data, merged or not, and move this along from issue. It seems there is good info here so I'm not thrilled about just closing this, but OTOH it's hard to make a case that anything useful will happen. If you think it's not worth the time to make a PR with the preamble/crc, then that feels like a clue (not saying you are wrong - just that it's a clue).

gdt avatar Jun 04 '24 17:06 gdt

FWIW, this is the flex decoder I put together to get the encrypted data:

decoder {
    name=AbodeRF,
    modulation=FSK_PCM,
    short=100,
    long=100,
    reset=2200,
    bits>=170,
    bits<=180,
    match={64}aaaaaaaa29cd29cd,
    preamble={64}aaaaaaaa29cd29cd,
    get=LEN:@0:{8}:%d,
    get=ZEROS:@8:{16}:%04x,
    get=ENCRYPTED_1:@24:{32}:%08x,
    get=ENCRYPTED_2:@56:{32}:%08x,
    get=CRC-16_8005_CMS:@88:{16}:%04x
}

$ rtl_433 -Y minmax -r g006_433.92M_250k.cu8 image

$ reveng -w 16 -s 0a00000c259b926dc7eadb61940 0a00003783cb50c0c3a87234520 0a00002229ae53639fab0c6fe50
width=16  poly=0x8005  init=0xffff  refin=false  refout=false  xorout=0x0000  check=0xaee7  residue=0x0000  name="CRC-16/CMS"

klohner avatar Jun 04 '24 21:06 klohner

PR to add, and we can close?

gdt avatar Jun 05 '24 10:06 gdt

I don't think this flex decoder is is worth the PR. Close is fine with me.

klohner avatar Jun 05 '24 18:06 klohner

Closing then. A PR to add a flex decoder, or even more progress, can happen regardless of this being closed - there's no requirement for an issue.

gdt avatar Jun 05 '24 23:06 gdt