Con Firefox 151, las aplicaciones web pueden controlar el hardware a través de Bluetooth o puerto serie

La actualización a Firefox 151 integra una nueva característica muy interesante para algunos usuarios: soporte para API serie web para la variante de escritorio del navegador. Esta API (interfaz de programación) permite que los sitios web se comuniquen directamente con los dispositivos. Hardware conectado a través del puerto serie o Bluetooth.

«La mayoría de la gente no usará esta API», informa Mozilla en su blog, «pero para nuestra comunidad de creadores y geeks, desbloquea la capacidad de usar Firefox para comunicarse directamente con dispositivos de hardware compatibles como microcontroladores, placas de desarrollo y otros dispositivos conectados en serie».

Gracias al motor de renderizado de Firefox, Gecko, que ahora soporta Web Serial, los usuarios pueden conectar, programar, configurar y controlar hardware compatible directamente desde el navegador y con muchos flujos de trabajo, en muchos casos sin software adicional ni configuraciones complicadas.

«Como parte de este desarrollo, Adafruit, una comunidad líder en hardware de código abierto, está trabajando con nosotros para probar y validar el desarrollo de hardware basado en navegador dentro de Firefox con soporte Web Serial». explica Mozilla de nuevo. «Con el soporte Web Serial en Firefox 151, los flujos de trabajo de hardware basados ​​en navegador de Adafruit ahora funcionan directamente en Firefox, sin necesidad de software adicional o configuración complicada para muchos proyectos. Te invitamos a probarlo…»

Y nuevamente: «Queremos que la web sea abierta, flexible y esté moldeada por la diversidad de las personas que construyen en ella. Ya sea que esté cableando su primera placa, experimentando con diseños de hardware o desempolvando un viejo kit electrónico, ponga a prueba Adafruit y Web Serial en Firefox. Cree algo extraordinario. Cree algo útil. Díganos qué funciona. Díganos qué falla. Pero, sobre todo, hágalo suyo».

Cómo funciona técnicamente

Hasta ahora, la API en cuestión sólo era compatible con los navegadores que utilizan el motor Cromo. Desde un punto de vista técnico, Web Serial proporciona una interfaz JavaScript accesible a través del objeto navigator.serial, disponible exclusivamente en páginas HTTPS: cuando un sitio solicita acceso, el navegador muestra una ventana de autorización con la lista de dispositivos identificados: el usuario debe seleccionar manualmente el hardware, lo que imposibilita el acceso automático no autorizado. Una vez que se otorga el permiso, se abre un canal bidireccional configurable (velocidad en baudios, bits de parada, control de flujo) que permite a las aplicaciones JavaScript leer y transmitir datos en tiempo real y enviar comandos al hardware conectado.