Paso 2: Dispositivos seriales de instalación
Puesto que los dispositivos y archivos en Linux se presentan como archivos que esto nos permite crear archivos que son respaldados por el software que actúa como un dispositivo de hardware, y eso es lo que socat nos permite hacer. Nos va hacer 2 archivos y los forro con socat para que ellos se comportan como los 2 extremos de un cable serie.
socat tiene muchas muchas opciones y es bastante de gran alcance de poca utilidad. vamos a crear algunos PTY cruda, o pseudoterminal, dispositivos. Pseudoterminal es un viejo concepto de Unix que fue significado originalmente para los terminales de usuario conectados serie, dispositivos serie a menudo se implementan como un dispositivo PTY y Linux no es una excepción. Además, queremos ejecutar el proceso de socat en segundo plano mediante "&" para que te ejecute el comando "nohup". Sin nohup el proceso puede terminar cuando se termina la conexión de consola.
nohup socat pty,link=$HOME/tty0,raw,echo=0 pty,link=$HOME/tty1,raw,echo=0 &
Por defecto socat generará unos/dev/pts/archivos, así que estamos utilizando la opción enlace a tener que hacer un enlace simbólico para nosotros. $HOME es una variable de shell que se reemplaza con la carpeta de inicio del usuario, y en el edison como root se trata de /home/root. Los archivos serán /home/root/tty0 y /home/root/tty1. Uno de ellos es el amo y uno es esclavo. No importa que utilices para arduino y que nodo, vamos a utilizar 0 para Arduino simplemente porque.
Para probar que utilizaremos el comando de shell eco para enviar una "A" en un archivo y usa el comando cat para leer el otro para ver el resultado.
echo "A" > tty0 && cat tty1
> redirige la salida de un comando a un dispositivo de archivo o secuencia (serie es una especie de corriente) y la & & es un separador de comandos, que significa "esperar el primer comando completar con éxito a continuación, ejecute el comando 2". Si el primer comando da un error, no se ejecutará el comando 2. gato permite imprimir el contenido de un archivo o corriente a la consola. Puesto que los dispositivos pty son corrientes contamos con CTRL-C para interrumpir el proceso de gato y volver al prompt.
Si todo está funcionando debería ver una salida. puede utilizar el comando "ps" para ver que se ejecuta el proceso de socat, y puede utilizar el comando kill para detenerlo si necesita cambiar cualquier configuración.