Páginas

Modulo Bluetooth para SynScan

La información aquí contenida es un proyecto personal, se ofrece de forma gratuita y sin ningún tipo de garantías, su utilización así como cualquier daño que se pueda causar derivada de ella queda bajo tu entera responsabilidad.

Actualizado: 19/Jun/2019


Aquí recojo el log para la construcción de un módulo bluetooth que permite sustituir el cable de comunicación del mando SynScan v4 de SkyWatcher por una conexión inalámbrica, de esta manera es posible conectarlo a dispositivos móviles, sin necesidad de cables ni drivers adicionales.

A fecha de hoy, IOs no soporta el protocolo bluetooth SPP (puerto serie virtual sobre bluetooth), por lo que olvídate de conectar tu Iphone con cualquier dispositivo que lo utilice (deberás buscar alguna solución wifi equivalente).
Si te interesan los comandos soportados por el mando SynScan, SkyWatcher los detalla en su web.

En el caso del SynScan v4, este incorpora una salida RS232C a través de un conector RJ12. Esta salida ademas de los pines típicos para este tipo de comunicaciones (TX/RX/GND), posee otro pin que se puede utilizar para alimentar el módulo, por lo que se hace innecesario una alimentación externa como en el caso de otras marcas.




Componentes utilizados: 

Módulo bluetooth HC05:




Conversor de niveles RS232C-TTL tipo MAX3232:



Módulo regulador a 3.3v para la alimentación del circuito:

EDITO: 25/Ene/2018: Tras muchas pruebas con distintos reguladores en formato "mini" recomiendo utilizar un módulo basado en el chip MP1584 en lugar de este. Trabajará con más margen, soportando hasta 28v de entrada y consumirá un poco menos. Estos módulos hay que ajustarlos a 3.8v de salida con un pequeño potenciómetro tipo "trim" que incorporan y fijarlo con una gota de pegamento caliente una vez ajustado.
Si lo compras por tiendas tipo Ebay, Aliexpress.... es imperativo comprobar que el regulador mantiene los 3.8v a su salida incluso variando la tensión de entrada entre 8 y 25v. En caso contrario desecharlo directamente.
Me he encontrado bastantes unidades de distintos tipos de módulos que vienen defectuosos debido a la falta de control de calidad.





Cable RJ12 6P6C:


*Nota aclaratoria: El cable RJ12 (6P6C) utiliza el mismo conector físico que el RJ11 (típico cable telefónico) la diferencia radica en que en el RJ12 están los 6 pines del conector crimpados mientras que en el RJ11 solo hay 4 (6P4C).

Módulo FTDI a 3.3v o similar:

*Esta placa es utilizada únicamente para configurar el módulo bluetooth a través del PC, una vez configurado puedes guardarla para futuros proyectos.


Configuración del módulo bluetooth:


Estos modulos son bastante populares entre los aficionados a la electronica DIY. Son baratos, polivalentes y sencillos de utilizar.
Para configurarlos se necesita conectarlos al PC a través de algún interface tipo FTDI o similar con niveles TTL a 3.3v.
Si no estas familiarizado con este tipo de módulos, te recomiendo que busques info acerca del mismo. Para no hacer muy extensa esta entrada me centrare únicamente en los seteos necesarios y dejare su funcionamiento para que lo estudies, ya que existe bastante info del mismo por la red.

Básicamente tendremos que configurarlo vía comandos AT de la siguiente manera:
Activar el modo configuración del módulo, para ello hay que darle alimentación con el pulsador de MODE accionado, ten en cuenta que algunos módulos pueden venir sin este pulsador y en su lugar tendrás que poner a 3.3v el pin correspondiente (en algunos viene marcado como EN, PIN34 o PIO11). Una vez alimentado podremos dejar de accionar el pulsador.
De esta forma el módulo entra en modo configuración y podremos conectarnos a el mediante el cable FTDI y un programa tipo terminal de puerto serie. En el modo configuración el módulo siempre se comunicará a 38400 baudios, 1 bit de stop, sin paridad.

A continuación hay que enviarle los siguientes comandos:

AT
AT+ORGL
AT+NAME=SynScan_BT
AT+PSWD=6789
AT+UART=9600,1,0

AT+IPSCAN=1024,1,1024,1 (opcional)

AT: Este comando nos sirve para comprobar que la comunicación con el módulo es correcta. Debería responder OK, en caso contrario revisa el conexionado y/o la configuración del puerto antes de continuar.

AT+ORGL: Restablece la configuración por defecto del módulo. Habitualmente lo setea como esclavo, a 38400 baudios, 8 bits de datos, 1 bit de stop, sin paridad, código pin de emparejamiento 1234.

AT+NAME=SynScan_BT: Este comando establece el nombre con el que se vera el módulo a la hora de emparejarlo, en este caso SynScan_BT.

AT+PSWD=6789: Si el pin de emparejamiento por defecto (1234) no te gusta, puedes cambiarlo con este comando. Para el ejemplo se establece el pin 6789. Si deseas 1234 no es necesario enviar el comando.

AT+UART=9600,1,0: Establece las características de la comunicación, en nuestro caso para el mando SynScan debe ser de 9600 baudios, 1 bit de stop, sin paridad.

AT+IPSCAN=1024,1,1024,1: Esto hace que el módulo consuma un poco menos durante el reposo. No es necesario, pero así contribuiremos a que el pequeño regulador trabaje menos cargado. EDITO: 25/Ene/2018: No es necesario con el MP1584. Omitir en este caso.

Si quieres comprobar la configuración envía los siguientes comandos:

AT+PSWD?
responderá con la clave que has introducido 6789 en el ejemplo o 1234 si la has dejado por defecto.

AT+UART?
responderá con la coinfiguración de la UART que has indicado 9600,1,0

AT+NAME?
ojo, esto es considerado un comando "extendido" y sólo responderá "SynScan_BT" si mantienes accionado el pulsador de modo programación mientras envías el comando (al mantener este pulsador accionado funcionamos en modo comandos extendidos), en caso contrario no responderá.

Esquema de conexionado:

IMPORTANTE:
-Comprueba antes de hacer las conexiones que el regulador funciona correctamente, como se ha indicado anteriormente.

-No te fíes nunca del color de los cables del conector RJ12, comprueba la posición de los mismos guiándote del esquema de abajo (numeración de pines), no todo el mundo sigue el mismo "standard", incluso cables comprados conjuntamente me han venido con los mismos colores pero crimpados al contrario.





Un poco de pegamento caliente ayuda a sujetar cada placa en su sitio y a reforzar los puntos de soldadura.



Aplicaciones:

Cualquier aplicación compatible con el mando mediante cable debería funcionar también por bluetooth.

Personalmente para Android utilizo la aplicación de pago SkySafari en sus versiones Plus o Pro.

Encapsular el circuito:

Puedes encapsular el circuito con termo-retráctil o cualquier caja pequeña que tengas.
Si dispones de impresora 3D puedes imprimitr esta caja.














*Este circuito podria integrarse dentro del propio mando. Sin necesidad de tenerlo por fuera. Si eres osado y/o ya no tienes garantia en tu mando puedes interntarlo. Probablemente sea posible incluso eliminar el Max3232 y/o el modulo de alimentacion y conectarlo directamente a la logica TTL del micro procesador del mando. 
Yo, de momento permanezco en garantia y la verdad, el modulo es bastante compacto por lo que no me molesta utilizarlo de forma externa.



Tips:

-Scope Friend: App Android gratuita disponible en Google Play para setear los datos de hora y ubicación automáticamente. Se puede utilizar en cualquier momento, incluso justo después de dar alimentación al mando. Reescribirá los datos actuales de hora y ubicación de mismo.
Nota: A fecha de hoy SynScan no ha implementado ningún comando para setear la altura de observación, por lo que este dato será siempre el último introducido manualmente y deberemos corregirlo en caso necesario. Lo mismo ocurre con el el dato de DayLight Saving.

-SkySafari 5: App Android de pago en sus versiones Plus o Pro, que son las que permiten conectarse al telescopio.
Nota: Una vez sincronizado el modulo bluetooth con Android, desconectarlo y volverlo a conectar para que salga del modo emparejamiento.
En SkySafai ir a Settings/Telescope/Setup y picar 2 veces en "Connect via Bluetooth". Aparecerá un "menú oculto" que nos permite seleccionar el dispositivo al que conectarnos directamente (dar solo un toque en "SynScan_BT" y esperar unos segundos, luego volver atrás), esto hará que la conexión cuando le demos al botón "Connect"sea instantánea en lugar de probar uno a uno todos los dispositivos bluetooth emparejados hasta dar con SynScan.

-En Windows10: Tras emparejar el nuevo dispositivo Bluetooth ir a la configuración de Bluetooth/Más opciones de Bluetooth/Puertos COM y mirar la fila donde tengamos un puerto "Saliente" llamado SynScan_BT. Ese es el puerto que deberemos usar para conectarnos desde el PC.

-El módulo Bluetooth incorpora un LED de estado que nos permite saber si estamos conectados o no a él. En los últimos modelos el destello rápido constante indica "sin conexión" y dos destellos intermitentes indica que "estamos conectados".




12 comentarios:

  1. Te consulto una duda. He fabricado dos módulos bluetooth con tus magníficas y claras instrucciones. El caso es que las he probado y funcionan bien, pero me ha pasado en un par de ocasiones que al rato de estar funcionando se pierde la conexión y ya es imposible recuperarla, hasta que no apago todo y espero un ratito. Me ha pasado en ambos módulos.

    La cosa es que lo he metido dentro del mando muy bien aislado para que no haya problemas de cortocircuitos, pero noto a través del plástico del mando que el circuito se calienta, supongo que por el regulador de voltaje. ¿Puede ser debido a ese calentamiento?

    Saludos,

    Andrés

    ResponderEliminar
  2. Hola Andrés. En mi caso no he tenido problemas de cuelgues como comentas, si bien, es cierto que el regulador es pequeño y no tiene mucha capacidad para disipar el calor.

    Deberias aislar el problema para ver si realmente viene por calentamiento del regulador.

    Antes que nada comprueba en las opciones de energía de tu teléfono que no se esté desactivando el bluetooth ni cerrando la aplicación al dejarla un tiempo inactiva o en segundo plano (me ha ocurrido).

    Te dejo algunos tips para bajar la potencia disipada en el regulador y por tanto la temperatura, obviamente lo mejor que puedes hacer es utilizar otro modelo que disipe mejor y probar, preferiblemente a 3.6v en vez 3.3v:

    -Bajar la tensión de alimentación, por ejemplo colocando uno o varios diodos en serie a la entrada del regulador (personalmente alimento el equipo directamente con una lipo 3s).

    -Montar el regulador expuesto al aire en la medida de lo posible ayudara a refrigerarlo.

    -Tal como viene el módulo, el consumo es mayor cuando no está conectado que cuando lo está por lo que se calentará mas al estar inactivo. Puedes probar este comando para reducir el consumo del mismo AT+IPSCAN=1024,1,1024,1

    -Aunque nunca he tenido problemas con esto, en realidad estamos haciendo funcionar al módulo con una tensión por debajo de la indicada en su datasheet (unos 2.8v), ya que pese alimentar a 3.3v, la tensión cae un poco al pasar por el diodo de proteccion que suelen traer estos módulos.Si puenteamos ese diodo ya estaremos dentro de las recomendaciones.

    -Lo que comentas sólo me ha ocurrido con otro proyecto y le eché la culpa a un cruce de las líneas tx/rx. Fue en una emisora Turnigy a la que le metí uno de estos módulos dentro, a veces al desconectarme tenia que apagar y encender el modulo para volver a conectar.

    -Por cierto, como van esas carreras de drones XD XD XD... Si necesitas la carcasa impresa para el módulo solo tienes que pasar a recogerla, ya sabes donde vivo XD XD XD, Saludos amigo!

    ResponderEliminar
  3. I can not find the regulator at 3.3V. Can you please link (Ebay, Aliexpress, Amazon, etc.)

    Thank you.

    Thomas

    ResponderEliminar
    Respuestas
    1. Este comentario ha sido eliminado por el autor.

      Eliminar
    2. Hi Tomas, i have several issues with these regulators some ones claim input voltages up to 14v and some others up to 7v. I burned several BT modules for this reason so i updated the regulator and actually i'm using MP2307 based regulators adjusted at 3.7v output.
      For example these ones:

      https://www.ebay.es/itm/2PCS-Supper-mini-3A-DC-DC-Converter-Step-Down-buck-Power-Supply-Module-3V-5V-16V/263208250176?hash=item3d486f2b40:g:C8YAAOSw~V9Zu24G

      Make sure regulator is working ok and adjusted at 3.7v before conecting the output.

      Eliminar
  4. Hola Andres. Sensacional el trabajo que has realizado. En cuanto al comentario . "Probablemente sea posible incluso eliminar el Max3232 y/o el modulo de alimentacion y conectarlo directamente a la logica TTL del micro procesador del mando" lo has llegado a realizar?, y si es así, desde donde has ido sacando las diferentes conexiones?,
    Muchas gracias

    ResponderEliminar
  5. Hola, no he llegado a investigarlo, pues de forma externa queda compacto y efectivo.

    Si lo haces, es probable que debas modificar o desconectar el modulo para evitar que interfiera cuando actualices firmware por cable (creo que actualiza a distinta velocidad de comunicacion).

    Por cierto soy Adrian, no Andrés. Un saludo

    ResponderEliminar
    Respuestas
    1. Perdon por Andres... ok. Entonces perfecto. Tal como esta ahora mismo va de lujo. Gracias

      Eliminar
  6. Buenas noches.
    Primero gracias por un circuito que puede ser muy util y encima me da una oportunidad de hacer algo con mis propias manos.
    Las instrucciones son claras, solo me costo mas programar el modulo... SI finalmente me acaba funcionando me animo y escribo una miniguia para esa parte, que puede ser util a gente poco familiarizada con ese tema como yo...
    He construido el circuito como indicas. El modulo BT fue dando ok a todos los comandos, y de hecho el telefono encuentra el modulo bT y se conecta a el, pero skysafari dice "el telescopio se ha conectado pero no responde a los comandos" Que puede estar mal?
    Un par de detalles que puedo haber hecho mal:
    EN el modulo max3232 he usado las 2 entradas que tiene de alimentacion (una en el lado RS y otra en el TTL) para poder hacer todos los contactos entre cosas punto a punto. De un par de ellos va al modulo de alimentacion y del otro al HC05. Supongo que por eso no hay problema, he comprobado que hay continuidad entre esas 2 entradas.
    Por otro lado no se si entiendo lo de una vez conectado al modulo BT desconectar y volver a conectar... si hago eso el modulo pierde la alimentacion y se desconecta del telefono,no? Cuando se queda parpadeando despacio es que se ha conectado y ya esta, ya deberia funcionar, no?
    Gracias por adelantado, me meto sin saber en unos lios que no veas :)

    ResponderEliminar
  7. Por cierto, olvidaba decir que lo heprobado en una HEQ5 pro, con el dispositivo conectado a la entrada auxiliar del mando y este en modo "PC direct"... supongo que es como debe ser

    ResponderEliminar
    Respuestas
    1. Hola Juanglez debes conectarte en modo normal tras alimentar la montura, sin activar el PC direct. Los parpadeos dependen del firmware del módulo. Si cambia el parpadeo es que estas conectado. Los ultimos que compré al conectarse emitisn dos destellos rapidos y una pausa creo recordar. Un saludo

      Eliminar
  8. El modulo lo he conectado a la entrada del mando (la misma a la que conecto el cable serie para hacerlo desde el PC), y ahora sin entrar en el modo PC Direct, pero sigue sin funcionarme.
    Aparece el BT y se conecta a el, pero algo falla despues. Scope Friend, por ejemplo, dice "conectado" pero a los pocos segundos se desconecta solo... Sky safari tambien se conecta (el parpadeo del BT lo muestra) pero inmediatamente sale un aviso que dice que aunque se conecta al teles, este no responde a los comandos, que revise la config del teles, pero lo tengo en "skywatcher synscan" y el tipo de "soporte"lo he puesto en "pulsar para ecuatorial" aunque no se la diferencia que habra con "ir a ecuatorial horquilla " y "ir a ecuatorial aleman"...
    Otra cosa que no entiendo es lo de "Una vez sincronizado el modulo bluetooth con Android, desconectarlo y volverlo a conectar para que salga del modo emparejamiento." porque si lo desenchufo obviamente se desconecta... como va a funcionar despues si no es porque lo vuelvo a emparejar?

    Por cierto, aunque el regulador se traga el exceso desde 3.7V hasta los 12 de la montura, pense que el sistema no consumiria mucho con lo que no se calentaria demasiado, pero ayer me di cuenta de que no, que se pone ardiendo. Es esto normal? Estoy pensando en colocarle una pila, aunque abulte mas...

    De nuevo, gracias por compartir el diseño y por la ayuda.
    Un saludo

    ResponderEliminar