¿Cómo podría transferir datos a través de una línea de audio?

Me gustaría pasar algunos datos a través de un cable de audio (es decir, desde la tarjeta de audio a mi teléfono celular) con un cable corto.

Estoy buscando algunas ideas de algoritmos para lograr esto. Por supuesto, deben incluir la técnica de modulación adecuada para transferir los datos a través de la señal de audio, de modo que el teléfono celular pueda interpretarlos a través de su conector de micrófono.

¿Ideas? ;)

(PD: mi idea actual es usar el código de marca bifásico. ¿Es bueno para esto?)

Gracias.

Me estoy divirtiendo con esta pregunta, me hace sentir tan viejo. Cuando era niño, las computadoras venían con unidades de casete para almacenar datos en formato de audio. Entonces, sí, es posible transferir datos a través de un cable de audio y, de hecho, fue una de las primeras formas de hacerlo :)

Respuestas (4)

Aquí hay un proyecto de ejemplo que usa FSK: http://sree.cc/electronics/arduino-as-an-fsk-modem

Un módem FSK básicamente convierte una señal digital en una señal analógica o una señal de sonido mediante la técnica de modulación por desplazamiento de frecuencia. Aquí podemos hacer que nuestro Arduino sea un módem FSK cargando un código simple. Este proyecto produce y reproduce un sonido correspondiente a una señal digital y demodula una señal de sonido en la señal digital correspondiente.

¿Puedes darnos más contexto? Estos enlaces por sí mismos no deberían ser una respuesta completa. De hecho, su segundo enlace ya ni siquiera funciona.

Considere usar Baudot (especificación EIA/TIA-825). Es el protocolo utilizado para TDD, una tecnología de módem para usuarios sordos. Transmite a 45,5 bits por segundo y funciona bien en entornos deficientes de acoplamiento de audio.

Lo he visto implementado con un software de análisis de frecuencia simple (muestreo de ventana/filtrado en frecuencias clave). Sé que el proyecto Astrix lo implementa, por lo que puede haber algún código para revisar si no le preocupan las licencias.

Gracias por la gran idea. ¿Conoces algo aún más simple? Necesito transferir entre 4 y 8 bits de datos cada vez, con alguna posible pausa entre ellos. (ráfagas de datos).
@roman: para esa cantidad de datos, simplemente elegiría dos tonos fácilmente distinguibles para reproducir y luego aplicaría un filtro de muesca en cada frecuencia y probaría el nivel de energía. Podrías usar otras dos frecuencias que cambian de un lado a otro y usarlas como un reloj. Una búsqueda rápida debería proporcionarle un filtro de muesca en casi cualquier idioma que desee.

¿ Alguna razón en particular para no usar el módem que probablemente ya esté incluido en su teléfono móvil?

De lo contrario, le sugiero que observe los estándares de módem de baja velocidad utilizados para las líneas terrestres POTS (servicio/sistema de teléfono antiguo) en las décadas de 1980 y 1990. Sospecho que de Bell 103, 212 (300, 1200 bps) a V.32 (9600 bps) debería poder usarse usando la parte de audio que creo que es aproximadamente igual que el estándar de línea terrestre Bell (EE. UU.) de 300 a ~ 3000 Hz ( corregido ) respuesta de frecuencia más/menos problemas de códec de voz digital inalámbrica.

300 bps a través de modulación por desplazamiento de frecuencia de audio de dos tonos (AFSK), V.21 , es bastante fácil de implementar en software o hardware si desea crear el suyo propio. De lo contrario, un módem IC como Silicon Labs SI2401 o CML Microcircuits FX/MX614 o CMX869B . (Hay muchos otros)

He usado 300bps AFSK sobre un par de radios FRS antes. ¡Funciona genial!

Si tiene una cantidad muy pequeña de datos (<= 4 bits), simplemente puede usar DTMF. Fácil de codificar, más fácil de decodificar. funciona muy bien en ambientes ruidosos.

Existe hardware para decodificar DTMF, pero en general no diría que es "fácil" de decodificar. La codificación no es demasiado difícil, pero no es la cosa más fácil del mundo. La decodificación es comparativamente difícil sin hardware especializado.
Dado que el OP está buscando algoritmos para usar en su teléfono, no se necesita hardware especializado. El teléfono ya tiene suficiente poder de cómputo para decodificar DTMF en valores.