Autenticación del módulo BLE RN4020 sin capacidades de E / S y hoja de datos misteriosa

0

Estoy intentando activar la autenticación para mi módulo Bluetooth RN4020 de una manera que no tengo que ingresar el PIN o la contraseña durante este proceso porque mi RN4020 no tiene ninguna pantalla o teclado donde mostrar o ingresar el PIN.

Esto es lo que hoja de datos (tabla 2-7, página 29) dice al respecto

  

SR,<hex32>

     

Este comando configura las funciones compatibles del RN4020 actual   módulo. El parámetro de entrada es un mapa de bits de 32 bits que indica   características a ser soportadas.

Auto Advertise 0x20000000

Enable Authentication 0x00400000

I/O Capabilities 0x000E0000 . Capacidad de E / S del módulo. Solo es útil si el bit de Habilitar autenticación está establecido.

  • ‘b000 = Mostrar solo

  • ‘b001 = Mostrar Sí / No

  • ‘b010 = Sólo teclado

  • ‘b011 = Sin entrada, sin salida

  • ‘b100 = Pantalla del teclado

Aquí es donde comienza el misterio porque no se dice en la hoja de datos donde se supone que los valores binarios (supongo) para estas capacidades de E / S están en este número hex32.

Leí aquí sobre cómo deshabilitar el pin al realizar el proceso de autenticación (emparejamiento)

  

Primero, desactive la autenticación, para que RN4020 no solicite un Pin   código. Para el parámetro del comando "SR", el bit 0x00400000 debe ser   borrado.

que ya es raro porque ¿por qué deshabilitaría la autenticación si estoy intentando hacerlo y las capacidades de E / S funcionan solo si el bit de Habilitar autenticación está establecido? Y a continuación ...

  

Por otro lado, declare que RN4020 no tiene capacidad de E / S, por lo que   El dispositivo de igual no pedirá la autenticación de E / S del teclado. Para el parametro   del comando "SR", los 3 bits 0x000E0000 se deben establecer en 0x00060000 para   indica que RN4020 no tiene capacidad de E / S.

¿Qué significa el número 6? Y nuevamente, si la autenticación se deshabilita al deshabilitar los bits 0x00400000, estas capacidades de E / S 0x000E0000 no deben funcionar en absoluto. Pero el misterio es que cuando uso SR,20060000 realmente funciona y puedo vincular dispositivos sin usar PIN. ¿Alguien puede explicar esto?

    
pregunta etrusks

1 respuesta

1

El valor de la máscara de bits de capacidades de E / S es 0x000E0000 y los valores binarios que enumera son los 3 MSB en la "E".

He usado estos modos: Solo visualización: el RN4020 UART genera un código de acceso de 6 dígitos que debe ingresarse en el dispositivo de conexión. Solo teclado: al dispositivo de conexión se le envía una contraseña que debe ingresarse en un dispositivo de entrada conectado al RN4020.

También probé Sin entrada, sin salida y no tuve éxito en la conexión. No he descubierto cómo almacenar un PIN fijo al que debe ingresar el dispositivo de conexión.

    
respondido por el Mike G

Lea otras preguntas en las etiquetas