Tengo un termómetro inalámbrico de piscina económico (AcuRite 617 1 ) y me gustaría interceptar los datos de temperatura en el receptor y usarlos con un sistema de registro de datos computarizado.
Convenientemente, dentro del receptor hay una pequeña placa de conexión que está conectada a la antena y tiene pines digitales "V", "G", "D" y "SH":
Aquí hay un segmento de datos capturados del pin "D" durante una transmisión (estos ocurren una vez por minuto). Antes de este segmento, hay lo que parece ser una tasa de datos mucho más alta, pero creo que podría ser ruido: este es el comienzo de los datos de 1.36kHz / 680Hz.
Busqué en Google un poco y no puedo encontrar una codificación que se parezca a esto, pero si tuviera que adivinar qué está pasando, esto es lo que estoy pensando:
- los 4 ciclos iniciales de 680 Hz son para sincronizar los relojes pero no contienen datos
- Los 13 ciclos de 1.36 kHz (2 veces la velocidad inicial) que siguen parecen tener una de dos formas: caen bajos antes del punto medio del ciclo o después de él; supongo que una forma es lógica y la otra es un cero
- después de eso, parece haber una brecha extraña, pero si descontas la parte del mínimo que forma parte del "1" anterior, entonces la brecha restante es de 735 µs, que es una continuación (¡fase correcta!) Preámbulo de 680 Hz.
¿Estoy mirando esto correctamente? ¿Hay un nombre para esta codificación?
Algunas notas adicionales sobre el tablero de trabajo:
- la placa está marcada como "RF211" y se ve notablemente consistente con el receptor QwikRadio 3V de propósito general MICRF211 "que opera a 433.92MHz" 3
- la hoja de datos MICRF211 tiene la siguiente figura (con muy poca explicación), que se ve tentadoramente como lo que estoy viendo, excepto por la onda cuadrada de doble tasa de datos en comparación con mi captura:
Actualización del 14/02/2016: He revisado este proyecto y parece que estoy obteniendo un flujo limpio de 64 bits entre un preámbulo de 4 ciclos y un "postamble" de 1 ciclo, después de lo cual la pantalla apaga el módulo RF tirando ^ SH bajo (línea superior):
Según el esquema "33/66% PWM" de Micrel (que no aparece en ningún otro lugar en Google), eso es
-_-_-_-_0000011110011000110000000000000000000000100011101000010010101010-_
Así que ahora tengo que comenzar a manipular la temperatura para decodificar los bits. Aquí ("x") están los bits que parecen cambiar sin ningún cambio aparente en la pantalla:
0000011110011000110000000000000000000000100011101000010010101010
------------------------------------------------x----xxxx----xxx
Supongo que estos son bits menos significativos o nivel de batería (que solo se muestra como "Bajo" cuando cae significativamente).
Actualización del 15/02/2016: Estoy tomando el show en el camino para darle una nueva oportunidad al nuevo intercambio de "Ingeniería inversa" al determinar el significado: /reverseengineering/12048/what-is-contained -en-esta-transmisión-rf-piscina-sensor-temperatura-base-unidad-re