¿Estas atascado? ¡Yo te ayudo!, pregunta aquí.

Activar funcion PAN y centrado de camara en Parrot Disco/Bebop (accediendo al sistema de archivos del Skycontroller 2 )

Toda lo relacionado con la electrónica de nuestros cacharros.

Notapor alexiter » Sab Abr 15, 2017 11:49 am

Lo primero aclarar que el merito de este descubrimiento viene del usuario Aragon asiduo del foro http://www.rcgroups.com. El consiguio acceder al sistema de archivos del Skycontroller 2 y no solo eso, tambien encontro el archivo neceserio donde activar la funcion de PAN de la camara del Parrot Disco.

El realizo todo el proceso a traves de Linux, sin embargo en esta plataforma y sobre todo para el usuario medio, resulta complicado el proceso, asi que he buscado la forma de hacerlo a traves de windows de un modo mucho mas simple, ademas este sistema posiblemente sea aplicable a linux para realizarlo tambien de una manera mas simple que del modo original.

Bueno vamos al grano, primero la teoria. La activacion del PAN (u otras funciones como veremos mas adelante), pasa por la edicion y modificacion de un archivo .cfg al que deberemos acceder a traves de un gestor de archivos (explorador de archivos o FTP) conectandonos a nuestros Skycontroller por una conexion adb a traves del puerto 9050 (gracias por esta informacion Aragon!).

Asi pues empecemos por el...

PASO 1: Nos descargamos el programa TOTAL COMMANDER de su web oficial, https://www.ghisler.com/download.htm, que usaremos como explorador de archivos (recomiendo la version de 32 bit). Una vez descargado lo instalamos (el tipico siguiente, siguiente, siguiente,...).

PASO 2: Ahora tenemos que buscar la forma de conectarnos por adb a traves de TCP/IP, y aqui es donde simplificamos el proceso al maximo. Descargamos el plugin para conexiones ADB para Total Commander (dios bendiga google y a Jakub Klos que aporto esta herramienta gratuitamente). Se llama Android ADB 8.0 y podeis descargarlo de aqui:

adbplugin.zip
(3.25 MiB) 152 veces


PASO 3: Ahora instalaremos el Plugin, primero lo descomprimimos (recomiendo hacerlo dentro de la carpeta donde se ha instalado el Total Commander, que por defecto estara en el directorio raiz del disco C).

Despues abrimos total commander y si no se nos abre automaticamente el apartado configuracion, pulsamos en "configuracion" (en la barra de herramientas de la parte superior) y seguidamente en opciones.

En la siguiente ventana, pulsamos en "Complementos" (plugins si el idioma esta en ingles) situado en la zona izquierda.

Ahora pinchamos en el boton "configurar" del apartado "Complementos del sistema de archivos .WFX"

Pulsamos "Añadir" y marcamos ADBPlugin.wfx, pulsamos abrir, despues aceptamos y aceptamos otra vez.

Cerramos el total comander y lo abrimos de nuevo.

PASO 4: Ahora encenderemos nuestro parrot disco (es mejor que este completamente cargado cuando hagamos este proceso ya que no tendremos que preocuparnos de andar apagandolo y reconectandonos durante las pruebas de mapeo) y encendemos nuestro Skycontroller (bateria cargada tambien y el movil conectado al mando) dejamos que se abra la aplicacion freeflight (o la abrimos nosotros si no lo hace automaticamente) esperamos que en el movil aparezca la imagen de la camara del parrot que nos indica que todo esta correctamente conectado.

PASO 5: Toca conectarnos a la red de nuestro Parrot Disco (o bebop), si estas haciendo todo esto con un ordenador portatil, es tan facil como desconectarte de tu wifi y conectarte a la wifi del Parrot (busca entre las wifi disponibles, selecciona la de Parrot y pulsa conectar, no tiene contraseña ) si estas con un ordenador de sobremesa tendras que buscarte una targeta wifi usb para hacerlo.

PASO 6: Una vez conectados a la wifi del Parrot, nos vamos a Total Commander y sobre una de las dos mitades, pulsamos en el desplegable donde aparece el disco duro C (por ejemplo debajo de archivo, debajo del boton verde de actualizar), y seleccionamos "Entorno de Red", debajo se nos mostrara una carpeta [ADB], hacemos doble click sobre ella, y despues "Connect to Device".

Escribimos la IP del cacharro al que queremos acceder:

192.168.42.1 si es el Parrot Disco
192.168.42.43 si es el Skycontroller 2

(importante, estas ip no tienen por que ser la mismas en todos los casos, si no conecta, probad a bajar un escaneador de IP como por ejemplo "Advanced IP Scanner" y estando conectado al Parrot por Wifi hacer un escaneo, en la lista apareceran las IP de los dispositivos escaneados)

En nuestro caso nos interesa el Skycontroller 2, por lo tanto escribimos: 192.168.42.43:9050 y pulsamos aceptar.

Seguidamente nos aparecera el listado de directorios de nuestro Skycontroller2 (al completo), MUCHO CUIDADO CON BORRAR NADA!!.

El directorio que nos interesa es:

/etc/mppd/ (etc --> mppd)

Dentro hay varios archivos archivos con extension .cfg, dependiendo de nuestro producto parrot nos interesara uno u otro, en mi caso me interesa "mapping_disco.cfg", lo pinchamos y arrastramos a la ventada de al lado del total commander, lo que hara que se nos copie en nuestro directorio raiz C de nuestro ordenador.

PASO 7: Despues de hacer una copia de seguridad o dos!!! editamos el archivo, al ser posible NO useis el notepad de windows bajaros otro editor mas especializado (recomiendo el programa "notepad++" para eso que podeis bajar de aqui https://notepad-plus-plus.org/).

Bien en ese archivo se puede deducir todo lo que podeis hacer, ya que viene una leyenda especificando cada cosa, lo unico importante es que sepais a que boton fisico corresponde cada cosa, pues por ejemplo, en ese archivo el button_Y es el boton A del Skycontroller.

Os pongo un pequeño listado de las equivalencias que he realizado:

Código: Seleccionar todo
Boton A del SC2 (tomar una foto) [lo definen como button_Y] es : 0x10

Boton B del SC2 (graba video) [lo definen como button_X] es : 0x8

Boton VUELTA A CASA del SC2 [lo definen como button_B] es : 0x2

Boton ATERRIZAR/DESPEGAR del SC2 [lo definen como button_C] es : 0x4

Rueda Derecha (encima del gatillo derecho) del SC2 [lo definen como Button_R2 (giro a la derecha)] es : 0x800

Rueda Derecha (encima del gatillo derecho) del SC2 [lo definen como Button_L2 (giro a la izquierda)] es : 0x400

Gatillo Izquierdo del SC2 [lo definen como Button_L1] es : 0x20

Gatillo Derecho del SC2 [lo definen como Button_R1] es : 0x40




/* List of axes


  0 = AXIS_LEFT_LR (stick izquierdo movimiento Izquierda/Derecha)

  1 = AXIS_LEFT_UD (stick izquierdo movimiento Arriba/Abajo)

 

  2 = AXIS_RIGHT_LR (stick derecho movimiento Izquierda/Derecha)

  3 = AXIS_RIGHT_UD (stick derecho movimiento Arriba/Abajo)



  4 = AXIS_SLIDER_LR (slicer izquierdo [encima del gatillo izquierdo] movimiento Izquierda/Derecha)
*/


Yo por ejemplo he asignado los movimientos de la camara (el PAN and TILT) al stick izquierdo, el Throttle (acelerador) al slicer izquierdo encima del gatillo izquierdo (ya que el parrot disco siempre vuela hacia delante y solo puedes hacer que vaya mas rapido o mas despacio, pero nunca parar, y al final el acelerador no lo usas practicamente nunca), ademas asi puedo pulsar el boton aterrizar mientras simultaneamente voy volando a baja velocidad, lo que me resulta muy comodo.

Para el centrado automatico de la camara he asignado el gatillo izquierdo y para la funcion original del gatillo izquierdo (cambiar el modo de vista) he combinado boton A y gatillo izquierdo simultaneamente.

El resto de cosas las he dejado igual, pero se podria probar muchas combinaciones.

Guardamos los cambios realizados.

PASO 8: Arrastramos el archivo que hemos modificado de nuestro disco duro C al directorio del Skycontroller 2, y pulsamos sobreescribir.

Ahora en nuestro Skycontroller 2, y mas concretamente en el movil o tablet que le tengamos conectado, pulsamos en el icono del mando (parte superior derecha) y nos aparecera la asignacion de botones original, ahora pulsamos en el boton reset de la parte superior de la pantalla y veremos como se cambian las asignaciones por las de nuestro archivo.

Y LISTO!

Importante:

Si haceis mal una asignacion simplemente no funcionara pero no saldran errores.

Las asignaciones que originalmente no soporta el Parrot, como por ejemplo el centrado de la camara o el PAN (movimiento lateral de la camara) NO APARECEN en el mapeo en pantalla, quedara vacio. Eso no significa que no funcione, podeis probarlo en cualquier momento sin necesidad de volar.

Las modificaciones sobre los mandos de control y demas funciones que si soporta el programa originalmente SI DEBEN DE APARECER, si no lo hacen es que estan mal y no funcionaran.

Se pueden hacer combinaciones de botones y botones y palancas.

En el caso de palanca y boton es my facil, basta con poner el numero de eje de la palanca y la direccion del boton (la direccion del boton A por ejemplo es 0x10).

En el caso de dos botones hay que sumar su direcciones (por ejemplo gatillo izquierdo y boton A seria 0x20 + 0x10 por lo tanto 0x30 ).

No perdais la copia de seguridad original sin modificar para poder restablecer todo en un futuro. Yo he dejado una copia original en el mismo directorio del Skycontroller 2 renombrando el archivo añadiendole al final la palabra original.
alexiter
Site Admin
 
Mensajes: 140
Registrado: Dom Nov 17, 2013 9:54 pm

Volver a Emisoras, Receptores, Camaras, Telemetria, Electronica general del aeromodelo, etc...

cron
  • Buscar mensajes nuevos
  • Buscar temas sin respuesta
  • ¿Quién está conectado?
  • En total hay 1 Usuario identificado :: 0 registrado, 0 ocultos y 1 invitado (basados en usuarios activos en los últimos 5 minutos)
  • La mayor cantidad de usuarios identificados fue 28 el Vie Ago 19, 2016 11:55 pm
  • Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado