Librería virtualwire para arduino y alternativas

13/02/2019

VirtualWire es una librería para Arduino y otras plataformas que permite enviar mensajes cortos de forma inalámbrica, similar a UDP, utilizando ASK (Amplitude Shift Keying). Aunque popular en el pasado, es importante destacar que VirtualWire está en desuso y se recomienda usar alternativas más modernas.

Temario

Características de VirtualWire

Antes de explorar las alternativas, revisemos las características que ofrecía VirtualWire :

  • Mensajes cortos sin direccionamiento, retransmisión o acuse de recibo.
  • Compatible con varios transmisores y receptores de radio económicos.
  • Utiliza codificación de 4 a 6 bits para un buen balance de CC y una suma de verificación CRC para la integridad del mensaje.
  • No utiliza el UART de Arduino.
  • Soporta diversas conexiones analógicas, no solo radios de datos.
  • Se diseñó para ser compatible con el protocolo Virtual Wire de RF Monolithics, aunque no se probó exhaustivamente.

Por qué no usar UART directamente?

VirtualWire se diseñó para superar las limitaciones de usar UART directamente con transmisores/receptores ASK. Los receptores ASK necesitan pulsos de entrenamiento para sincronizar el transmisor y el receptor, y un buen balance entre 0s y 1s para mantener el balance de CC. Los UART no ofrecen esto.

Hardware compatible con VirtualWire

VirtualWire era compatible con una variedad de hardware, incluyendo:

  • Receptores: RX-B1 (4392MHz) (también conocido como ST-RX04-ASK)
  • Transmisores: TX-C1 (4392MHz)
  • Transceptores: DR3100 (4392MHz)

También funcionaba en diversas plataformas como Arduino, Maple, Teensy, y ATtiny85, mostrando su versatilidad.

Instalación de VirtualWire (en desuso)

La instalación de VirtualWire implicaba descomprimir la librería en la subcarpeta 'libraries' de la aplicación Arduino. Aunque la instalación ya no es relevante debido a su obsolescencia, se mantiene la información para fines históricos.

Limitaciones y Problemas de VirtualWire

Si bien VirtualWire era funcional, presentaba limitaciones:

  • Obsolescencia: La librería no se mantiene ni actualiza. Esto implica falta de soporte, posibles bugs sin corregir, y vulnerabilidades de seguridad.
  • Falta de características avanzadas: Carecía de funcionalidades presentes en librerías más modernas como datagramas confiables, direccionamiento, enrutamiento y mallas.
  • Dependencia del hardware: La compatibilidad se limitaba al hardware específico mencionado anteriormente.

Alternativa Recomendada: RadioHead

La alternativa recomendada para VirtualWire es la librería RadioHead. RadioHead supera las limitaciones de VirtualWire al ofrecer:

  • Datagramas confiables
  • Direccionamiento de nodos
  • Enrutamiento
  • Mallas inalámbricas
  • Mayor compatibilidad con hardware
  • Soporte y mantenimiento activo

RadioHead es una opción superior, ofreciendo una solución más robusta y completa para las comunicaciones inalámbricas en Arduino. Su uso se recomienda encarecidamente sobre VirtualWire.

libreria virtual wire arduino - What is the alternative Wire library in Arduino

Tabla Comparativa: VirtualWire vs RadioHead

Característica VirtualWire RadioHead
Mantenimiento En desuso Activo
Datagramas Confiables No
Direccionamiento No
Enrutamiento No
Mallas No
Funcionalidad Limitada Avanzada

Consultas Habituales sobre Librerías Inalámbricas

A continuación, se responden algunas de las preguntas más comunes sobre librerías inalámbricas para Arduino:

  • ¿Cuál es la mejor librería inalámbrica para Arduino? La respuesta depende de tus necesidades. Si necesitas funcionalidades básicas y simples, y no te importa la obsolescencia, podrías considerar (con cautela) VirtualWire . Sin embargo, RadioHead es la opción superior en casi todos los casos por su mantenimiento activo y sus características avanzadas.
  • ¿Cómo elegir la librería adecuada? Considera las características que necesitas (direccionamiento, confiabilidad, alcance, etc.) y la compatibilidad con tu hardware. Revisa la documentación de cada librería antes de tomar una decisión.
  • ¿Qué sucede si encuentro un problema con RadioHead? Como es una librería mantenida activamente, es probable que encuentres soporte en foros y comunidades online. La documentación también suele ser extensa y bien detallada.

Aunque VirtualWire fue una librería útil en su tiempo, su obsolescencia hace que RadioHead sea la mejor opción para proyectos actuales. RadioHead proporciona funcionalidades superiores, soporte activo y una experiencia de desarrollo más robusta y fiable.

libreria virtual wire arduino - How to install virtual Wire in Arduino IDE

Consideraciones Adicionales

Recuerda que la elección de la librería inalámbrica correcta depende en gran medida de las especificaciones de tu proyecto. Aspectos como el alcance requerido, la tasa de datos, el consumo de energía y la complejidad del sistema influyen directamente en la decisión final. Siempre es recomendable investigar las diferentes opciones disponibles y comparar sus características antes de seleccionar una librería para tu proyecto.

Si quieres conocer otros artículos parecidos a Librería virtualwire para arduino y alternativas puedes visitar la categoría Libros y Librerías.

Subir