Hoy Sábado voy a hablar un poquito sobre CSR y sus soluciones bluetooth. CSR es la empresa más importante a nivel mundial de chips bluetooth y con casi con toda seguridad todos estamos utilizando algún chip de ellos, pues nada menos que el 70% de los equipos que tienen bluetooth, especialmente los móviles, tienen un chip CSR, los mejores.
CSR vende chips bluetooth, no módulos bluetooth. Decir que utilizar estos chips no es sencillo, es más, es muy complicado, absolutamente nada que ver con utilizar un módulo bluetooth como los módulos bluetooth de Bluegiga (que por cierto, tienen en su interior un chip de CSR). Los chips de CSR están pensados para aquellas empresas que pretendan vender grandes cantidades de equipos, es decir, cuando hablamos de más de 20.000/30.000 equipos al año, entonces sí sale a cuenta, económicamente hablando, meterse a nivel de chip. Cantidades más pequeñas no compensa y es mejor trabajar con módulos.
¿Y en qué consisten los chips bluetooth de CSR?
CSR fabrica los chips que llama Bluecore. Tiene varias familias de chips que han ido desarrollando a lo largo de los últimos años. Actualmente tienen el Bluecore3, Bluecore4,Bluecore5, cada uno de ellos con distintas variantes, y el nuevo Bluecore6 (únicamente versión ROM por el momento),
El Bluecore 3 y Bluecore 5 están más pensados para aplicaciones de audio, mientras que Bluecore 4 está más pensado para aplicaciones de datos y es algo más económico (pues no tiene DSP). Veamos un diagrama que muestra cómo es internamente uno de estos Bluecore. Veamos el Bluecore5.
Como véis este chip es una solución completa, pues a nivel interno cuenta con una parte de radio, una memoria RAM, un codec de audio, un microprocesador RISC y un potente DSP (Kalimba) utilizado por los codecs para MP3, AAC, … Lo único que tiene esta versión de Bluecore5, a diferencia de la Bluecore3, es la memoria FLASH externa. En Bluecore3 puede tener la memoria FLASH interna o externa, pero es menos potente a nivel de DSP y procesador.
En cuanto a buses, pues la lo véis en el diagrama, el chip cuenta con un bus UART o USB, GPIOs, entrada / salida de audio, PCM/SPDIF y SPI.
¿Y puede programarse el micro de este Bluecore?
Sí. Puedes programar este chip con tus propios programas. Todo el proceso de programación y debug de la aplicación se hace a través del puerto SPI.
Entiendo que si haces una aplicación embebida en este chip estamos utilizando la “pila interna” bluetooth del chip de CSR. Pero, ¿puede utilizarse este chip simplemente como una “antena bluetooth” utilizando la pila bluetooth de un PC o procesador externo?
Efectivamente. Los chips de CSR tienen lo que ellos llaman las PSKeys, que son cómo unos valores de configuración no volátiles. Una de estas PSKeys sirve para indicar si el control del chip será a través de HCI, es decir, controlado por un PC o procesador externo a través del puerto serie o USB o bien tomará el control la aplicación embebida dentro del propio chip.
¿Y cómo es el entorno de desarrollo de CSR?
Bueno, para desarrollar aplicaciones para los chips de CSR se utiliza el entorno BlueLab, un entorno de desarrollo, similar en aspecto a Visual Studio o similares, con el que se puede crear aplicaciones customizadas.
¿Y hay ejemplos y librerías?
Sí, el entorno tiene muchos ejemplos y librerías (da un vistazo a www.csrsupport.com ) , pero como dije en el inicio del post, no son sencillos. Básicamente la programación se basa en utilizar los cientos de funciones con las que cuenta el entorno de CSR. Cuando compiles tu aplicación, ésta se ejecutará sobre una máquina virtual, es decir, no vas a generar código que se ejecute directamente sobre el procesador del chip, sino sobre una capa de software superior, teniendo siempre la máquina virtual de CSR corriendo por debajo de tu aplicación.
¿Y hay otras utilidades de desarrollo?
Sí, por ejemplo también tienen lo que llaman el Bluesuite, un conjunto de utilidades. Está por ejemplo la utilidad PSTools, con las que podrás cambiar las PSKeys del micro, el BlueFlash, una utilidad para programar la flash del micro …
¿Y si yo quiero utilizar CSR y luego poner el logo bluetooth en mis equipos, puedo hacerlo?
Sí, previo pago de todas las certificaciones correspondientes. Prepara 30.000 euros. Piensa que los chips de CSR no son un end product. Por eso es conveniente utilizar CSR para cantidades muy grandes, pues si pretendes hacer pocos miles de unidades, entre los costes del entorno de desarrollo de CSR, los costes de certificaciones, los costes de horas de ingeniería (no es fácil programar CSR), no te saldrá rentable.
¿Y que puedo hacer si quiero hacer aplicaciones bluetooth para pocos miles de equipo?
La mejor solución es utilizar módulos bluetooth. Por ejemplo los módulos bluetooth deBluegiga. Éstos realmente están basados en el chip de CSR, es decir, no son más que una plaquita donde está montado el chip Bluecore 4 ó 5, la antena, el regulador de tensión y todos los componentes necesarios. Además tienen embebido lo que llaman el protocolo iWrap, un sencillísimo protocolo con lo que con un micro cualquiera, un simple PIC de los más baratos, a través de una uart y con comandos AT, puedes gestionar complejas conexiones bluetooth. Es decir, tienes casi toda la potencia de CSR, pero con mucha más sencillez, mejor soporte (Bluegiga da soporte a pequeños clientes, CSR no) y barato en cuanto certificaciones.
Para tu curiosidad decirte que el protocolo iWrap desarrollado por Bluegiga está desarrollado con el BlueLab de CSR.
Evidentemente si quieres puedes comprar el BlueLab y programar tu propia aplicación dentro del módulo de Bluegiga, pero entonces perderías la condición de end-product y tendrías que pagar de nuevo las certificaciones correspondientes. En cambio si utilizas el módulo con el iWrap, puedes poner tranquilamente en tu equipo el logo bluetooth sin coste alguno, puesto que Bluegiga suministra los módulos como end-product, ya que Bluegiga ya ha pagado todas las centificaciones correspondientes.
Fuente
No hay comentarios:
Publicar un comentario