Configure el acceso a Wi-Fi doméstico para un dispositivo sin pantalla

8

Estoy construyendo un dispositivo conectado sin una pantalla que necesita estar conectado a la red Wi-Fi doméstica. WPS no es una opción. El dispositivo tendrá un módulo Bluetooth además del hardware de Wi-Fi. Los códigos QR también se pueden hacer.

También estoy creando una aplicación de iOS para guiar al usuario a través de los pasos para configurar el dispositivo y darle acceso a la configuración de Wifi. ¿Puede alguien ayudarme con los detalles técnicos sobre los mejores protocolos de comunicación para aprovechar:

  1. Haga que el dispositivo se conecte con la aplicación para que el usuario pueda usar la aplicación para configurar el dispositivo

  2. Use la aplicación como pantalla para que el dispositivo seleccione entre los SSID disponibles, ingrese la contraseña y conéctese al Wi-Fi doméstico

He considerado las dos opciones a continuación:

  1. Use BLE para conectar la aplicación iOS con el dispositivo y luego use BLE para pasar la lista SSID de Wi-Fi, las credenciales de inicio de sesión entre el dispositivo y la aplicación.

  2. Use Wi-Fi solo para conectarse con el dispositivo y pasar la lista de SSID de Wi-Fi, credenciales de inicio de sesión entre el dispositivo y la aplicación

¿Cómo se comparan en términos de experiencia del usuario, fiabilidad (completar en el primer intento) y esfuerzo (menor esfuerzo para construir)?

Akshay Hasija
fuente

Respuestas:

4

Wifi

Si está utilizando Wi-Fi, se conectará a algún tipo de punto de acceso configurado por su dispositivo con su teléfono, pasará la información necesaria y volverá a conectar su dispositivo (y su teléfono) al Wi-Fi que realmente desea para conectarlos a

Realmente no hay una forma de evitar eso si estás usando Wi-Fi. Ingresar la información de la conexión Wi-Fi de su hogar es la aplicación UX y un poco fuera de tema para esta pregunta. 1 Entonces, centrémonos en cómo establecer primero el punto de acceso de su dispositivo y luego conectarlo de la manera más cómoda y segura posible.

Establecer el punto de acceso

  • El punto de acceso está disponible solo después del restablecimiento de fábrica. (¿Su dispositivo tiene un restablecimiento de fábrica?)
  • Hay un botón físico que ingresa al modo de punto de acceso.
  • Tiene alguna forma inalámbrica de activar el modo de punto de acceso. (No es aconsejable desde un punto de vista de seguridad).

Credenciales iniciales del punto de acceso

  • No hay ninguno. (Puedes imaginar las revisiones de seguridad).
  • Están impresos en el manual del dispositivo y son los mismos para cada uno de sus dispositivos. (Ok, si el tiempo que el punto de acceso está activo es lo suficientemente corto).
  • Están impresos en el manual del dispositivo y son diferentes para cada uno de sus dispositivos. (Mejor pero requiere un esfuerzo de producción).
  • Están impresos en forma de código QR (u otra forma legible por cámara de dispositivo inteligente) en su dispositivo o en el manual. (Igual que el anterior solo más cómodo.)

Menciono los manuales porque no todos los dispositivos pueden tener suficiente espacio para tener un código QR, incluso si el suyo tiene. También los diseñadores realmente odian los códigos QR. Por otro lado, los manuales tienden a desecharse.

BLE

Sinceramente, no me gusta el proceso de emparejamiento BLE, ya que se puede escuchar con bastante facilidad en la forma en que se usa generalmente. (Cf. Esta pregunta sobre Security.SE, este blog sobre seguridad BLE o este documento técnico o más información sobre seguridad BLE aquí o aquí ). El protocolo ofrece algunos modos más seguros, pero solo funcionan con al menos BLE 4.2lo que reduce los dispositivos inteligentes compatibles y todo el esfuerzo de desarrollo adicional para implementar el emparejamiento seguro. Tal vez incluso vea BLE 5, pero podría quedarse sin dispositivos compatibles si usa las nuevas funciones de seguridad. Entiendo que su dispositivo no utiliza BLE en operaciones normales, lo que significa un gran esfuerzo de desarrollo que podría utilizar para otras cosas invertidas en la seguridad de BLE.

Sin embargo, generalmente es más cómodo usar BLE que conectarse a puntos de acceso Wi-Fi. Para ser honesto, aunque en mis proyectos, Bluetooth casi siempre está excluido por estas y otras razones. Desde el punto de vista del costo y la seguridad, no tiene mucho sentido tener una interfaz que su caso de uso real no necesita. Otro gran inconveniente es explicarle al usuario por qué necesita configurar Wi-Fi después de configurar BLE. Eso es un infierno UX.

Sonido y luz

Básicamente, puede usar todo lo que su dispositivo tiene un sensor para transmitir credenciales. Puede cambiar su contraseña de Wi-Fi a través del LED del teléfono inteligente si su dispositivo tiene una cámara o usar una codificación de sonido (de manera óptima no en rangos de audición no humana) para transmitirla si tiene un micrófono. No incluya estos componentes solo para el proceso de configuración. A las personas les parece realmente espeluznante encontrar micrófonos o cámaras en cosas que se supone que no tienen esas capacidades.

Algunos consejos generales:

  • Piense en cuándo su dispositivo acepta credenciales de Wi-Fi
  • Mantén ese tiempo corto
  • Tener un activador reconocible para el usuario durante este período de tiempo
  • Cuanto menos tenga que molestarse el usuario con la transferencia de las credenciales, mejor.

1 Las aplicaciones son complicadas ya que es un poco difícil leer la contraseña de Wi-Fi del Wi-Fi actual, que probablemente sea el conjunto de credenciales que desea transmitir al dispositivo. Es lo que hace que el UX a menudo sea muy doloroso y es más doloroso en iOS porque ni siquiera puedes obtener la lista de Wi-Fis fácilmente. Android te permite obtener más información que puedes transmitir después. Pero ese es otro UX con el que todos están luchando.

Helmar
fuente
3
Pensé que BLE fue diseñado para hacer que el emparejamiento sea fácil y seguro, ¿estás diciendo que solo lo hicieron fácil? Tal vez estoy pensando en algo futuro?
Sean Houlihane
3
@SeanHoulihane well BLE 4.2 se comercializó como resuelto los mayores agujeros en el protocolo, eso es cierto :)
Helmar