3 votos

¿Mejor esquema de comunicación para una pantalla Bluetooth LE alimentada por batería?

Tengo un diseño con alimentación a batería en el que estoy trabajando utilizando un Nordic NRF52832. El dispositivo está destinado a conectarse a un teléfono inteligente y, al recibir un mensaje en particular del teléfono, encender algunos LEDs en respuesta apropiada a ese mensaje.

La duración prevista entre cargas es de 3 meses y hay espacio para una celda LiPo de 200 mAh internamente.

Mi pregunta es - ¿cuál es el esquema de comunicación más eficiente en términos de energía para utilizar aquí? Para un dispositivo que necesita simplemente enviar información periódicamente, despertar y publicitar (posiblemente con una solicitud de escaneo / respuesta después, posiblemente para iniciar una conexión y enviar datos antes de desconectarse) seguido de largos períodos de sueño parece ser la forma general en que funcionan las cosas. La responsabilidad recae entonces en el teléfono inteligente para escanear periódicamente las publicidades, poniendo el mayor drenaje de batería en un dispositivo que se recarga con más facilidad.

En este momento, mi mejor conjetura sería que el dispositivo se despierte periódicamente, publique durante un período de tiempo con la esperanza de que en ese tiempo el teléfono inteligente escanee, detecte esa publicidad, se conecte, envíe datos a mi dispositivo y luego cierre la conexión. Mi dispositivo puede entonces actuar sobre estos datos y/o volver a dormir.

Alternativamente, parece que el teléfono inteligente podría publicar periódicamente si tuviera algún dato para compartir, y mi dispositivo podría despertarse periódicamente, escanear y, si recibiera una publicidad con datos apropiados (asumiendo que podemos ajustar nuestra carga útil en una publicidad), entonces reaccionar apropiadamente antes de volver a dormir. Si se incluyera una solicitud de escaneo / respuesta de escaneo en esto, podríamos efectivamente confirmar la recepción de la carga útil, evitando que el teléfono enviara paquetes superfluos.

También se debe considerar la operación en un entorno donde varias personas en la misma área tienen un teléfono y un dispositivo y la interferencia donde los datos de un teléfono fueron interpretados por un dispositivo incorrecto sería no deseada. ¿Cómo puedo dirigir los datos a un solo dispositivo con la carga de energía más baja posible?

Además, si se puede proporcionar algún consejo sobre un recurso adecuado para que pueda leer donde pueda obtener una mejor comprensión de las mejores prácticas generales en torno a consultas como esta, estaría muy agradecido.

1voto

Surendra Patil Puntos 11

Tienes varias preguntas acumuladas aquí, que casi se reducen a simplemente pedir "diseña esto por mí, para poder vendértelo mejor"...

De todos modos, en cuanto al ahorro de energía, el enfoque simple sería sincronizar el reloj en tu dispositivo con el de tu teléfono inteligente en el momento de emparejarlos. Entonces intentarías reconectarte a intervalos establecidos y solo por un breve tiempo, ahorrando así energía. Vuelve a sincronizar los relojes en conexiones exitosas.

Además, si el teléfono inteligente no tiene nuevos datos, puede simplemente omitir la sesión sin establecer conexión, lo que también ahorrará un poco más de energía.

En cuanto a la interferencia, ¿no debería encargarse de eso el SSP por ti? Y si eso no es suficiente, puedes incluir algún tipo de GUID encriptado con un cifrado variable en el tiempo (un buen uso para relojes sincronizados) en el apretón de manos.

En cuanto a la seguridad, la seguridad de la conexión en sí es un problema puramente de software, que se suma al cifrado (que es obligatorio para la especificación 2.1). Dado que posees el protocolo de alto nivel en ambos lados, tienes la opción de hacerlo tan seguro como sea posible.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X