rtl433
UNKNOWN
RTL-433 utility
|
Decoder for Digitech XC-0324 temperature sensor. More...
Functions | |
static int | decode_xc0324_message (r_device *decoder, bitbuffer_t *bitbuffer, unsigned row, uint16_t bitpos, const int latest_event, data_t **data) |
static int | xc0324_callback (r_device *decoder, bitbuffer_t *bitbuffer) |
Digitech XC-0324 device. More... | |
Variables | |
static const uint8_t | preamble_pattern [1] = {XC0324_DEVICE_STARTBYTE} |
static char * | output_fields [] |
r_device | digitech_xc0324 |
Decoder for Digitech XC-0324 temperature sensor.
Copyright (C) 2018 Geoff Lee
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
|
static |
[out] | data | returns the decoded information as a data_t* |
References bitbuffer_extract_bytes(), DATA_DOUBLE, DATA_FORMAT, DATA_INT, data_make(), DATA_STRING, decoder_output_bitrowf(), decoder_output_messagef(), reverse8(), r_device::verbose, and xor_bytes().
Referenced by xc0324_callback().
|
static |
Digitech XC-0324 device.
The encoding is pulse position modulation (i.e. gap width contains the modulation information)
Deciphered using two transmitters.
A transmission package is 148 bits (plus or minus one or two due to demodulation or transmission errors).
Each transmission contains 3 repeats of the 48 bit message, with 2 zero bits separating each repetition.
A 48 bit message consists of:
This decoder is associated with a tutorial entry in the rtl_433 wiki describing the way the transmissions were deciphered. See https://github.com/merbanan/rtl_433/wiki/digitech_xc0324.README.md
The tutorial is "by a newbie, for a newbie", ie intended to assist newcomers who wish to learn how to decipher a new device, and develop a rtl_433 device decoder from scratch for the first time.
To illustrate stages in the deciphering process, this decoder includes some debug style trace messages that would normally be removed. Specifically, running this decoder with debug level :
-vvv
simulates what might be seen early in the deciphering process, when only the modulation scheme and parameters have been discovered,-vv
simulates what might be seen once the synchronisation/preamble and message length has been uncovered, and it is time to start work on deciphering individual fields in the message, with no debug flags set provides the final (production stage) results, and-vvvv
is a special "finished development" output. It provides a file of reference values, to be included with the test data for future regression test purposes. References bitbuffer::bb, bitbuffer_search(), bitbuffer::bits_per_row, data_append(), DATA_INT, decode_xc0324_message(), decoder_output_bitbufferf(), decoder_output_bitrowf(), decoder_output_data(), decoder_output_messagef(), bitbuffer::num_rows, preamble_pattern, and r_device::verbose.
r_device digitech_xc0324 |
|
static |
|
static |
Referenced by xc0324_callback().