¿Cómo definir un perfil GATT para un periférico BLE?

Acabo de comprar un dispositivo BLE que puede actuar como periférico o central (un BLE mini ). Fuera de la caja, el dispositivo es como un UART inalámbrico como periférico.

Miré la aplicación de chat de ejemplo debajo del capó y se define una característica de TX.

¿Cómo puedo ahora usar el periférico no para la aplicación de chat de ejemplo, sino para mis necesidades y definir mis propios servicios/características? ¿Cómo configuro el periférico BLE con mi propio perfil Gatt? ¿Es un protocolo que se usa en todas partes o es propiedad del fabricante del módulo BLE?

Sigo viendo en mis búsquedas web definiciones sobre GATT y características y cómo usarlo, etc., pero nunca esta información.

Me gustaría saber lo mismo. ¿Alguna vez resolviste esto?

Respuestas (1)

..y definir mis propios servicios/características? ¿Cómo configuro el periférico BLE con mi propio perfil Gatt?

La respuesta se encuentra en la sección de la página del producto que dice:

Operación independiente: Texas Instruments (TI) CC2540 es un IC SoC (System-on-Chip) que puede funcionar sin ningún microcontrolador externo. Puede desarrollar su propio firmware utilizando IAR Embedded Workbench para el compilador 8051, se puede acceder a todos los pines de E/S de CC2540.
Firmware actualizable: desarrolle el suyo propio o descargue un firmware "preempaquetado" y cárguelo a BLE Mini a través del conector USB, no se requiere el depurador TI CC.

Si bien no he tenido la oportunidad de ver cómo se ve su firmware "preempaquetado", estoy seguro de que cuando dicen afirmar que puede desarrollar su propio firmware (supongo que se refieren específicamente al firmware que reside en el flash del microcontrolador en el módulo BLE, que debe contener la configuración GATT y otra implementación opcional dependiendo de qué placa admita)

¿Es un protocolo que se usa en todas partes o es propiedad del fabricante del módulo BLE?

En primer lugar, el GATT es un perfil y no un protocolo. Si bien podemos decir que GATT se usa en todas partes (con BLE para el alcance de esta pregunta), las formas de configurar la base de datos GATT y volcarla en el módulo se dejan a los fabricantes de módulos. Uno de ellos prefiere hacerlo mediante un xml (BlueGiga), mientras que el otro que he usado, prefiere el lenguaje SmartBASIC (Laird).