2 de junio de 2017

Crear Puerto Serial Virtual entre Ubuntu y VirtualBox (con WindowsXP)

Necesitaba realizar ingeniería inversa a un programa de un fabricante de Maquinaria Pesada (Heavy Machine), que como la mayoría de programas industriales, solo funcionaba en Windows, ademas solo se comunicaba por puerto serial, si no detectaba la Maquina no se ejecutaba y salia.

Como en ninguna de mis computadoras tengo Windows, solo uso GNU/Linux, decidí crear una maquina virtual con VirtualBox e instalar Windows XP, me venia bien, porque funciona rápido y es donde mejor funcionan el programa a ingeversar.

Bien aquí tengo la maquina virtual con Windows XP corriendo en Ubuntu, con sus respectivos menus desplegados:
Con la maquina virtual Windows XP apagada, debemos de configurar en la Opción "Puerto Serie" lo siguiente:
Entonces al ejecutar la Maquina Virtual, se creara una tubería en '/tmp/ttyXPM01', si listamos esta tubería se vera así:
Para convertir la tuberia '/tmp/ttyXPM01', en un puerto serial debemos de usar SOCAT, es un paquete que viene predeterminado en ubuntu.
Debemos utilizar el siguiente comando:
usuario@laboratorio:~$ sudo socat -d -d -d -v -x UNIX-CONNECT:/tmp/ttyXPM01 PTY, link=/dev/ttyVSP1, mode=777, unlink-close, raw, echo=0
De tal forma que, si listamos los dispositivos tty veremos que se ha creado el puerto serial '/dev/ttyVSP1', mientras SOCAT se mantenga funcionando existirá este puerto, y si sales de SOCAT desaparecerá:
Ahora ya tenemos creado un puerto serial 'COM1' en Windows XP que se conecta a otro puerto serial '/dev/ttyVSP1' en GNU\Linux.
Esto quiere decir que cualquier programa en Windows que se conecte al COM1, podrá comunicarse con cualquier programa en Linux, que este conectado a '/dev/ttyVSP1'.
Ahora desde GNU/Linux, podemos abrir un programa terminal para puerto serial, como el minicom o el cutecom y conectarnos la puerto '/dev/ttyVSP1' :
Ahora si podemos conversar con el programa en Windows e implementar un programa que le simule estar conectado a la Maquina.
Podemos ver las Tramas que envía a través del puerto serial y mediante un programa, por ejemplo en python interpretar los datos.

Instalando los Drivers de Impresora Multifuncional EPSON L355

Vamos a instalar una impresora multifuncional (Imprime, copia y scanea) wifi EPSON L355. Cuando instalaba hace meses atrás había otra forma de instalación, con otro tipo de archivos ahora veo, entrando a la página página web de EPSON que ha cambiado un poco.


  1. Primero vamos a descargar los controladores desde la misma página de Epson:
Escribimos en “nombre del producto”: L355, y escogemos como “Sistema Operativo”: Linux, presionamos buscar:


01 Buscar Driver.jpg


Y nos mostrará la siguiente lista:
02 Lista de Resultados.jpg


El Primer Botón de Descarga lleva al controlador de la impresora L355, el Segundo Botón de Descarga lleva a un instalador de programas utilitarios para la impresora y el Tercer Botón de Descarga, lleva al controlador completo del escáner, con su manual PDF de instalación en ingles.


Descargar el Controlador de la Impresora EPSON L355

Escogiendo el Primer Botón de Descarga, nos lleva al siguiente menú:


04 Descagar Driver Impresora L355.jpg

Si tienes una computadora de 32 bits debes escoger:
epson-inkjet-printer-201207w_1.0.0-1lsb3.2_i386.deb

Si tienes una computadora de 64 bits debes escoger:
epson-inkjet-printer-201207w_1.0.0-1lsb3.2_amd64.deb


Descargando programa utilitario para la impresora

Escogiendo el Segundo Botón de Descarga, nos lleva al siguiente menú:

04 Descagar Driver Impresora L355 01.jpg

Si tienes una computadora de 32 bits debes escoger:
epson-printer-utility_1.0.0-1lsb3.2_i386.deb

Si tienes una computadora de 64 bits debes escoger:
epson-printer-utility_1.0.0-1lsb3.2_amd64.de


Descargar el controlador del escáner Epson L355

Escogiendo el Tercer Botón de Descarga nos lleva al siguiente menú:

03 Descagar Driver Scan 03.jpg


Ingresar a “Package Download Page” para descargar el controlador del escáner.


Aparecerá el siguiente menú:


03 Descagar Driver Scan 01.jpg

Escoger en [deb] el controlador (para Ubuntu) según si tenemos una PC de 32bits o de 64bits.
Luego descargar el manual pdf de instalación, para alguna referencia adicional.

Al final debes de tener descargado los siguientes archivos, como mi computadora es de 64bits los archivos serán:

Lista de Archivos Descargados.jpg


Primero vamos a instalar los archivos del SCANER, debemos descomprimir el archivo iscan-bundle-1.0.0.x64.deb.tar.gz, como muestra la imagen siguiente:



observamos que aparecen tres archivos .deb:



Ahora instalaremos todos los archivos del SCANER, por consola puedes utilizar "
./install.sh" o directamente haciendo click en los archivos .deb en el siguiente orden:

  iscan-data_1.36.0-1_all.deb
  iscan_2.30.1-1~usb0.1.ltdl7_amd64.deb
  iscan-network-nt_1.1.1-1_amd64.deb


o por consola utilizando "./install.sh" :


Al final solo nos queda instalar los archivos .deb de la impresora en cualquier orden:

epson-inkjet-printer-201207w_1.0.0-1lsb3.2_amd64.deb
epson-printer-utility_1.0.0-1lsb3.2_amd64.deb

Si nos pide instalar paquetes adicionales, hay que aceptar y continuar



Ahora tendremos instalado nuestra impresora Epson L355, si configuramos nuestra impresora para que se conecta al Wi-Fi de nuestro router podremos utilizarla en forma remota e imprimir o scanear desde cualquier lugar.

Para escanear les recomiendo el XSane.

GIMP: Trabajando con Python en GIMP

Vamos a trabajar con python desde gimp, para esto vamos a abrir algun archivo XCF con imagenes. Luego abrir la consola en el menu Filtros -...