Resultados en noventa minutos: Desarrollo de BLE con Blue Gecko

En los últimos años hemos visto una explosión de aplicaciones de Internet de las cosas (IoT), con productos como medidores inteligentes, sensores inalámbricos, artículos portátiles, dispositivos de domótica y sistemas de alarma. La conectividad inalámbrica es el eje de la IoT, con una serie de estándares inalámbricos que trabajan juntos para cubrir el espectro completo de aplicaciones.

En particular, Bluetooth de baja energía (BLE), también conocido como Bluetooth Smart, está diseñado para aplicaciones en estado físico, atención de la salud, seguridad, entretenimiento en el hogar y marketing minorista basado en la geografía(balizas). En comparación con Classic Bluetooth, Bluetooth Smart ofrece menor consumo de energía, bajo costo, tiempos de conexión más rápidos combinados con altos niveles de confiabilidad y seguridad. 

Con Blue Gecko, el último miembro de la familia de SoC de Wireless Gecko de Silicon Labs, los desarrolladores pueden crear un prototipo de una nueva idea o desarrollar una sencilla aplicación BLE en tan solo 90 minutos by mediante los kits integrales, las herramientas y el software de demostración disponibles. 

La familia de Wireless Gecko de Silicon Labs

Con la familia de Wireless Gecko (EFR32), Silicon Labs ofrece soluciones RF e inalámbricas de silicio en chip (SoC) altamente integradas, robustas, confiables y fáciles de usar. Los dispositivos Wireless Gecko se basan en el núcleo de 32 bits ARM Cortex-M4 más una unidad de coma flotante, que funciona a 40 MHz, con hasta 256 kB de memoria de programas flash y 32 kB de memoria de datos RAM.  Según el dispositivo, los periféricos incluyen convertidores analógico a digital, comparadores, canales de la PWM, AES, cifrado ECC y SHA, comunicaciones I2C y más.

Blue Gecko está optimizado para Bluetooth Smart; otros SoC incluyen Mighty Gecko para los protocolos ZigBee® y Thread, y Flex Gecko para aplicaciones patentadas de 2.4 GHz.

Descripción general de Blue Gecko 

La familia SoC de Blue Gecko (EFR32BG) ofrece escalabilidad, eficiencia energética, seguridad y sencillez de diseño para aplicaciones Bluetooth Smart. Además de los SoC inalámbricos, la cartera Blue Gecko incluye módulos inalámbricos certificados previamente, una pila de software Bluetooth Smart y un kit de desarrollo de software (SDK) de lenguaje C fácil de usar.

Hardware Blue Gecko: ¿SoC o módulo?

0516 SE Blue Gecko Wireless Image 1

Figura 1: Comparación de un Módulo Blue Gecko BGM113 y diseño de referencia SoC (fuente: Silicon Labs)

En lo que respecta al hardware, hay dos opciones principales:
1) Usar un módulo inalámbrico prediseñado que contenga el SoC
2) Usar un sistema en chip (SoC) e integrarlo en su placa de circuito impresa (PCB) personalizada. 

El módulo viene con un diseño de PCB con todas las características que incluye optimización RF y la disposición de la antena, blindaje, componentes de tiempo y lista de materiales (BOM) externa. Un módulo tiene mayores costos iniciales y podría consumir más espacio que un diseño SoC personalizado. Aunque los módulos Blue Gecko de Silicon Labs incluyen aprobaciones reglamentarias y certificaciones de estándares, lo que ahorra tiempo y costo posteriormente en el ciclo de desarrollo. 

El SoC es más pequeño y más barato que un módulo inalámbrico y probablemente el costo total de la lista de materiales será menor. Pero el diseño inicial conlleva costos ocultos que se deben considerar detenidamente. Algunos de los costos ocultos de un diseño basado en SoC incluyen: 

- Ingenieros y diseño de RF: un diseño de Bluetooth implica habilidades de diseño especializadas. Muchos factores pueden afectar el rendimiento, material de aislamiento de PCB, forma de trazo, incluso la ubicación de los tornillos.  Un ingeniero de RF puede costar hasta USD 200 000 al año. 
- Equipos e instalaciones de laboratorio: Una cámara anecoica puede costar USD 20 000 o más, más otros USD 30 000 a 50 000 para equipos. Las instalaciones de prueba de RF pueden costar varios miles de dólares al día.
- Diseño de PCB y selección de antena: Aunque los fabricantes de SoC generalmente incluyen diseños de referencia detallados y pautas de diseño, los desarrollos de RF pocas veces se ajustan al plan. Unos pocos cambios menores rápidos a la PCB pueden aumentar los costos considerablemente. 
- Aprobaciones reglamentarias y certificaciones: Un producto Bluetooth Smart debe cumplir los requisitos reglamentarios de la FCC, la UE u otras autoridades. También requiere la certificación de Bluetooth SIG. Mediante el uso de un módulo certificado previamente, el producto final se puede ahorrar muchas de las pruebas. 
- Menores ingresos por el producto debido a retrasos en el tiempo de salida al mercado: En el entorno de marketing de la actualidad, con sus ciclos de desarrollo cada vez más cortos, incluso un pequeño retraso puede traducirse en pérdidas de ingresos. 
- Administración y garantía de suministro: Para series de producción de bajos volúmenes, los módulos pueden mitigar el riesgo de suministro. Conseguir un solo módulo es mucho más sencillo que conseguir todos los componentes para poner un SoC en la placa. 

Aunque cada diseño es diferente, incluso algunos fabricantes de alto volumen de teléfonos móviles han elegido una solución de módulo.  Aquí encontrará un análisis detallado de las opciones de diseño de SoC en comparación con el de módulo. 

Bluetooth Smart Wireless Starter Kit 

Al margen de la ruta que decida tomar, el Bluetooth Smart Wireless Starter Kit (WSTK) ofrece una forma rápida y cómoda de evaluar hardware Blue Gecko y comenzar con el desarrollo de software. Se compone de la placa principal, una placa de radio de plugin y placas de expansión optativas.

La placa principal contiene conectividad Ethernet y USB, el sensor de temperatura y humedad Si7021, una pantalla de 128 x 128 píxeles, soporte de pila de botón y otros periféricos.

0516 SE Blue Gecko Wireless Image 2

Figura 2: El Wireless Starter Kit (WSTK) con el módulo inalámbrico BGM111 Blue Gecko y placa de expansión.(Fuente: Silicon Labs)

Una gama de placas de radio está disponible para el desarrollo de Blue Gecko. Para los módulos, hay dos versiones, BG111 y BG113, con diferentes especificaciones; para el trabajo de SoC, también está disponible la placa de radio EFR32BG. La placa de expansión ofrece funciones adicionales, como un acelerómetro, palanca de mando, LED y dos botones.

Opciones de desarrollo de software Blue Gecko

Para el desarrollo de código Bluetooth Smart con SoCs o módulos Blue Gecko, tiene la opción de dos entornos de desarrollo flexibles para usar con el WSTK. 

Para una aplicación simple con funciones estándar, o para crear el prototipo de una idea con un esfuerzo mínimo, considere usar BGScript.  Es un lenguaje de secuencia de comandos de estilo BASIC que ofrece un entorno rápido y sencillo para el desarrollo de software. BGScript crea aplicaciones Bluetooth Smart simples que se ejecutan en el módulo BGM111 o el BGM113.

Para requisitos más complejos o si va a diseñar hardware personalizado, puede desarrollar aplicaciones desde cero con C integrado mediante Simplicity Studio con su IDE basado en Eclipse IDE y conjunto integral de herramientas de optimización.  El código compilado se ejecuta en un SoC de Blue Gecko Bluetooth Smart. 

Para una evaluación rápida de código Blue Gecko, la Blue Gecko App se ejecuta en un teléfono inteligente o tablet con Bluetooth 4.0 o posterior.  Incluye cuatro aplicaciones de muestra: un termómetro de estado, una baliza minorista, detección de control remoto de llavero y una prueba de pila y perfil BLE.  

Desarrollo de software con BGScript

BGScript ofrece acceso a toda la funcionalidad necesaria para comenzar a codificar inmediatamente sin preocuparse por las complejidades del protocolo Bluetooth, el hardware integrado, programación, administración de memoria, etc. Las aplicaciones se pueden usar para funciones comunes automatizadas de Bluetooth Smart, como abrir una conexión, escuchar interrupciones GPIO e incluso leer y escribir datos mediante interfaces UART, SPI, I2C o GPIO.

0516 SE Blue Gecko Wireless Image 3

Figura 3:  El modelo de programación de BGScript Fuente (Silicon Labs)

Las aplicaciones BGScript también pueden realizar tareas de procesamiento de datos sencillas mediante las operaciones aritméticas, bit a bit, de búfer y de comparación de datos disponibles en BGScript.

BGScript está construido sobre la capa BGAPI en la pila de software Bluetooth Smart y se ejecuta directamente en un módulo inalámbrico BGM111 o BGM113. 

Es un lenguaje de programación controlado por eventos; un evento como el inicio del sistema, la conexión Bluetooth o una interrupción E/S, activa la ejecución del código de la aplicación asociado con ese evento. El código de script es interpretado durante el tiempo de ejecución por un intérprete de BGScript incluido como parte del firmware. 

Las aplicaciones completas se pueden implementar sin un controlador de host externo, lo que reduce el costo de la lista de materiales y reduce al mínimo el tamaño de la placa.

Desarrollo de software en 90 minutos

0516 SE Blue Gecko Wireless Image Green text

Figura 4: Una muestra del código BGScript que muestra el agente de escucha del evento de inicio con sus llamadas a la BGAPI (fuente: Silicon Labs)

Debido a que el programa de la aplicación BGScript se compone mayormente de llamadas a la BGAPI, se pueden ensamblar una aplicación rápidamente. La Figura 4 presenta una muestra del código: el agente de escucha del evento de inicio para la aplicación termómetro de estado, que es una de las 4 aplicaciones de ejemplo incluidas con Blue Gecko SDK. El código de la aplicación del evento de inicio se compone de varias llamadas a la BGAPI: 

-- establecer una clavija de puerto GPIO alta para permitir el control de un LED en la placa de evaluación
-- establecer los parámetros de publicidad a un intervalo de 100 ms
-- comenzar a transmitir paquetes de publicidad conectables para permitir que los dispositivos BLE remotos detecten y conecten
-- configurar un temporizador de repetición cada un segundo para programar lecturas de temperatura. 

Aquí podrá encontrar un análisis más detallado de esta aplicación.  Dos documentos útiles sobre el desarrollo de Blue Gecko BGScript son la Guía de desarrollo de BGScript, que abarca la función de lenguaje, sintaxis y operadores integrados y la Guía de referencia de API para los módulos BGM111 o BGM113, que detalla cada método API disponible en la pila.

Ventajas y limitaciones de BGScript

Como lenguaje interpretado, BGScript tiene puntos a favor y en contra.

Algunas ventajas son:

- Crea aplicaciones independientes que se ejecutan directamente en un módulo 
- Usa sintaxis simple y requiere una mínima experiencia en programación
- Utiliza características y operaciones estándar de lenguaje de programación
- Incluye funciones para simplificar tareas complejas y acceder a características comunes de la BGAPI 
- No requiere de programación C personalizada o una licencia de compilador

Algunas limitaciones son:
- Debido a que es un lenguaje interpretado y requiere sobrecarga adicional para ejecutarse, el rendimiento de BGScript es limitado en comparación con el control de API externo. BGScript puede ejecutar varios miles de comandos por segundo. Aunque BGScript se ejecuta en ambos módulos y SoC, su SDK no permite acceso completo a los periféricos del hardware subyacente.

Desarrollo de software basado en C con Simplicity Studio y Bluetooth Smart C-SDK

0516 SE Blue Gecko Wireless Image 4

Figura 5: Simplicity Studio es un eficaz marco de desarrollo de software en un IDE Eclipse (fuente: Silicon Labs)

BGScript controla muchas operaciones estándar y proporciona una capa de abstracción para la pila de Bluetooth Smart, pero se adecua mejor a aplicaciones más simples porque la API de BGScript no otorga acceso sin restricciones al hardware subyacente.

Si tiene una aplicación compleja con temporizadores o interrupciones, o si su aplicación debe comunicarse con un dispositivo externo, como un microcontrolador mediante UART, necesita Simplicity Studio, un entorno de desarrollo completo construido en un IDE basado en Eclipse.  El IDE ofrece flexibilidad a los desarrolladores al ser compatible con el compilador de ARM Embedded Workbench de IAR. También ofrece integración perfecta con herramientas de optimización como:

- AppBuilder, una herramienta interactiva para configurar módulos de código suministrados por Silicon Labs para implementar aplicaciones  
- Profiler, que permite una eficaz generación de perfiles de código en tiempo real al medir el consumo de energía
- Network Analyzer, que captura una traza de la actividad de redes inalámbricas
- Hardware Configurator, que automáticamente genera código para periféricos de hardware y E/S de puertos
- Bluetooth Smart C-SDK, que le permite desarrollar aplicaciones de software de sistema en chip (SoC) en C en un único microcontrolador.

0516 SE Blue Gecko Wireless Image 5

Figura 6: Desarrollo de Bluetooth Smart con Simplicity Studio (fuente: Silicon Labs)

La Figura 6 muestra el modelo para el desarrollo de BT Smart con Simplicity Studio. En oposición a la versión de BGScript, la aplicación interactúa directamente con la BGAPI. 

Para el desarrollo de Blue Gecko, los componentes obligatorios de Simplicity Studio son:

- Simplicity Studio Framework con el paquete de soporte EFR32BG
- Bluetooth Smart C-SDK
- IAR Embedded Workbench (IAR systems) para ARM 7.3 o superior, utilizado como compilador en el entorno de Simplicity Studio. 

Ventajas y limitaciones de Simplicity Studio

Simplicity Studio es un sistema de desarrollo con todas las funciones. Al igual que con cualquier sistema similar, lleva tiempo familiarizarse con las muchas herramientas de desarrollo de Bluetooth Smart.

Las ventajas incluyen:

- El código C compilado ofrece una operación más rápida que una solución BGScript interpretada
- Bluetooth Smart C-SDK ofrece acceso a los periféricos de hardware más subyacentes y permite una mayor flexibilidad en el desarrollo de aplicaciones cliente
- Hardware Configurator permite acceso a los periféricos de SoC y la configuración personalizada de periféricos SoC en PCB de OEM
- Energy Profiler permite la optimización de código en tiempo real al medir de forma nativa el consumo de energía (sin necesidad de ningún equipo de medición adicional o sondeo de hardware)

Algunas desventajas son:

- Mayor tiempo de desarrollo
- Requiere conocimientos profundos de C 
- Requiere la compra de una licencia para IAR Embedded Workbench (IAR systems) para ARM 7.3 o posterior

Conclusión 

Blue Gecko ofrece la combinación perfecta de características para permitir a los desarrolladores de BLE lanzar su producto al mercado en el menor tiempo posible, ya sea que usen un módulo certificado previamente o desarrollen una solución personalizada basada en SoC a partir de cero.  

Construido en un núcleo ARM Cortex-M4 estándar de la industria, Blue Gecko ofrece lo mejor de ambas opciones. Para pruebas rápidas de nuevas ideas o aplicaciones estándar, un entorno de desarrollo basado en BGScript puede poner en marcha las aplicaciones casi inmediatamente. Para el desarrollo desde cero, Simplicity Studio permite a los desarrolladores personalizar cada aspecto de su diseño, con una amplia gama de herramientas de optimización y módulos de código escritos previamente.

Al margen de la plataforma de software que se use, hay compatibilidad de software completa entre las soluciones SoC y de módulo de Blue Gecko, lo que permite a los desarrolladores migrar rápidamente de módulo a SoC a medida que cambien los requisitos. 

Ver Productos relacionados

SLWSTK6101B

Silicon Labs Placas y kits de desarrollo inalámbricos/RF Ver

Ver Productos relacionados

SLWSTK6020A

Silicon Labs Placas y kits de desarrollo inalámbricos/RF Ver

Últimas noticias

Lo sentimos, pero su selección de filtros no devolvió resultados.

Hemos actualizado nuestra política de privacidad. Por favor tome un momento para revisar estos cambios. Al hacer clic en Acepto, usted está de acuerdo con la Politica de Privacidad de Arrow Electronics y sus condiciones de uso.

Nuestro sitio Web coloca cookies en su dispositivo para mejorar su experiencia y nuestro sitio. Lea más sobre las cookies que utilizamos y cómo desactivarlas aquió. Es posible que se utilicen las cookies y tecnologías de seguimiento con fines de marketing.
Al hacer clic en "Aceptar", usted está consintiendo la colocación de cookies en su dispositivo y el uso de tecnologías de seguimiento. Haga clic en "Leer más" a continuación para obtener más información e instrucciones sobre cómo desactivar las cookies y tecnologías de seguimiento. Si bien la aceptación de cookies y tecnologías de seguimiento es voluntaria, la desactivación de estos puede resultar en que el sitio web no funcione correctamente, y es posible que ciertos anuncios sean menos relevantes para usted.
Respetamos su privacidad. Lea nuestra política de privacidad aquió