Enlace de telemetría Bluetooth

Este enlace serie Bluetooth no es nada nuevo. Lo tenía trabajando en la configuración existente para enviar datos de la tarjeta de control ReactorForge al programa de visualización de procesamiento. El módulo Bluetooth HC-06 me permitió ver la telemetría en directo proveniente del ReactorForge. Esto le ayuda a entender lo que está sucediendo y a ajustar parámetros como los ajustes de PID.

Consolidación del proceso de desarrollo

Estoy emocionado de obtener todo el proceso de desarrollo en un solo sistema operativo. Antes, estaba rebotando entre MacOS, Windows en VMware Fusion en el Mac, y una máquina separada de Windows. Es una larga historia, pero esto se debió en parte al compilador sólo para Windows que usé en ese momento. Otros atajos que hice temprano en el proceso sólo para conseguir las cosas trabajando lo suficiente para conseguir el calentador de inducción a la tienda de Daniel también me ayudó a poner en ese lugar.

Problemas de conexión al módulo Bluetooth HC-06 en Mac

Conseguir que el módulo de Bluetooth HC-06 en serie funcione en MacOS no fue difícil, pero tuve un problema. El HC-06 parecía simplemente desconectar al azar después de un minuto o dos de estar conectado. Luego, cuando intentaba volver a conectar con él, el puerto estaría ocupado. Sabía que no estaba ocupado o abierto usando lsof | grep HC-06 o lo que sea su nombre, reactor-Link en mi caso.

Disparé Windows en VMware Fusion y emparejé el módulo Bluetooth HC-06. Entonces abrí una conexión con él usando un programa de terminal. También comencé una sesión de pantalla (terminal) en el lado de Mac con un adaptador USB a serie. El adaptador USB serie se conectó al módulo Bluetooth HC-06 para monitorizarlo (y enviar datos de él).

De todos modos, esto funcionó bien, y el módulo de HC-06 Bluetooth nunca perdió la conexión en el lado de Windows. Me he dado cuenta de que en el lado de Windows, el módulo de HC-06 Bluetooth me pidió que me pidió el número de PIN durante el proceso de emparejamiento, pero no pidió en el lado de Mac. He eliminado el dispositivo en el lado de Mac en el administrador de Bluetooth y re-emparejado. Para mi molestia y alivio, esto fijó el problema de la desconexión. Tal vez cambié el PIN en el pasado desde la última vez que se había conectado al Mac.

Bluetooth en MacOS

Así que esta es la configuración de prueba simple. Las fotos lo dicen todo, creo.

Telemetría Bluetooth

Telemetría Bluetooth

Bluetooth HC-06. pdf

Bibliotecas, drivers, etc.

Con ese trabajo, voy a trabajar en las bibliotecas ahora. Estoy viendo si las bibliotecas existentes funcionan o no en el nuevo entorno o si se utilizan nuevas bibliotecas.  Estoy inclinado hacia nuevas bibliotecas porque hay bastantes advertencias del recopilador e incluso algunos errores de los viejos. Tendré que actualizar los nombres de las funciones y el código de configuración, pero preferiría empezar con algo más limpio y actualizado. ¡ Estoy empujando todo a GitHub mientras voy!

Jerga terminal de la adición

El lector astuto podría notar que estoy utilizando la versión/dev/TTY. * del dispositivo en lugar de la versión de/dev/cu. *. Entonces, ¿cuál es la diferencia? Los dispositivos TTY son para llamar a sistemas UNIX, mientras que los dispositivos Cu (call-up) son para llamar desde ellos (por ejemplo, módems). Queremos llamar, así que/dev/cu. * es el dispositivo correcto para usar.

La diferencia técnica es que los dispositivos/dev/TTY. * esperarán (o escucharán) para DCD (Data-Carrier-detect), por ejemplo, alguien que llame, antes de responder. los dispositivos/dev/cu. * no afirman DCD, por lo que siempre se conectarán (responderán o tendrán éxito) inmediatamente. Dado que ni el módulo Bluetooth HC-06 ni el adaptador USB a serie admiten DCD, no es un problema. Sin embargo, siguiendo las mejores prácticas, debe utilizar el puerto correcto.

Entonces, ¿por qué he usado el incorrecto en las fotos? Cambié a/dev/TTY. * cuando estaba teniendo el problema de conexión y simplemente se olvidó de cambiar de nuevo antes de documentarlo.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *

This site uses Akismet to reduce spam. Learn how your comment data is processed.