Esta entrada del blog fue publicada en The Verge el 19 de abril de 2016 [enlace].
La primera remesa de Flic creamos no se puede actualizar con firmware. Por desgracia, esto significa que no están preparados para el futuro y no se pueden utilizar con gran parte de las nuevas funciones que ofrecemos. Es una pena.
El primer lote es el más importante.
Shortcut Labs la primera empresa que nosotros (bueno, la mayoría de nosotros) hemos dirigido y Flic es nuestro primer producto. Somos una startup joven con empleados y directivos jóvenes, sin experiencia real en la creación de productos de hardware conectados. Aunque Flic «solo un botón», crearlo ha sido mucho más difícil de lo que podríamos haber imaginado.
La campaña de crowdfunding que llevamos a cabo para Flic una de las más exitosas de los países nórdicos. Miles de personas nos apoyaron desde los primeros días de la campaña, creyendo en la idea y confiando en que la haríamos realidad. Arriesgaron su dinero real, asumiendo un alto riesgo.
Son personas que creen en la tecnología, que se enorgullecen de apoyar a las empresas emergentes y que se lo cuentan a sus amigos. Difunden el mensaje y la gente les escucha cuando hablan. Son las semillas de la financiación popular.
Sin embargo, estas personas, los primeros en adoptar el producto, son a quienes nosotros y muchos otros proyectos de financiación colectiva decepcionamos una y otra vez. Esto se debe a que son ellos quienes más sufren los retrasos y quienes recibirán el primer lote.
Búsqueda en Google del coste de los componentes
Cuando se intenta lanzar un producto de hardware por primera vez, es necesario realizar estimaciones de costes previas. Se empieza por el coste de los componentes y una estimación del precio de cada uno de ellos. En las últimas fases del ciclo de diseño, se puede solicitar a las fábricas un presupuesto sobre los precios por volumen y los plazos de entrega de todos los componentes finalizados necesarios para obtener una estimación de costes mucho más precisa. Pero mucho antes de eso, se puede hacer lo que hicimos nosotros: buscar en Google los costes de los componentes. Intente evitarlo y, lo que es más importante, no se fíe.
Calculamos el coste máximo aceptable para fabricar Flic, sabiendo que teníamos que mantenernos por debajo de esa cifra para que el producto fuera viable desde el punto de vista comercial. Buscamos en Google los precios de los componentes y obtuvimos una idea básica.
La memoria, según se vio después, es uno de los componentes más caros de nuestro diseño, ya que el tamaño del componente debía ser mínimo para encajar en nuestra placa de circuito impreso, que es muy compacta.
Buscando en Google, rápidamente comprendimos que duplicar la capacidad de memoria duplica el precio.
Sabíamos que se necesitaba el tamaño de memoria para el firmware y algo de espacio para optimizaciones. Con ese espacio de memoria, podíamos actualizar todos los parámetros más importantes, como los intervalos de tiempo de conexión y los algoritmos de ahorro de energía, y aún así dejar algo de espacio disponible para que los Flic recordaran a qué teléfonos se les permitía conectarse. Pero para actualizar todo el firmware desde cero, necesitaríamos duplicar el espacio de memoria.
Nuestro ingeniero jefe fue claro: si no conseguimos más memoria, no podremos actualizar completamente el producto.
Pero, ¿por qué necesitaríamos actualizar completamente el firmware? La funcionalidad principal estaba bien probada, no tenía errores y todos los parámetros de optimización aún podían actualizarse. La funcionalidad es muy sencilla: ¡solo hay que enviar un único evento a un host conocido cuando se pulsa! Además, no previmos ni prometimos que Flic más funcionalidades principales con el tiempo (las integraciones en la aplicación, por ejemplo, Actions, aún podríamos actualizarlas).
Según nuestra investigación en Google, duplicar la memoria duplicaría el precio de los componentes, lo que añadiría unos 4 dólares al precio total de venta al público.
Se suponía que la tecnología estaba preparada para el futuro.
Flic Bluetooth Low Energy, que es una parte integral de Bluetooth 4.0. Cuando Flic concibió la idea de Flic por primera vez en 2012, esta tecnología prácticamente solo existía sobre el papel. Dos años más tarde, cuando estábamos finalizando el diseño, Bluetooth Low Energy se incorporó a todos los nuevos smartphones y tabletas del mercado.
Google Android 6.0 Marshmallow es el primer sistema operativo en implementar Bluetooth 4.1. Las diferencias con respecto a Bluetooth 4.0 son mínimas.
El lanzamiento de Marshmallow coincidió perfectamente con el envío del primer lote.
En BT 4.0, algunos bits de la configuración de emparejamiento se reservaron para uso futuro. Se suponía que estos parámetros debían ignorarse, ya que podrían acabar utilizándose en futuras especificaciones de protocolo. En la implementación de la pila Bluetooth central del chip, un código con licencia de un proveedor externo, estos bits ignorados no se analizaron correctamente.
No fueron ignorados, fueron nulos.
Aunque esa diferencia ridículamente pequeña no había tenido ningún impacto anteriormente, de repente provocó Flic todos los intentos de emparejamiento entre los nuevos dispositivos Android y Flic . Nos dimos cuenta de ello justo cuando enviábamos nuestro primer lote. Pedimos a nuestros patrocinadores que no actualizaran a Android 6.0 hasta que encontráramos una solución.
También preguntamos si alguien conocía a alguien del equipo de Android que pudiera ayudarnos. Solo un par de horas después, nos presentaron a la persona adecuada en Google (¡el poder de nuestra comunidad!) que nos ayudó y parcheó Android para Flic, básicamente incluyendo en la lista blanca el rango MAC Bluetooth de ese lote. En Android 6.0.1 y futuras revisiones, ese primer lote sigue funcionando.
¿Cómo es posible que no nos hayamos dado cuenta antes, en las versiones beta de Android 6? Misteriosamente, el rango MAC utilizado por las placas de desarrollo de nuestro proveedor de chips ya estaba incluido en la lista blanca de Android. Nadie sabe por qué.
Una reacción rápida
Por nuestra parte, el parche para corregir el error fue sencillo e inmediatamente lo aplicamos a las futuras versiones de Flic fábrica. El primer lote no funcionaba mal gracias a nuestros amigos de Google. Pero también nos hizo pensar en algo.
¿Alguna vez comprobamos realmente el precio real de ese componente de memoria doble que nos permitiría actualizar el firmware de los nuevos Flics?
Resulta que el doble de capacidad de memoria no equivale al doble de coste. Más bien al contrario, la diferencia de precio es mínima cuando lo cotizan los profesionales. Rápidamente compramos decenas de miles de memorias más grandes, vendimos nuestro stock actual de memorias más pequeñas y escribimos el código para poder actualizar Flic forma inalámbrica. Por si acaso, por si volviera a ocurrir algo así.
Supuestos iniciales sin cuestionar
La falsa suposición de que el doble de memoria equivale al doble de precio causó muchos problemas, no solo a nosotros, sino también a nuestros clientes más importantes. Además, en retrospectiva, fue una estupidez por nuestra parte no creer que serían necesarias actualizaciones completas del software al tratar con una tecnología totalmente nueva.
Tuvimos otra desafortunada suposición inicial de que hoy realmente afecta a ese importante primer lote. «Sabíamos desde el principio» que no podríamos iniciar Siri en iOS con Flic. Apple no permitía ese tipo de funcionalidad utilizando el perfil Bluetooth personalizado y la conexión de la aplicación que tuvimos que crear para hacer de Flic es.
Resulta que lo cambiaron hace un tiempo y que Flic, con una actualización de firmware, podía implementar nuevos perfiles Bluetooth con un algoritmo de cambio de código (¡muy!) inteligente que inventaron nuestros brillantes ingenieros. Desde el lanzamiento de nuestra Flic 2.0 a principios de esta semana, Siri y muchas otras funciones nuevas que creíamos imposibles ahora son posibles.
Pero no si tu Flic del primer lote con el chip de memoria más pequeño.
Gracias por leer, espero que hayas disfrutado de esta pequeña introducción a nuestros retos. Si formas parte de nuestro primer grupo, encontrarás una oferta especial para nuevos Flics en tu bandeja de entrada.
Joacim


















