Mensaje de error

Deprecated function: Optional parameter $path declared before required parameter $langcode is implicitly treated as a required parameter en include_once() (línea 1445 de /mnt/web424/a0/12/51593012/htdocs/main/includes/bootstrap.inc).

Firmware PacoMouse

Grabación del firmware en el Arduino

En teoría, antes de montar el mando se puede probar el Arduino conectándolo por USB al ordenador y programarlo. 

Si la grabación se produce en un mando XpressNet a posteriori del montaje del Arduino en la placa o se produce una actualización, hay que tener en cuenta que se debe cambiar de posición el interruptor para no tener problemas que puedan estropear la placa.

Una vez actualizado el software el interruptor se debe volver a su posición inicial. Como se puede ver de fondo se enciende un LED en la placa de Arduino que prácticamente no se ve en la parte frontal.

Una vez puesto el cable, en cualquiera de los dos mandos (XpressNet o LocoNet) nos aparece en la pantalla lo que se puede ver en la foto.

A partir de entonces ya se puede subir el software al Arduino mediante el cable USB (en este caso USB3)


Configuración del IDE

En la foto se puede ver el Arduino IDE con la versión del software del PacoMouse versión 0,25. En la parte inferior se puede ver que el mando está conectado en el puerto serie COM1. En el caso de que no esté conectado se puede cambiar esto yendo a Herramientas|Puerto y cambiar a alguno de los que nos aparezcan en la lista.

En el caso de que no nos salga Arduino Nao en la ventana del menú podemos cambiar el tipo de placa y también el puerto de conexión al desplegar el menú.


 

Utilizar el PacoMouse HW Test

Si antes de instalar la versión del firmware completa instalamos en el Arduino la versión de prueba comprobaremos el funcionamiento y nos dirá los parámetros que debemos cambiar en el archivo config.h.

Está en una carpeta aparte y se carga el programa en el IDE. Hay que utilizar la herramienta Monitor Serie y poner la velocidad a 115200 baudios. El IDE se conectará por el puerto serie al mando.

Hay que seguir los pasos que nos da la pantalla y respondiendo Y o N. En la imagen tiene la primera pantalla de comprobación.


Cambios a realizar

Todos los cambios que se deben hacer sobre los periféricos se de ben contemplar en el archivo config.h.

Por defecto ya viene comentada la pantalla I2C OLED en la línea 59. 

Por defecto ya viene el tipo de pantalla de 2.42" por lo que no hay que tocar este parámetro en la línea 73 del archivo Config.h.

Por defecto se utiliza la interfaz LocoNet, por lo tanto, si queremos cambiar a cualquiera de las otras dos se tendrá que definir quitando las dos barras y poniéndolas delante de LocoNet.

Ir a la línea 77 a 79 para descomentar la línea correspondiente según sea la interfaz usada.

En la foto se puede ver que se ha cambiado la configuración del teclado para poner en orden la pulsación de teclas de nuestro teclado.

Hay que ir al archivo config.h y abrirlo con un editor de notas (yo utilizo Notepad++) o el mismo IDE de Arduino.

Vaya a ARDUINO PINS en el bloque

#if defined(USE_LOCONET) || defined (USE_XPRESSNET)

Vaya a la línea 189 y cambiar el orden anterior 6, 5, 4, 3, A0, 11, 10 y 9 (enumerados desde arriba hacia abajo por los que hay en la foto. Están cambiados de forma que filas son columnas y los pines están invertidos del 1 al 4.

Nota: Puede ser, porque a mí me ha pasado, que dos teclados idénticos tenga diferente configuración, en este caso se deberían ir haciendo pruebas en la lista de constantes hasta encontrar la correcta. El Test anterior nos dará las pistas que necesitamos.