Bombilla LED de colores con Bluetooth Low Energy

From Wiki Makespace Madrid
Revision as of 11:52, 21 February 2014 by Jmg (Talk | contribs) (Detalles)

Jump to: navigation, search

Bombilla LED de colores con Bluetooth Low Energy

ESTADO: Propuesto para M-Week Feb 2014

Miembros: Javier M.

Objetivo

Controlar una bombilla LED desde internet a través de un móvil

Motivación

Aprender cómo funciona Bluetooth Low Energy y poder integrarlo después en otros proyectos

Antecedentes

Tengo una bombilla yeelight comprada en Seeedstudio. Hay publicado un pseudo SDK para Android. Las últimas semanas he estado trasteando con Bluetooth Low Energy y el último API de Android. Tras el "Hola mundo", ahora me gustaría programar algo "de verdad".

No tengo ni experiencia, ni dispositivos, ni entorno de desarrollo iOS. Si alguien se anima, se puede hacer el mismo proyecto en paralelo para entorno Apple y comparar las plataformas.

Para interactuar con la bombilla, y si da tiempo quiero utilizar el SDK de twinsprite, una startup de unos amigos que une objetos virtuales y objetos físicos.


Métodos y técnicas utilizadas

  • Bombilla yeelight
  • Bluetooth Low Energy
  • Android (+ iOS?)
  • API de twinsprite


Detalles

Tras leer el código, esto es todo lo que hay que saber para controlar la bombilla yeelight:

   public static final String YEELIGHT_SERVICE = "0000fff0-0000-1000-8000-00805f9b34fb";
   public static final String CHARACTERISTIC_CONTORL = "0000fff1-0000-1000-8000-00805f9b34fb";
   data = r + "," + g + "," + b + "," + bright + ","
   // 30 2C 31 30 38 2C 36 30 2C 38 34 2C 2C 2C 2C 2C 2C 2C
	
   // 128,1,0,50,,,,,,,,
   // 31 32 38 2C 31 2C 30 2C 35 30 2C 2C 2C 2C 2C 2C 2C 2C
	
   characteristic.setValue(data.getBytes());
   gatt.writeCharacteristic(characteristic);