Tengo este control remoto y transmisor y quiero aplicar ingeniería inversa a las 2 señales de RF enviadas por el transmisor. Este es el tablero .
El tablero dice "ak-rk01se". También puedo abrir el transmisor y ver que tiene un chip PT2264 .
A mi disposición también hay un dispositivo de radioaficionado pirateado DVB-T. para que pueda ver todos los datos que salen de 315MHz.
Aquí hay un ejemplo de grabación del botón grande con demodulación AM. ¿
Alguien sabe cómo abordar esto?
Actualización, así es como se ve cuando lo importo y ejecuto una señal de normalización en audacia. La misma onda cuadrada se repite una y otra vez.
La pregunta sigue siendo: ¿Cómo uso un transmisor de señal de RF para imitar esta señal? Tengo una raspberry pi y puedo conseguir un transmisor de RF.
¿Qué tal hacer algo simple: simplemente conecte un PT2264 a la Raspberry PI! No tiene sentido reinventar la rueda.
Parece un chip relativamente económico y hace toda la modulación adecuada que desea. Todo lo que necesita hacer es averiguar exactamente cuál es la frecuencia de la portadora y conectar las cosas de manera adecuada.
He hecho exactamente esto con un dispositivo similar. De hecho, estoy trabajando en una publicación de blog sobre ingeniería inversa, pero lamentablemente está baja en mi lista de prioridades y la lista es larga. :-(
Todos estos son parte de un grupo muy simple de transmisores y receptores de radio. No tienen ninguna inteligencia en ellos, por lo que no puede simplemente conectar un pin de transmisión UART o un pin de recepción y esperar que las cosas funcionen. Depende de usted enviar un flujo de datos bien formateado que permita al receptor mantener el bloqueo. Los métodos populares implican la codificación de bits en forma de Manchester o la utilización de codificación de restricción de longitud de ejecución, como 8b10b.
Parece que su sistema en particular está transmitiendo de manera similar al mío; un tiempo de bit constante y un '1' largo o un pulso '1' corto para indicar los dos niveles lógicos. Esta es una implementación de codificación de encendido y apagado muy simple y es bastante fácil de crear y decodificar con cualquier microcontrolador. Es más simple que la codificación de Manchester o los códigos de expansión como 8b10b, pero paga por ello con un ancho de banda disponible reducido. Por lo general, esto no es un problema para este tipo de sistemas, ya que no está tratando de maximizar la transmisión de datos a través del canal.
La implementación de mi receptor particular utiliza un periférico Timer1 de AT90CAN128 configurado en modo de captura. Configuré un temporizador de ejecución libre 64us y luego, cada vez que la línea de recepción cambia de estado, el periférico del temporizador captura el valor del temporizador y señala una interrupción. A partir de ahí, solo miro para ver cuánto dura el tiempo 'alto' calculando el delta en los valores del temporizador y si está por encima de un umbral, es un 1, de lo contrario, es un cero (y si es demasiado corto lo considero ruido y lo ignoro) . Reúno estos bits cambiándolos a una variable y cuando he reunido suficientes, envío el valor de 32 bits a un pequeño software FIFO y le señalo a mi rutina principal que hay datos para procesar.
Para transmitir puedes hacer algo similar. Configure un temporizador con una tasa de tic que sea "agradable" para su aplicación en particular. (En la imagen, parece que unos 500 us son buenos, ya que el tiempo de bit parece ser de unos 2 ms y el ancho del "pulso corto" es de unos 500 us). Desea un tiempo de bits constante, por lo que debe transmitir uno de dos estados: alto durante 1,5 ms/bajo durante 0,5 ms o alto durante 0,5 ms/bajo durante 1,5 ms. Puede hacer esto con desbordamientos del temporizador o ir un poco más elegante y configurar el temporizador para establecer/borrar automáticamente el pin según el valor, si el periférico lo permite. Probablemente también pueda salirse con la suya abusando de la función PWM. Para simplificar, me aseguraría de que puedas dormir con precisión durante unos 500 us y simplemente explotarlo un poco. Haz que funcione, luego ponte elegante.
De todos modos, ahora a la ingeniería inversa. Recuerde que dije que estas radios son muy baratas y sencillas. Puede ver en el gráfico que hay una secuencia constante de 16 bits: 0101010101010101; esto es para permitir que el receptor se fije en la señal. Después de eso, parece que la presión real del botón probablemente envía el valor de 8 bits 00001101. Queda un bit 0, que posiblemente sea paridad o simplemente se use como un bit de parada. Podrás ver lo que está pasando si presionas otros botones. En mi particular aventura de ingeniería inversa para estos transmisores, realicé la ingeniería inversa del protocolo utilizado para transmitir la temperatura y la humedad. Supuse correctamente en el estado 1 y 0 (podría haberse invertido) y supuse incorrectamente en el orden de bits (era LSB, supuse que MSB). También hubo una "batería baja"
Recrear la transmisión es solo una cuestión de enviar los valores que ha realizado ingeniería inversa al módulo de radio "en bruto" utilizando uno de los métodos que describí anteriormente. Alimentas esos valores al módulo transmisor y ¡voilà!
Bien, hagámoslo bien. ¿Ha demodulado con éxito sus datos digitales y ahora desea poder recrear estos datos con precisión con una raspberry pi y acoplar ese flujo de datos digitales a un transmisor AM de 315 MHz?
¿Hasta ahora?
Para que esto funcione, debe estar seguro de la modulación de transmisión utilizada en el transmisor original; si es simple ASK (modulación por cambio de amplitud), entonces tiene una buena posibilidad de que funcione, pero debe ser preciso con la frecuencia de transmisión de su portadora o Es posible que su receptor no capte nada en absoluto. Debe solicitar el uso de un analizador de espectro para verificar la frecuencia precisa a la que transmite. Oye, puedes tener suerte, pero en mi experiencia probablemente no.
Si se trata de una forma más compleja de transmisión de AM, como portadora suprimida, entonces tiene pocas posibilidades de encontrar un transmisor estándar que haga el trabajo.
AndrejaKo
chicosoft
AndrejaKo
chicosoft
Andy alias
AndrejaKo
chicosoft
chicosoft
AndrejaKo
chicosoft
AndrejaKo
extra one
al artículo que vinculó, no creo que sea un error. El artículo, por lo que puedo ver, no menciona que el transmisor usa PT2264, por lo que asumí que está usando otro circuito integrado. Dado el precio del módulo que vinculas, si yo estuviera en tu lugar, lo compraría y experimentaría. No hay mucha información sobre el módulo que vinculó en el comentario y el módulo que vinculó en cuestión, por lo que no veo una manera simple de decidir si funcionarán bien juntos hasta que lo intente.