"Después del juego es antes del juego"
Sepp Herberger

miércoles, 2 de diciembre de 2015

Una modesta propuesta sobre el montaje de pizarras digitales

A estas alturas del baile llevamos ya experimentadas varias soluciones de implantación de pizarras digitales en nuestras aulas. Las mas extendidas (las SmartBoard y Galneo) nos han obligado a adaptar el aula a las limitaciones del cableado de la pizarra. Me explico:

  • En las SmartBoard 480 el cable USB es de datos y alimentación, mientras que el PC que la controla está en la mesa del profesor. Hace falta un cable USB activo de no más de 5 metros que obliga al PC a estar como máximo a 5m de la pizarra, lo que provoca cables tirantes y problemas de señal inestable en cuanto este se afloja un poco alguna de la conexiones.
  • En las Galneo tenemos el mismo problema con el cableado, pero se adopta la idea de dejar el PC debajo de la pizarra en una caja que sobresale hasta 30cm de la pared y que parece hecha aposta para quebrar rótulas, convirtiendo "ergonomía" en una palabra utópica. Del PC salen cables de VGA, red y usb para teclado/ratón/pendrive que van canalizados hasta el puesto del profesor

En resumidas cuentas, el diseño ha optado por adaptar el aula al dueto PC-pizarra, que deben estar separadas por un máximo de 5 metros de cable (menos en línea recta) en lugar que sean PC y pizarra los que adapten su ubicación a la morfología del aula, como sería lo razonable. Me recuerda esta bonita historia:

Un señor acudió un sastre y le entregó una pieza de fino cachemir a fin de que le confeccionara un traje. Le tomó las medidas el maestro y unas semanas después lo llamó por teléfono a su casa para avisarle que el traje estaba listo. Se lo probó el señor. El traje era un desastre: las perneras del pantalón le llegaban apenas al tobillo; una manga de la chaqueta le colgaba casi hasta tocar el suelo, en tanto que la otra ni siquiera alcanzaba a cubrirle el codo. "Oiga, maestro -le dice- este traje está mal hecho. Mire qué mal me queda". "El traje está perfecto, caballero -contesta el ruin tijera-. El problema es de postura. Mire: levante usted el brazo derecho hacia adelante. Muy bien. Ahora encoja el izquierdo y llévelo hacia atrás. Perfecto. Ahora quiébrese usted por la cintura y doble las piernas abriéndolas un poco. Excelente. ¿Lo ve? Así las mangas de la chaqueta alcanzan su debida dimensión, y las perneras del pantalón le cubren ya lo necesario".

No reclamó ya más el cliente, pues era hombre apocado, y procuraba siempre evitar las discusiones. Salió, pues, de la sastrería caminando en la postura que el sastre le había indicado: un brazo estirado hacia arriba y adelante; el otro doblado hacia atrás; el cuerpo encorvado, y con las piernas torcidas. Comparado con él Quasimodo estaba más derecho que una vela. Así, todo deforme y contrahecho, iba por la calle el lacerado cuando lo vieron dos sujetos que pasaban. Le dice uno al otro, compasivo: "Pobre infeliz. Mira qué jodido está". "Sí -concede el otro-. Pero qué buen sastre tiene"

Entonces, yo me pregunto si no se puede enfocar el problema de esta manera que voy a proponer. Primero hablemos del hardware:

  • El PC en su sitio, en la mesa del profesor.
  • La pizarra donde mejor quede en el aula, sea cual sea la distancia que la separe del PC.
  • Junto o tras la pizarra una Raspberry Pi o cualquier miniordenador alimentado por un enchufe normal de corriente y que por su puerto USB se conecta a la pizarra con un cable corto que le da alimentación eléctrica y le permite comunicarse con ella.
  • La Raspberry Pi y el PC están conectados por un cable ethernet debidamente canalizado, que puede tener decenas de metros de largo e ir por sitios donde sea poco llamativo y/o molesto.


En cuanto al software, podría haber dos soluciones:

  • Solución A: usando usb-over-ip instalando el server en la Raspberry Pi para compartir la conexión USB con el pc mediante una conexión IP. El PC remoto tendría instalados el cliente usb-over-ip y los drivers, detectando la pizarra como si estuviese conectada a un puerto USB real propiamente suyo. Este sistema ya lo implementé por mi cuenta de forma bastante satisfactoria reutilizando un router con OpenWrt, un aparato mucho menos versátil que una Raspberry.
  • Solución B: la Raspberry Pi tendría instalado el driver de la pizarra, que tras procesar la señal que llega obtiene unas coordenadas X-Y y un evento de botones de ratón. Esos datos se comparte via TCP/IP con el PC. Si hay que hacer algún pre-procesado de la señal (por ejemplo la triangulación de señal de las cámaras de la SmartBoard 480 para determinar la posición X e Y, realizada por el ejecutable binario nwfermi_daemon) se hace en la propia Raspberry, liberando de esta tarea al PC del profesor.

    ¿Como llega la información de coordenadas y botones al PC?: pues como se hace en cualquier herramienta de "ratón remoto", Synergy por ejemplo o la miríada de ellas que hay en en Google Play que convierten un móvil/tablet Android en un touchpad que controla remotamente el PC: hay un programa servidor, que se ejecuta en la Raspberry y un programa cliente en el PC del profesor, que conectan por un socket TCP/IP y se transmiten la información. El programa cliente utiliza cualquiera de las múltiples herramientas que hay (por ejemplo ésta) para emular el movimiento del ratón.

    Un enfoque mas trabajado y bonito sería implementar un driver para el PC, con un frontend con apariencia de dispositivo HID/ratón que se muestra al sistema como un dispositivo /dev/XXXX y un backend que conecta via TCP/IP con la Raspberry Pi para leer las coordenadas y estado de los botones del servidor que se ejecutaría en la misma. Parece rimbombante pero no es muy difícil de hacer si se cuenta con el tiempo para ello.

Bueno, pues eso es todo: una modesta, barata y sencilla propuesta para montajes futuros y que pueden aplicarse también a montajes presentes donde queramos romper la cadena inelástica que obliga a tener muy próximos pizarra y PC, con grandes problemas derivados de tan absurda limitación.

Fin de impresión.

No hay comentarios:

Publicar un comentario