Android Arduino App

Arduino Honduras Santiapps Marcio Valenzuela

Arduino Android App: Parte IV

Ya vimos como conectarnos a dispositivos BT.  Ahora veamos como comunicarnos con esos dispositivos!

Requisitos:

  1. Computadora (mac)
  2. Arduino UNO
  3. Arduino IDE
  4. HM10/11
  5. LED & Resistor 220O
  6. Android Studio (http://developer.android.com/sdk/installing/index.html?pkg=studio)
Arduino (Iot) Simple Tutorial Arduino Android Santiapps Marcio Valenzuela
Arduino (Iot) Simple Tutorial Arduino Android

 

Ahora vamos a crear una aplicación para Android y un sketch para Arduino y hacer que se comuniquen de forma sencilla para controlar una LED.

 

En el folder de la aplicación Android esta incluido el código del Arduino Sketch (ino).

Veamos la Android App y entendamos que datos vamos a recibir primero para poder enviarlos desde nuestro Android.  La aplicación contiene 4 archivos .java:

  1. DeviceScanActivity
  2. DeviceControlActivity
  3. BluetoothLeServices
  4. SampleGATTAttributes

Lo importante es conocer la estructura para entender que esta sucediendo.  BluetoothLeServices es una clase encargada de administrar dispositivos BLE, conectar y desconectarse de ellos y transferir datos.  La actividad inicial es DeviceScanActivity y contiene métodos como onCreate (llamado al inicio) y scanLeDevice (detecta dispositivos BLE).  Luego viene DeviceControlActivity, responsable de métodos como displayGattServices (detectar servicios en dispositivos BLE), readSeek (lee el componente seekbar) y makeChange (lee o escribe datos via bluetooth.  SampleGattAttributes contiene información como las UUIDs usadas en comunicación BLE Gatt.

En este caso estamos usando un modulo BT HM10, que es mas avanzado porque soporta BT4.0 o Smart BT.  Para conectarse a un dispositivo de estos es un poco mas complicado porque utiliza un protocolo GATT para asegurar las conexiones y hacerlas mas eficientes.  Es recomendado leer sobre BLE GATT en la web.  Estos son los archivos finales:

 BT4LEDTest.zip

Corremos la app en el celular y podremos buscar dispositivos con BT y conectarnos a ellos y controlar una LED o mas!

Leave a Reply