mirror of https://github.com/sebmillet/RF433any
RELEASE 0.7.3 - fixes a bug where last_low was wrong
- last_low could be (wrongly) equal to zero. - Also creates a fifth example, found in examples/05_print_code_for_RF433recv_lib - Fixes a minor issue (a bug? almost) where the separator could be bigger than the initialization sequence. Now sep will always be lower than, or equal to, initseq.
This commit is contained in:
parent
ef74c2c5c0
commit
a0e07369fa
30
README.md
30
README.md
|
@ -44,6 +44,8 @@ See [examples/04_callback/04_callback.ino](examples/04_callback/04_callback.ino)
|
|||
for an example with callback functions registered to be called when specific
|
||||
codes are received.
|
||||
|
||||
Use [examples/05_print_code_for_RF433recv_lib/05_print_code_for_RF433recv_lib.ino](examples/05_print_code_for_RF433recv_lib/05_print_code_for_RF433recv_lib.ino)
|
||||
to display code characteristics in a way that is usable by the library RF433recv.
|
||||
|
||||
More details
|
||||
------------
|
||||
|
@ -99,3 +101,31 @@ Bit value depending on convention
|
|||
| Manchester | low short, high short | 0 | 1 |
|
||||
| Manchester | high short, low short | 1 | 0 |
|
||||
|
||||
|
||||
About RF433any versus RF433recv
|
||||
-------------------------------
|
||||
|
||||
RF433recv is found here:
|
||||
[https://github.com/sebmillet/RF433recv](https://github.com/sebmillet/RF433recv)
|
||||
|
||||
- RF433any has no pre-defined idea of the code to analyze (nature of encoding,
|
||||
code timings, number of bits).
|
||||
|
||||
- RF433recv works the other way round: it works with the exact code
|
||||
characteristics.
|
||||
|
||||
**Then what is RF433recv good for?**
|
||||
|
||||
Actually RF433any, while being 'easy and universal', consumes *a lot* of
|
||||
memory, and this can be problematic.
|
||||
|
||||
**How to get the best of the two worlds**
|
||||
|
||||
You can use RF433any to get the exact code characteristics and re-use it with
|
||||
RF433recv library.
|
||||
|
||||
This is the goal of
|
||||
[examples/05_print_code_for_RF433recv_lib/05_print_code_for_RF433recv_lib.ino](examples/05_print_code_for_RF433recv_lib/05_print_code_for_RF433recv_lib.ino)
|
||||
|
||||
You can copy-paste the output of this sketch to call RF433recv library.
|
||||
|
||||
|
|
|
@ -694,6 +694,8 @@ void Decoder::set_ts(const uint16_t& arg_initseq, const Timings& ts) {
|
|||
tsext.high_short = ts.high_short;
|
||||
tsext.high_long = ts.high_long;
|
||||
tsext.sep = ts.sep;
|
||||
if (arg_initseq && tsext.sep > arg_initseq)
|
||||
tsext.sep = arg_initseq;
|
||||
}
|
||||
|
||||
void Decoder::get_tsext(TimingsExt *p_tsext) const {
|
||||
|
@ -703,11 +705,11 @@ void Decoder::get_tsext(TimingsExt *p_tsext) const {
|
|||
|
||||
void Decoder::take_into_account_first_low_high(const Section *psec,
|
||||
bool is_cont_of_prev_sec) {
|
||||
tsext.last_low = psec->last_low;
|
||||
if (is_cont_of_prev_sec)
|
||||
return;
|
||||
tsext.first_low = psec->first_low;
|
||||
tsext.first_high = psec->first_high;
|
||||
tsext.last_low = psec->last_low;
|
||||
|
||||
Signal e[2];
|
||||
for (short i = 0; i < 2; ++i) {
|
||||
|
|
|
@ -0,0 +1,143 @@
|
|||
// 05_print_code_for_RF433recv_lib.ino
|
||||
|
||||
// Example sketch that comes along with RF433any library
|
||||
// Displays the signal shape in a way that is ready to use with the library
|
||||
// RF433recv.
|
||||
|
||||
/*
|
||||
Copyright 2021 Sébastien Millet
|
||||
|
||||
`RF433any' is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Lesser General Public License as
|
||||
published by the Free Software Foundation, either version 3 of the
|
||||
License, or (at your option) any later version.
|
||||
|
||||
`RF433any' is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with this program. If not, see
|
||||
<https://www.gnu.org/licenses>.
|
||||
*/
|
||||
|
||||
//
|
||||
// Schematic: Radio Frequencies RECEIVER plugged on D2
|
||||
//
|
||||
|
||||
#include "RF433any.h"
|
||||
#include <Arduino.h>
|
||||
|
||||
#define PIN_RFINPUT 2
|
||||
|
||||
char serial_printf_buffer[100];
|
||||
void serial_printf(const char* msg, ...)
|
||||
__attribute__((format(printf, 1, 2)));
|
||||
|
||||
// NOTE
|
||||
// Assume Serial has been initialized (Serial.begin(...))
|
||||
void serial_printf(const char* msg, ...) {
|
||||
va_list args;
|
||||
|
||||
va_start(args, msg);
|
||||
|
||||
vsnprintf(serial_printf_buffer, sizeof(serial_printf_buffer), msg, args);
|
||||
va_end(args);
|
||||
Serial.print(serial_printf_buffer);
|
||||
}
|
||||
|
||||
void setup() {
|
||||
pinMode(PIN_RFINPUT, INPUT);
|
||||
Serial.begin(115200);
|
||||
Serial.print(F("Waiting for signal\n"));
|
||||
}
|
||||
|
||||
Track track(PIN_RFINPUT);
|
||||
|
||||
const char *encoding_names[] = {
|
||||
"RFMOD_TRIBIT",
|
||||
"RFMOD_TRIBIT_INVERTED",
|
||||
"RFMOD_MANCHESTER",
|
||||
"<unmanaged encoding>"
|
||||
};
|
||||
|
||||
void output_timings(Decoder *pdec, byte nb_bits) {
|
||||
TimingsExt tsext;
|
||||
if (!pdec)
|
||||
return;
|
||||
pdec->get_tsext(&tsext);
|
||||
|
||||
if (!tsext.initseq)
|
||||
return;
|
||||
|
||||
// serial_printf(" I=%u, LS=%u, LL=%u, HS=%u, HL=%u, S=%u, U=%u, "
|
||||
// "V=%u, Y=%u, Z=%u\n", tsext.initseq, tsext.low_short,
|
||||
// tsext.low_long, tsext.high_short, tsext.high_long, tsext.sep,
|
||||
// tsext.first_low, tsext.first_high, tsext.first_low_ignored,
|
||||
// tsext.last_low);
|
||||
|
||||
const char *enc;
|
||||
if (pdec->get_id_letter() == 'T')
|
||||
enc = encoding_names[0];
|
||||
else if (pdec->get_id_letter() == 'N')
|
||||
enc = encoding_names[1];
|
||||
else if (pdec->get_id_letter() == 'M')
|
||||
enc = encoding_names[2];
|
||||
else
|
||||
enc = encoding_names[3];
|
||||
|
||||
serial_printf("\n// -----CODE START-----\n");
|
||||
serial_printf(" // [WRITE THE DEVICE NAME HERE]\n"
|
||||
"rf.register_Receiver(\n");
|
||||
serial_printf("%s, // mod\n", enc);
|
||||
serial_printf("%5u, // initseq\n", tsext.initseq);
|
||||
serial_printf("%5u, // lo_prefix\n", tsext.first_low);
|
||||
serial_printf("%5u, // hi_prefix\n", tsext.first_high);
|
||||
serial_printf("%5u, // first_lo_ign\n", tsext.first_low_ignored);
|
||||
serial_printf("%5u, // lo_short\n", tsext.low_short);
|
||||
serial_printf("%5u, // lo_long\n", tsext.low_long);
|
||||
serial_printf("%5u, // hi_short (0 => take lo_short)\n", tsext.high_short);
|
||||
serial_printf("%5u, // hi_long (0 => take lo_long)\n", tsext.high_long);
|
||||
serial_printf("%5u, // lo_last\n", tsext.last_low);
|
||||
serial_printf("%5u, // sep\n", tsext.sep);
|
||||
serial_printf("%5u // nb_bits\n", nb_bits);
|
||||
serial_printf(");\n");
|
||||
serial_printf("// -----CODE END-----\n\n");
|
||||
}
|
||||
|
||||
void loop() {
|
||||
track.treset();
|
||||
|
||||
while (!track.do_events())
|
||||
delay(1);
|
||||
|
||||
Decoder *pdec0 = track.get_data(RF433ANY_FD_ALL);
|
||||
Decoder *pdec = pdec0;
|
||||
while (pdec) {
|
||||
int nb_bits = pdec->get_nb_bits();
|
||||
bool got_data = pdec->data_got_decoded();
|
||||
BitVector *pdata = pdec->take_away_data();
|
||||
|
||||
serial_printf("Decoded: %s, err: %d, code: %c, "
|
||||
"rep: %d, bits: %2d", (got_data ? "yes" : "no "),
|
||||
pdec->get_nb_errors(), pdec->get_id_letter(),
|
||||
pdec->get_repeats() + 1, nb_bits);
|
||||
|
||||
if (pdata) {
|
||||
Serial.print(", data: ");
|
||||
char *buf = pdata->to_str();
|
||||
if (buf) {
|
||||
Serial.print(buf);
|
||||
free(buf);
|
||||
}
|
||||
delete pdata;
|
||||
}
|
||||
Serial.print("\n");
|
||||
output_timings(pdec, nb_bits);
|
||||
pdec = pdec->get_next();
|
||||
}
|
||||
delete pdec0;
|
||||
}
|
||||
|
||||
// vim: ts=4:sw=4:tw=80:et
|
|
@ -0,0 +1,10 @@
|
|||
ARDUINO_DIR = /usr/share/arduino
|
||||
ARDUINO_LIBS = RF433any
|
||||
ARDMK_DIR = /home/sebastien/.arduino_mk
|
||||
|
||||
# USER_LIB_PATH = /home/sebastien/travail/cpp/seb/arduino/libraries
|
||||
|
||||
BOARD_TAG = uno
|
||||
MCU = atmega328
|
||||
|
||||
include $(ARDMK_DIR)/Arduino.mk
|
|
@ -0,0 +1,343 @@
|
|||
#!/usr/bin/bash
|
||||
|
||||
# am
|
||||
|
||||
# Copyright 2019, 2020, 2021 Sébastien Millet
|
||||
|
||||
# Can perform the following:
|
||||
# 1. Compile the code
|
||||
# 2. Upload to Arduino
|
||||
# 3. Read (continually) what is arriving from the USB port the Arduino is
|
||||
# connected to
|
||||
|
||||
# Versions history (as of 1.3)
|
||||
# 1.3 Output from Arduino is recorded in files named with numbers instead of
|
||||
# date-time string.
|
||||
# 1.4 Adds -t (--testplan) option, to set TESTPLAN macro
|
||||
# 1.5 -t (or --testplan) now comes with a value, so as to manage multiple test
|
||||
# plans.
|
||||
# 1.6 Updated to work fine with Arch arduino package instead of the manually
|
||||
# installed (from tar.gz source) package used so far.
|
||||
# 1.7 Renames archlinux-arduino back to arduino, and created corresponding
|
||||
# symlink (was cleaner to do s).
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
VERSION=1.7
|
||||
|
||||
PORT=
|
||||
BOARD=
|
||||
SPEED=
|
||||
FQBN=
|
||||
BUILDDIR=
|
||||
RECORDDIR=out
|
||||
READSPEED=
|
||||
RECORDFILE=
|
||||
|
||||
UPLOAD="no"
|
||||
VERBOSE="no"
|
||||
CATUSB="no"
|
||||
STTY="no"
|
||||
RECORDUSB="no"
|
||||
COMPILE="yes"
|
||||
TESTPLAN=
|
||||
|
||||
DISPLAYSEP=no
|
||||
|
||||
function finish {
|
||||
if [ "${DISPLAYSEP}" == "yes" ]; then
|
||||
echo "-----END ARDUINO OUTPUT-----" | tee -a "${RECORDFILE}"
|
||||
fi
|
||||
}
|
||||
|
||||
trap finish EXIT
|
||||
|
||||
function usage {
|
||||
echo "Usage:"
|
||||
echo " am [OPTIONS...] FILE"
|
||||
echo "Compile FILE using arduino-builder."
|
||||
echo "Example: am sketch.ino"
|
||||
echo ""
|
||||
echo "ENVIRONMENT VARIABLES"
|
||||
echo " If ARDUINO_USER_LIBS is defined and non empty, then arduino-builder"
|
||||
echo " is called with the supplementary option -libraries followed by"
|
||||
echo " ARDUINO_USER_LIBS' value."
|
||||
echo ""
|
||||
echo "OPTIONS"
|
||||
echo " -h --help Display this help screen"
|
||||
echo " -V --version Output version information and quit"
|
||||
echo " -v --verbose Be more talkative"
|
||||
echo " -u --upload Upload compiled code into Arduino"
|
||||
echo " -b --board Board, either 'uno' or 'nano'"
|
||||
echo " -p --port Port, for ex. '/dev/ttyUSB0'"
|
||||
echo " -s --speed Upload speed, for ex. 115200"
|
||||
echo " Normally, speed is infered from device type:"
|
||||
echo " 115200 for Uno, 57600 for Nano"
|
||||
echo " -B --fqbn Board Fully Qualified Name, like 'arduino:avr:uno'"
|
||||
echo " -d --builddir Build directory"
|
||||
echo " -c --catusb Display (continually) what Arduino writes on USB"
|
||||
echo " --stty Tune stty properly for later communication (implied"
|
||||
echo " by --catusb)"
|
||||
echo " -r --recordusb Write USB (continually) to a file (implies -c)"
|
||||
echo " --recordfile Output file if -r option is set"
|
||||
echo " -n --nocompile Don't compile code"
|
||||
echo " --readspeed Read speed of USB. If not specified, this script"
|
||||
echo " will try to infere it from source file. If it"
|
||||
echo " fails, it'll fallback to 9600."
|
||||
echo " This option is useful only if USB is read"
|
||||
echo " (-c or --stty option set)"
|
||||
echo " -t --testplan Set TESTPLAN macro value"
|
||||
echo " (as if #define TESTPLAN VALUE)"
|
||||
exit 1
|
||||
}
|
||||
|
||||
function version {
|
||||
echo "am version ${VERSION}"
|
||||
exit
|
||||
}
|
||||
|
||||
OPTS=$(getopt -o hVvub:p:s:B:d:crnt: --long help,version,verbose,upload,board:,port:,speed:,fqbn:,builddir:,catusb,stty,recordusb,nocompile,readspeed:,recordfile:,testplan: -n 'am' -- "$@")
|
||||
|
||||
eval set -- "$OPTS"
|
||||
|
||||
while true; do
|
||||
case "$1" in
|
||||
-h | --help ) usage; shift ;;
|
||||
-V | --version ) version; shift ;;
|
||||
-v | --verbose ) VERBOSE="yes"; shift ;;
|
||||
-u | --upload ) UPLOAD="yes"; shift ;;
|
||||
-b | --board ) BOARD="$2"; shift 2 ;;
|
||||
-p | --port ) PORT="$2"; shift 2 ;;
|
||||
-s | --speed ) SPEED="$2"; shift 2 ;;
|
||||
-B | --fqbn ) FQBN="$2"; shift 2 ;;
|
||||
-d | --builddir ) BUILDDIR="$2"; shift 2 ;;
|
||||
-c | --catusb ) CATUSB="yes"; shift ;;
|
||||
-r | --recordusb ) RECORDUSB="yes"; CATUSB="yes"; shift ;;
|
||||
-n | --nocompile ) COMPILE="no"; shift ;;
|
||||
--readspeed ) READSPEED="$2"; shift 2 ;;
|
||||
--recordfile ) RECORDFILE="$2"; shift 2 ;;
|
||||
--stty ) STTY="yes"; shift ;;
|
||||
-t | --testplan ) TESTPLAN="$2"; shift 2 ;;
|
||||
-- ) shift; break ;;
|
||||
* ) break ;;
|
||||
esac
|
||||
done
|
||||
|
||||
FILE=${1:-}
|
||||
TRAILINGOPTS=${2:-}
|
||||
|
||||
if [ -n "${TRAILINGOPTS}" ]; then
|
||||
echo "Error: trailing options"
|
||||
exit 1;
|
||||
fi
|
||||
if [ -z "${FILE}" ]; then
|
||||
echo "Error: no input file"
|
||||
exit 1;
|
||||
fi
|
||||
|
||||
set +e
|
||||
|
||||
if [ -n "${BOARD}" ]; then
|
||||
if [ "${BOARD}" != "uno" ] && [ "${BOARD}" != "nano" ]; then
|
||||
echo "Error: board '${BOARD}' unknown"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
#ARDUINODIR=$(LANG='' type -a arduino \
|
||||
# | tail -n 1 \
|
||||
# | sed 's/\S\+\sis\s//')
|
||||
#ARDUINODIR=$(readlink -f "${ARDUINODIR}")
|
||||
#ARDUINODIR=$(dirname "${ARDUINODIR}")
|
||||
|
||||
ARDUINODIR=/usr/share/arduino
|
||||
|
||||
COUNTUNO=$(compgen -G '/dev/ttyACM*' | wc -l)
|
||||
COUNTNANO=$(compgen -G '/dev/ttyUSB*' | wc -l)
|
||||
|
||||
if [ -z "${BOARD}" ]; then
|
||||
if [ "${COUNTUNO}" -ge 1 ] && [ "${COUNTNANO}" -ge 1 ]; then
|
||||
echo "Error: cannot guess board, found ${COUNTUNO} uno(s), ${COUNTNANO} nano(s)"
|
||||
exit 10
|
||||
fi
|
||||
if [ "${COUNTUNO}" -ge 1 ]; then
|
||||
BOARD=uno
|
||||
elif [ "${COUNTNANO}" -ge 1 ]; then
|
||||
BOARD=nano
|
||||
fi
|
||||
if [ -z "${BOARD}" ]; then
|
||||
echo "Error: cannot guess board, none found";
|
||||
exit 10
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ "${UPLOAD}" == "yes" ] || [ "${CATUSB}" == "yes" ]; then
|
||||
if [ -z "${PORT}" ]; then
|
||||
if [ "${BOARD}" == "uno" ]; then
|
||||
COUNT=${COUNTUNO}
|
||||
PORT=$(compgen -G '/dev/ttyACM*')
|
||||
elif [ "${BOARD}" == "nano" ]; then
|
||||
COUNT=${COUNTNANO}
|
||||
PORT=$(compgen -G '/dev/ttyUSB*')
|
||||
else
|
||||
echo "FATAL #001, CHECK THIS CODE"
|
||||
exit 99
|
||||
fi
|
||||
|
||||
if [ "${COUNT}" -ge 2 ]; then
|
||||
echo "Error: cannot guess port, more than 1 board '${BOARD}' found"
|
||||
exit 10
|
||||
fi
|
||||
if [ -z "${PORT}" ]; then
|
||||
echo "Error: cannot guess port, none found"
|
||||
exit 10
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ -z "${SPEED}" ]; then
|
||||
if [ "${BOARD}" == "uno" ]; then
|
||||
SPEED=115200
|
||||
elif [ "${BOARD}" == "nano" ]; then
|
||||
SPEED=57600
|
||||
else
|
||||
echo "FATAL #002, CHECK THIS CODE"
|
||||
exit 99
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ ! -e "${PORT}" ]; then
|
||||
echo "Error: port not found"
|
||||
exit 10
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ -z "${FQBN}" ]; then
|
||||
if [ "${BOARD}" == "uno" ]; then
|
||||
FQBN="arduino:avr:uno"
|
||||
elif [ "${BOARD}" == "nano" ]; then
|
||||
FQBN="arduino:avr:nano:cpu=atmega328old"
|
||||
else
|
||||
echo "FATAL #003, CHECK THIS CODE"
|
||||
exit 99
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ -z "${BUILDDIR}" ]; then
|
||||
if [[ "${FILE}" == */* ]]; then
|
||||
BUILDDIR=${FILE%/*}
|
||||
BUILDDIR="${BUILDDIR%/}/build"
|
||||
else
|
||||
BUILDDIR=build
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ "${RECORDUSB}" == "yes" ]; then
|
||||
if [ -z "${RECORDFILE}" ]; then
|
||||
V=${FILE##*/}
|
||||
V=${V%.*}
|
||||
V=${V:-out}
|
||||
PREV=
|
||||
for i in {15..00}; do
|
||||
F="${RECORDDIR}/${V}-$i.txt"
|
||||
if [ -e "${F}" ] && [ -n "${PREV}" ]; then
|
||||
mv "${F}" "${PREV}"
|
||||
fi
|
||||
PREV="${F}"
|
||||
done
|
||||
RECORDFILE="${F}"
|
||||
mkdir -p "${RECORDDIR}"
|
||||
fi
|
||||
else
|
||||
RECORDFILE="/dev/null"
|
||||
fi
|
||||
|
||||
if [ "${VERBOSE}" == "yes" ]; then
|
||||
echo "-- Settings"
|
||||
echo "Arduino dir: ${ARDUINODIR}"
|
||||
echo "Board: ${BOARD}"
|
||||
echo "Port: ${PORT}"
|
||||
echo "Speed: ${SPEED}"
|
||||
echo "Fqbn: ${FQBN}"
|
||||
echo "Upload: ${UPLOAD}"
|
||||
echo "Catusb: ${CATUSB}"
|
||||
echo "Recordusb: ${RECORDUSB}"
|
||||
echo "Record file: ${RECORDFILE}"
|
||||
echo "Verbose: ${VERBOSE}"
|
||||
echo "File: ${FILE}"
|
||||
echo "Build dir: ${BUILDDIR}"
|
||||
fi
|
||||
|
||||
set -e
|
||||
|
||||
if [ "${COMPILE}" == "yes" ]; then
|
||||
echo "-- Compile"
|
||||
|
||||
mkdir -p "${BUILDDIR}"
|
||||
|
||||
OPT_LIB=
|
||||
TMP_ULIB=${ARDUINO_USER_LIBS:-}
|
||||
if [ -n "${TMP_ULIB}" ]; then
|
||||
OPT_LIB="-libraries ""${TMP_ULIB}"""
|
||||
fi
|
||||
|
||||
TESTPLAN_OPT=""
|
||||
if [ -n "${TESTPLAN}" ]; then
|
||||
TESTPLAN_OPT="-prefs=build.extra_flags=-DTESTPLAN=${TESTPLAN}"
|
||||
fi
|
||||
|
||||
# shellcheck disable=SC2086
|
||||
# (We don't want to quote OPT_LIB as it can contain multiple options.)
|
||||
"${ARDUINODIR}/arduino-builder" \
|
||||
-hardware "${ARDUINODIR}/hardware" \
|
||||
-tools "${ARDUINODIR}/hardware/tools/avr" \
|
||||
-tools "${ARDUINODIR}/tools-builder" \
|
||||
-built-in-libraries "${ARDUINODIR}/libraries" \
|
||||
${OPT_LIB} \
|
||||
-fqbn "${FQBN}" \
|
||||
-build-path "${BUILDDIR}" \
|
||||
${TESTPLAN_OPT} \
|
||||
"${FILE}"
|
||||
fi
|
||||
|
||||
FILEBASENAME=${FILE##*/}
|
||||
|
||||
if [ "${UPLOAD}" == "yes" ]; then
|
||||
echo "-- Upload"
|
||||
"/usr/bin/avrdude" \
|
||||
-q -q -patmega328p -carduino -P"${PORT}" -b"${SPEED}" -D \
|
||||
-Uflash:w:"${BUILDDIR}/${FILEBASENAME}".hex:i
|
||||
fi
|
||||
|
||||
if [ "${CATUSB}" == "yes" ] || [ "${STTY}" == "yes" ]; then
|
||||
if [ -z "${READSPEED}" ]; then
|
||||
TFILE=$(mktemp)
|
||||
gcc -fpreprocessed -dD -x c++ -E "${FILE}" > "${TFILE}"
|
||||
for sp in 9600 19200 28800 38400 57600 115200; do
|
||||
if grep ${sp} "${TFILE}" > /dev/null; then
|
||||
READSPEED=${sp}
|
||||
fi
|
||||
done
|
||||
READSPEED=${READSPEED:-9600}
|
||||
rm "${TFILE}"
|
||||
fi
|
||||
|
||||
stty -F "${PORT}" -hupcl -echo "${READSPEED}"
|
||||
echo "-- usb setup with speed ${READSPEED}"
|
||||
fi
|
||||
|
||||
if [ "${CATUSB}" == "yes" ]; then
|
||||
echo "-- Read usb (Ctrl-C to quit)"
|
||||
DISPLAYSEP=yes
|
||||
{
|
||||
echo "speed=${READSPEED}"
|
||||
echo "fqbn=${FQBN}"
|
||||
echo "port=${PORT}"
|
||||
echo "file=${FILE}"
|
||||
echo "filedate=$(date +"%Y-%m-%dT%H:%M:%SZ" -d @$(stat -c '%Y' "${FILE}"))"
|
||||
echo "date=$(date +'%Y-%m-%dT%H:%M:%SZ')"
|
||||
echo ""
|
||||
echo "-----BEGIN ARDUINO OUTPUT-----"
|
||||
} | tee "${RECORDFILE}"
|
||||
tee -a "${RECORDFILE}" < "${PORT}"
|
||||
fi
|
||||
|
|
@ -1,2 +1,2 @@
|
|||
[0] Received 9 bits: 01 6e
|
||||
T=TRI, E=0, I=9000, S=572, L=1256, P=7020, Y=0, Z=528
|
||||
T=TRI, E=0, I=9000, S=572, L=1256, P=7020, Y=0, Z=522
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
[0] Unknown encoding: 18 signal bits
|
||||
Signal: LS:SL:LS:LS:SL:LS:LS:LS:LL:SP
|
||||
T=UNK, E=0, I=9000, S=572, L=1256, P=7020, Y=0, Z=1232
|
||||
T=UNK, E=0, I=9000, S=572, L=1256, P=7020, Y=0, Z=522
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
[0] Received 32 bits: b5 35 6d 00
|
||||
T=TRI, E=0, I=6908, S=598, L=1224, P=7036, Y=0, Z=560
|
||||
T=TRI, E=0, I=6908, S=598, L=1224, P=6908, Y=0, Z=560
|
||||
[1] Received 32 bits: b5 35 6d 00
|
||||
T=TRI, E=0, I=0, S=598, L=1224, P=6984, Y=0, Z=408
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
[0] Received 32 bits: b5 35 6d 00
|
||||
T=TRI, E=0, I=6908, S=598, L=1224, P=7036, Y=0, Z=572
|
||||
T=TRI, E=0, I=6908, S=598, L=1224, P=6908, Y=0, Z=560
|
||||
[1] Received 32 bits: b5 35 6d 00
|
||||
T=TRI, E=0, I=0, S=598, L=1224, P=6984, Y=0, Z=544
|
||||
T=TRI, E=0, I=0, S=598, L=1224, P=6984, Y=0, Z=408
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
[0] Received 32 bits: 7e dc 56 78
|
||||
T=MAN, E=0, I=5436, S=1180, L=2270, P=6724, Y=0, Z=1112
|
||||
T=MAN, E=0, I=5436, S=1180, L=2270, P=5436, Y=0, Z=1112
|
||||
[1] Received 32 bits: 7e dc 56 78
|
||||
T=MAN, E=0, I=0, S=1180, L=2270, P=6740, Y=0, Z=1088
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
[0] Received 32 bits: 7e dc 56 78
|
||||
T=MAN, E=0, I=5436, S=1180, L=2270, P=6724, Y=0, Z=1180
|
||||
T=MAN, E=0, I=5436, S=1180, L=2270, P=5436, Y=0, Z=1112
|
||||
[1] Received 32 bits: 7e dc 56 78
|
||||
T=MAN, E=0, I=0, S=1180, L=2270, P=6740, Y=0, Z=1120
|
||||
T=MAN, E=0, I=0, S=1180, L=2270, P=6740, Y=0, Z=1088
|
||||
[2] Received 9 bits: 00 fd
|
||||
T=MAN, E=0, I=0, S=1180, L=2270, P=0, Y=0, Z=1088
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
[0] Received 32 bits: 8e dc 56 7f
|
||||
T=MAN, E=0, I=5568, S=1154, L=2314, P=5576, Y=0, Z=1100
|
||||
T=MAN, E=0, I=5568, S=1154, L=2314, P=5568, Y=0, Z=1100
|
||||
[1] Received 32 bits: 8e dc 56 7f
|
||||
T=MAN, E=0, I=0, S=1154, L=2314, P=5584, Y=0, Z=1080
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
[0] Received 32 bits: 8e dc 56 7f
|
||||
T=MAN, E=0, I=5568, S=1154, L=2314, P=5576, Y=0, Z=2260
|
||||
T=MAN, E=0, I=5568, S=1154, L=2314, P=5568, Y=0, Z=1100
|
||||
[1] Received 32 bits: 8e dc 56 7f
|
||||
T=MAN, E=0, I=0, S=1154, L=2314, P=5584, Y=0, Z=2248
|
||||
T=MAN, E=0, I=0, S=1154, L=2314, P=5584, Y=0, Z=1080
|
||||
[2] Received 11 bits: 04 76
|
||||
T=MAN, E=0, I=0, S=1154, L=2314, P=0, Y=0, Z=2244
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
[0] Received 32 bits: fe dc 56 78
|
||||
T=MAN, E=0, I=5468, S=1154, L=2310, P=6716, Y=0, Z=1104
|
||||
T=MAN, E=0, I=5468, S=1154, L=2310, P=5468, Y=0, Z=1104
|
||||
[1] Received 32 bits: fe dc 56 78
|
||||
T=MAN, E=0, I=0, S=1154, L=2310, P=6732, Y=0, Z=1088
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
[0] Received 32 bits: fe dc 56 78
|
||||
T=MAN, E=0, I=5468, S=1154, L=2310, P=6716, Y=0, Z=1180
|
||||
T=MAN, E=0, I=5468, S=1154, L=2310, P=5468, Y=0, Z=1104
|
||||
[1] Received 32 bits: fe dc 56 78
|
||||
T=MAN, E=0, I=0, S=1154, L=2310, P=6732, Y=0, Z=1116
|
||||
T=MAN, E=0, I=0, S=1154, L=2310, P=6732, Y=0, Z=1088
|
||||
[2] Received 9 bits: 01 fd
|
||||
T=MAN, E=0, I=0, S=1154, L=2310, P=0, Y=0, Z=1096
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
[0] Received 32 bits: 7e dc 56 78
|
||||
T=MAN, E=0, I=5436, S=1180, L=2270, P=6724, Y=0, Z=1112
|
||||
T=MAN, E=0, I=5436, S=1180, L=2270, P=5436, Y=0, Z=1112
|
||||
[1] Unknown encoding: 50 signal bits
|
||||
Signal: SS:SL:SS:SS:SS:SS:SS:LL:SS:LL:SS:SS:LS:SS:SL:LL:SL:SS:LS:SL:SS:SS:SS:LS:SS:SP
|
||||
T=UNK, E=0, I=0, S=1180, L=2270, P=6740, Y=0, Z=1088
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
[0] Received 32 bits: 7e dc 56 78
|
||||
T=MAN, E=0, I=5436, S=1180, L=2270, P=6724, Y=0, Z=1180
|
||||
T=MAN, E=0, I=5436, S=1180, L=2270, P=5436, Y=0, Z=1112
|
||||
[1] Received 27 bits(!): 03 f6 e2 a3
|
||||
T=MAN, E=4, I=0, S=1180, L=2270, P=6740, Y=0, Z=1120
|
||||
T=MAN, E=4, I=0, S=1180, L=2270, P=6740, Y=0, Z=1088
|
||||
[2] Received 9 bits: 00 fd
|
||||
T=MAN, E=0, I=0, S=1180, L=2270, P=0, Y=0, Z=1088
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
[0] Sync 11
|
||||
T=SYN, E=0, I=14916, S(lo)=348, L(lo)=348, S(hi)=364, L(hi)=364, P=3724, Y=0, Z=348
|
||||
[1] Received 55 bits: 50 8f 1a 30 08 98 cf
|
||||
T=TRI, E=0, I=0, S=356, L=734, P=3000, Y=0, Z=344
|
||||
T=TRI, E=0, I=0, S=356, L=734, P=3000, Y=0, Z=708
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
[0] Sync 11
|
||||
T=SYN, E=0, I=14916, S(lo)=348, L(lo)=348, S(hi)=364, L(hi)=364, P=3724, Y=0, Z=344
|
||||
[1] Received 55 bits: 50 8f 1a 30 08 98 cf
|
||||
T=TRI, E=0, I=0, S=356, L=734, P=3000, Y=0, Z=356
|
||||
T=TRI, E=0, I=0, S=356, L=734, P=3000, Y=0, Z=708
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
[0] Sync 11
|
||||
T=SYN, E=0, I=14924, S(lo)=348, L(lo)=348, S(hi)=364, L(hi)=364, P=3740, Y=0, Z=340
|
||||
[1] Received 55 bits: 29 3d 1c 2f 08 98 cf
|
||||
T=TRI, E=0, I=0, S=356, L=734, P=3000, Y=0, Z=316
|
||||
T=TRI, E=0, I=0, S=356, L=734, P=3000, Y=0, Z=692
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
[0] Sync 11
|
||||
T=SYN, E=0, I=14924, S(lo)=348, L(lo)=348, S(hi)=364, L(hi)=364, P=3740, Y=0, Z=324
|
||||
[1] Received 55 bits: 29 3d 1c 2f 08 98 cf
|
||||
T=TRI, E=0, I=0, S=356, L=734, P=3000, Y=0, Z=336
|
||||
T=TRI, E=0, I=0, S=356, L=734, P=3000, Y=0, Z=692
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
[0] Sync 11
|
||||
T=SYN, E=0, I=14916, S(lo)=348, L(lo)=348, S(hi)=364, L(hi)=364, P=3724, Y=0, Z=348
|
||||
[1] Received 33 bits: 01 42 3c 68 c0
|
||||
T=TRI, E=0, I=0, S=356, L=734, P=15284, Y=0, Z=344
|
||||
T=TRI, E=0, I=0, S=356, L=734, P=15284, Y=0, Z=328
|
||||
[2] Sync 11
|
||||
T=SYN, E=0, I=0, S=356, L=734, P=3740, Y=0, Z=336
|
||||
[3] Received 9 bits: 01 42
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
[0] Sync 11
|
||||
T=SYN, E=0, I=14916, S(lo)=348, L(lo)=348, S(hi)=364, L(hi)=364, P=3724, Y=0, Z=344
|
||||
[1] Received 33 bits: 01 42 3c 68 c0
|
||||
T=TRI, E=0, I=0, S=356, L=734, P=15284, Y=0, Z=356
|
||||
T=TRI, E=0, I=0, S=356, L=734, P=15284, Y=0, Z=328
|
||||
[2] Sync 11
|
||||
T=SYN, E=0, I=0, S=356, L=734, P=3740, Y=0, Z=340
|
||||
T=SYN, E=0, I=0, S=356, L=734, P=3740, Y=0, Z=336
|
||||
[3] Received 9 bits: 01 42
|
||||
T=TRI, E=0, I=0, S=356, L=734, P=0, Y=0, Z=356
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
[0] Sync 11
|
||||
T=SYN, E=0, I=14916, S(lo)=348, L(lo)=348, S(hi)=364, L(hi)=364, P=3724, Y=0, Z=348
|
||||
[1] Received 33 bits: 01 42 3c 68 c0
|
||||
T=TRI, E=0, I=0, S=356, L=734, P=15284, Y=0, Z=344
|
||||
T=TRI, E=0, I=0, S=356, L=734, P=15284, Y=0, Z=328
|
||||
[2] Sync 11
|
||||
T=SYN, E=0, I=0, S=356, L=734, P=3740, Y=0, Z=336
|
||||
[3] Received 10 bits: 02 84
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
[0] Sync 11
|
||||
T=SYN, E=0, I=14916, S(lo)=348, L(lo)=348, S(hi)=364, L(hi)=364, P=3724, Y=0, Z=344
|
||||
[1] Received 33 bits: 01 42 3c 68 c0
|
||||
T=TRI, E=0, I=0, S=356, L=734, P=15284, Y=0, Z=356
|
||||
T=TRI, E=0, I=0, S=356, L=734, P=15284, Y=0, Z=328
|
||||
[2] Sync 11
|
||||
T=SYN, E=0, I=0, S=356, L=734, P=3740, Y=0, Z=340
|
||||
T=SYN, E=0, I=0, S=356, L=734, P=3740, Y=0, Z=336
|
||||
[3] Received 9 bits: 01 42
|
||||
T=TRI, E=0, I=0, S=356, L=734, P=0, Y=0, Z=356
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
[0] Sync 11
|
||||
T=SYN, E=0, I=14916, S(lo)=348, L(lo)=348, S(hi)=364, L(hi)=364, P=3724, Y=0, Z=344
|
||||
[1] Received 48 bits(!): a1 1e 34 60 22 63
|
||||
T=TRI, E=1, I=0, S=356, L=734, P=0, Y=0, Z=356
|
||||
T=TRI, E=1, I=0, S=356, L=734, P=0, Y=0, Z=708
|
||||
|
|
|
@ -2,6 +2,6 @@
|
|||
T=SYN, E=0, I=14916, S(lo)=348, L(lo)=348, S(hi)=364, L(hi)=364, P=3724, Y=0, Z=344
|
||||
[1] Unknown encoding: 48 signal bits
|
||||
Signal: LS:SL:SS:SL:SL:LS:SL:SL:SL:SL:LS:LS:SL:SL:SL:LS:LS:SL:SL:LS:LS:SL:LS:LS:SP
|
||||
T=UNK, E=0, I=0, S=356, L=736, P=15284, Y=0, Z=340
|
||||
T=UNK, E=0, I=0, S=356, L=736, P=15284, Y=0, Z=328
|
||||
[2] Sync 8
|
||||
T=SYN, E=0, I=0, S=356, L=736, P=3740, Y=0, Z=336
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
[0] Received 24 bits: b9 4d 24
|
||||
T=TRI, E=0, I=5652, S=338, L=1044, P=10664, Y=0, Z=364
|
||||
T=TRI, E=0, I=5652, S=338, L=1044, P=5652, Y=0, Z=364
|
||||
[1] Received 24 bits: b9 4d 24
|
||||
T=TRI, E=0, I=0, S=338, L=1044, P=10688, Y=0, Z=324
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
[0] Received 24 bits: b9 4d 24
|
||||
T=TRI, E=0, I=5652, S=338, L=1044, P=10664, Y=0, Z=400
|
||||
T=TRI, E=0, I=5652, S=338, L=1044, P=5652, Y=0, Z=364
|
||||
[1] Received 24 bits: b9 4d 24
|
||||
T=TRI, E=0, I=0, S=338, L=1044, P=10688, Y=0, Z=364
|
||||
T=TRI, E=0, I=0, S=338, L=1044, P=10688, Y=0, Z=324
|
||||
[2] Received 17 bits: 01 72 9a
|
||||
T=TRI, E=0, I=0, S=338, L=1044, P=0, Y=0, Z=328
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
[0] Received 24 bits: b9 4d 24
|
||||
T=TRI, E=0, I=10680, S=336, L=1036, P=10700, Y=0, Z=328
|
||||
T=TRI, E=0, I=10680, S=336, L=1036, P=10680, Y=0, Z=328
|
||||
[1] Received 24 bits: b9 4d 24
|
||||
T=TRI, E=0, I=0, S=336, L=1036, P=10708, Y=0, Z=316
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
[0] Received 24 bits: b9 4d 24
|
||||
T=TRI, E=0, I=10680, S=336, L=1036, P=10700, Y=0, Z=348
|
||||
T=TRI, E=0, I=10680, S=336, L=1036, P=10680, Y=0, Z=328
|
||||
[1] Received 24 bits: b9 4d 24
|
||||
T=TRI, E=0, I=0, S=336, L=1036, P=10708, Y=0, Z=332
|
||||
T=TRI, E=0, I=0, S=336, L=1036, P=10708, Y=0, Z=316
|
||||
[2] Received 17 bits: 01 72 9a
|
||||
T=TRI, E=0, I=0, S=336, L=1036, P=0, Y=0, Z=312
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
[0] Unknown encoding: 48 signal bits
|
||||
Signal: LS:SL:LS:LS:LS:SL:SL:LS:SL:SS:SL:SL:LS:LS:SL:LS:SL:SL:LS:SL:SL:LS:SL:SL:SP
|
||||
T=UNK, E=0, I=5652, S=338, L=1044, P=10664, Y=0, Z=364
|
||||
T=UNK, E=0, I=5652, S=338, L=1044, P=5652, Y=0, Z=364
|
||||
[1] Received 24 bits: b9 4d 24
|
||||
T=TRI, E=0, I=0, S=338, L=1044, P=10688, Y=0, Z=324
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
[0] Received 23 bits(!): 5c 8d 24
|
||||
T=TRI, E=1, I=5652, S=338, L=1044, P=10664, Y=0, Z=400
|
||||
T=TRI, E=1, I=5652, S=338, L=1044, P=5652, Y=0, Z=364
|
||||
[1] Received 24 bits: b9 4d 24
|
||||
T=TRI, E=0, I=0, S=338, L=1044, P=10688, Y=0, Z=364
|
||||
T=TRI, E=0, I=0, S=338, L=1044, P=10688, Y=0, Z=324
|
||||
[2] Received 17 bits: 01 72 9a
|
||||
T=TRI, E=0, I=0, S=338, L=1044, P=0, Y=0, Z=328
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
[0] Received 12 bits: 05 55
|
||||
T=TRN, E=0, I=23908, S=650, L=1348, P=23912, Y=650, Z=656
|
||||
T=TRN, E=0, I=23908, S=650, L=1348, P=23908, Y=650, Z=656
|
||||
[1] Received 12 bits: 05 55
|
||||
T=TRN, E=0, I=0, S=650, L=1348, P=23936, Y=650, Z=664
|
||||
[2] Received 12 bits: 05 55
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
[0] Received 12 bits: 05 55
|
||||
T=TRN, E=0, I=23908, S=650, L=1348, P=23912, Y=650, Z=700
|
||||
T=TRN, E=0, I=23908, S=650, L=1348, P=23908, Y=650, Z=656
|
||||
[1] Received 12 bits: 05 55
|
||||
T=TRN, E=0, I=0, S=650, L=1348, P=23936, Y=650, Z=664
|
||||
[2] Received 12 bits: 05 55
|
||||
T=TRN, E=0, I=0, S=650, L=1348, P=23956, Y=650, Z=672
|
||||
T=TRN, E=0, I=0, S=650, L=1348, P=23956, Y=650, Z=628
|
||||
[3] Received 12 bits: 05 55
|
||||
T=TRN, E=0, I=0, S=650, L=1348, P=23936, Y=650, Z=636
|
||||
T=TRN, E=0, I=0, S=650, L=1348, P=23936, Y=650, Z=656
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
[0] Received 12 bits: 05 55
|
||||
T=TRN, E=0, I=23908, S=666, L=1356, P=23956, Y=666, Z=636
|
||||
T=TRN, E=0, I=23908, S=666, L=1356, P=23908, Y=666, Z=636
|
||||
[1] Received 12 bits: 05 55
|
||||
T=TRN, E=0, I=0, S=666, L=1356, P=23964, Y=666, Z=636
|
||||
[2] Received 12 bits: 05 55
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
[0] Received 12 bits: 05 55
|
||||
T=TRN, E=0, I=23908, S=666, L=1356, P=23956, Y=666, Z=708
|
||||
T=TRN, E=0, I=23908, S=666, L=1356, P=23908, Y=666, Z=636
|
||||
[1] Received 12 bits: 05 55
|
||||
T=TRN, E=0, I=0, S=666, L=1356, P=23964, Y=666, Z=632
|
||||
T=TRN, E=0, I=0, S=666, L=1356, P=23964, Y=666, Z=636
|
||||
[2] Received 12 bits: 05 55
|
||||
T=TRN, E=0, I=0, S=666, L=1356, P=23952, Y=666, Z=636
|
||||
T=TRN, E=0, I=0, S=666, L=1356, P=23952, Y=666, Z=640
|
||||
[3] Received 12 bits: 05 55
|
||||
T=TRN, E=0, I=0, S=666, L=1356, P=23952, Y=666, Z=656
|
||||
T=TRN, E=0, I=0, S=666, L=1356, P=23952, Y=666, Z=648
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
[0] Unknown encoding: 24 signal bits
|
||||
Signal: SS:LL:SS:LL:SS:SS:LL:LL:SS:LL:SS:LL:SP
|
||||
T=UNK, E=0, I=23908, S=650, L=1348, P=23912, Y=0, Z=656
|
||||
T=UNK, E=0, I=23908, S=650, L=1348, P=23908, Y=0, Z=656
|
||||
[1] Received 12 bits: 05 55
|
||||
T=TRN, E=0, I=0, S=650, L=1348, P=23936, Y=650, Z=664
|
||||
[2] Unknown encoding: 24 signal bits
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
[0] Unknown encoding: 24 signal bits
|
||||
Signal: SS:LL:SS:LL:SS:SS:LL:LL:SS:LL:SS:LL:SP
|
||||
T=UNK, E=0, I=23908, S=650, L=1348, P=23912, Y=0, Z=700
|
||||
T=UNK, E=0, I=23908, S=650, L=1348, P=23908, Y=0, Z=656
|
||||
[1] Received 12 bits: 05 55
|
||||
T=TRN, E=0, I=0, S=650, L=1348, P=23936, Y=650, Z=664
|
||||
[2] Received 11 bits(!): 02 ad
|
||||
T=TRN, E=1, I=0, S=650, L=1348, P=23936, Y=650, Z=636
|
||||
T=TRN, E=1, I=0, S=650, L=1348, P=23936, Y=650, Z=656
|
||||
[3] Received 12 bits: 05 55
|
||||
T=TRN, E=0, I=0, S=650, L=1348, P=23956, Y=650, Z=672
|
||||
T=TRN, E=0, I=0, S=650, L=1348, P=23956, Y=650, Z=628
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
[0] Sync 11
|
||||
T=SYN, E=0, I=14916, S(lo)=356, L(lo)=356, S(hi)=364, L(hi)=364, P=3724, U=2500, V=2500, Y=0, Z=348
|
||||
[1] Received 55 bits: 50 8f 1a 30 08 98 cf
|
||||
T=TRI, E=0, I=0, S=360, L=734, P=3000, Y=0, Z=344
|
||||
T=TRI, E=0, I=0, S=360, L=734, P=3000, Y=0, Z=708
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
[0] Sync 11
|
||||
T=SYN, E=0, I=14916, S(lo)=356, L(lo)=356, S(hi)=364, L(hi)=364, P=3724, U=2500, V=2500, Y=0, Z=340
|
||||
[1] Received 55 bits: 50 8f 1a 30 08 98 cf
|
||||
T=TRI, E=0, I=0, S=360, L=734, P=3000, Y=0, Z=356
|
||||
T=TRI, E=0, I=0, S=360, L=734, P=3000, Y=0, Z=708
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
[0] Sync 7
|
||||
T=SYN, E=0, I=14916, S(lo)=356, L(lo)=356, S(hi)=364, L(hi)=364, P=3724, U=2500, V=2500, Y=0, Z=348
|
||||
[1] Received 55 bits: 50 8f 1a 30 08 98 cf
|
||||
T=TRI, E=0, I=0, S=360, L=734, P=3000, Y=0, Z=344
|
||||
T=TRI, E=0, I=0, S=360, L=734, P=3000, Y=0, Z=708
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
[0] Sync 7
|
||||
T=SYN, E=0, I=14916, S(lo)=356, L(lo)=356, S(hi)=364, L(hi)=364, P=3724, U=2500, V=2500, Y=0, Z=348
|
||||
[1] Received 55 bits: 50 8f 1a 30 08 98 cf
|
||||
T=TRI, E=0, I=0, S=360, L=734, P=3000, Y=0, Z=356
|
||||
T=TRI, E=0, I=0, S=360, L=734, P=3000, Y=0, Z=708
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
[0] Sync 8
|
||||
T=SYN, E=0, I=14916, S(lo)=356, L(lo)=356, S(hi)=364, L(hi)=364, P=3724, U=2500, V=2500, Y=0, Z=348
|
||||
[1] Received 55 bits: 50 8f 1a 30 08 98 cf
|
||||
T=TRI, E=0, I=0, S=360, L=734, P=3000, Y=0, Z=344
|
||||
T=TRI, E=0, I=0, S=360, L=734, P=3000, Y=0, Z=708
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
[0] Sync 8
|
||||
T=SYN, E=0, I=14916, S(lo)=356, L(lo)=356, S(hi)=364, L(hi)=364, P=3724, U=2500, V=2500, Y=0, Z=340
|
||||
[1] Received 55 bits: 50 8f 1a 30 08 98 cf
|
||||
T=TRI, E=0, I=0, S=360, L=734, P=3000, Y=0, Z=356
|
||||
T=TRI, E=0, I=0, S=360, L=734, P=3000, Y=0, Z=708
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
[0] Sync 8
|
||||
T=SYN, E=0, I=14916, S(lo)=340, L(lo)=340, S(hi)=368, L(hi)=368, P=3724, Y=0, Z=348
|
||||
[1] Received 55 bits: 50 8f 1a 30 08 98 cf
|
||||
T=TRI, E=0, I=0, S=354, L=734, P=3000, Y=0, Z=344
|
||||
T=TRI, E=0, I=0, S=354, L=734, P=3000, Y=0, Z=708
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
[0] Sync 8
|
||||
T=SYN, E=0, I=14916, S(lo)=340, L(lo)=340, S(hi)=368, L(hi)=368, P=3724, Y=0, Z=348
|
||||
[1] Received 55 bits: 50 8f 1a 30 08 98 cf
|
||||
T=TRI, E=0, I=0, S=354, L=734, P=3000, Y=0, Z=356
|
||||
T=TRI, E=0, I=0, S=354, L=734, P=3000, Y=0, Z=708
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
[0] Sync 9
|
||||
T=SYN, E=0, I=14916, S(lo)=340, L(lo)=340, S(hi)=368, L(hi)=368, P=3724, Y=0, Z=348
|
||||
[1] Received 55 bits: 50 8f 1a 30 08 98 cf
|
||||
T=TRI, E=0, I=0, S=354, L=734, P=3000, Y=0, Z=344
|
||||
T=TRI, E=0, I=0, S=354, L=734, P=3000, Y=0, Z=708
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
[0] Sync 9
|
||||
T=SYN, E=0, I=14916, S(lo)=340, L(lo)=340, S(hi)=368, L(hi)=368, P=3724, Y=0, Z=340
|
||||
[1] Received 55 bits: 50 8f 1a 30 08 98 cf
|
||||
T=TRI, E=0, I=0, S=354, L=734, P=3000, Y=0, Z=356
|
||||
T=TRI, E=0, I=0, S=354, L=734, P=3000, Y=0, Z=708
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
[0] Sync 10
|
||||
T=SYN, E=0, I=14916, S(lo)=340, L(lo)=340, S(hi)=368, L(hi)=368, P=3724, Y=0, Z=348
|
||||
[1] Received 55 bits: 50 8f 1a 30 08 98 cf
|
||||
T=TRI, E=0, I=0, S=354, L=734, P=3000, Y=0, Z=344
|
||||
T=TRI, E=0, I=0, S=354, L=734, P=3000, Y=0, Z=708
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
[0] Sync 10
|
||||
T=SYN, E=0, I=14916, S(lo)=340, L(lo)=340, S(hi)=368, L(hi)=368, P=3724, Y=0, Z=340
|
||||
[1] Received 55 bits: 50 8f 1a 30 08 98 cf
|
||||
T=TRI, E=0, I=0, S=354, L=734, P=3000, Y=0, Z=356
|
||||
T=TRI, E=0, I=0, S=354, L=734, P=3000, Y=0, Z=708
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
[0] Sync 9
|
||||
T=SYN, E=0, I=14916, S(lo)=356, L(lo)=356, S(hi)=364, L(hi)=364, P=3724, U=3000, V=3000, Y=0, Z=348
|
||||
[1] Received 55 bits: 50 8f 1a 30 08 98 cf
|
||||
T=TRI, E=0, I=0, S=360, L=734, P=3000, Y=0, Z=344
|
||||
T=TRI, E=0, I=0, S=360, L=734, P=3000, Y=0, Z=708
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
[0] Sync 9
|
||||
T=SYN, E=0, I=14916, S(lo)=356, L(lo)=356, S(hi)=364, L(hi)=364, P=3724, U=3000, V=3000, Y=0, Z=340
|
||||
[1] Received 55 bits: 50 8f 1a 30 08 98 cf
|
||||
T=TRI, E=0, I=0, S=360, L=734, P=3000, Y=0, Z=356
|
||||
T=TRI, E=0, I=0, S=360, L=734, P=3000, Y=0, Z=708
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
[0] Sync 10
|
||||
T=SYN, E=0, I=14916, S(lo)=356, L(lo)=356, S(hi)=364, L(hi)=364, P=3724, U=1200, V=1200, Y=0, Z=348
|
||||
[1] Received 55 bits: 50 8f 1a 30 08 98 cf
|
||||
T=TRI, E=0, I=0, S=360, L=734, P=3000, Y=0, Z=344
|
||||
T=TRI, E=0, I=0, S=360, L=734, P=3000, Y=0, Z=708
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
[0] Sync 10
|
||||
T=SYN, E=0, I=14916, S(lo)=356, L(lo)=356, S(hi)=364, L(hi)=364, P=3724, U=1200, V=1200, Y=0, Z=340
|
||||
[1] Received 55 bits: 50 8f 1a 30 08 98 cf
|
||||
T=TRI, E=0, I=0, S=360, L=734, P=3000, Y=0, Z=356
|
||||
T=TRI, E=0, I=0, S=360, L=734, P=3000, Y=0, Z=708
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
name=RF433any
|
||||
version=0.7.2
|
||||
version=0.7.3
|
||||
author=Sébastien Millet
|
||||
maintainer=Sébastien Millet <milletseb@laposte.net>
|
||||
sentence=A library to decode any protocol received on a 433 Mhz Radio Frequencies receiver
|
||||
paragraph=Use this library to decode any protocol received on a 433 Mhz Radio Frequencies receiver. Allow to display low level data (raw code), user level data (code received) and code timings. No pre-defined timings to specify, the library detects it.
|
||||
paragraph=Use this library to decode any protocol received on a 433 Mhz Radio Frequencies receiver. Allow to display low level data (raw code), user level data (code received) and code timings. No pre-defined timings to specify, the library detects it. You can also use its output to use RF433recv library.
|
||||
category=Communication
|
||||
url=https://github.com/sebmillet/RF433any
|
||||
architectures=avr
|
||||
|
|
Loading…
Reference in New Issue