Sketch para actuar sobre un relé a una hora fija en un Arduino YUN

Un lector me ha preguntado sobre la manera mas sencilla de actuar sobre un relé a una hora determinada para encender y apagar un sistema de riego.

Despues de pensarlo un rato, creo que la manera mas efectiva es mediante un sketch que utilice la librera Bridge para saber la hora actual del arduino Yun y en funcion de eso varie el estado de un pin digital, al cual conectaremos nuestro rele, y ya tenemos nuestro sistema de riego funcionando.

A continuacion teneis el sketch, que es sencillamente una modificacion del sketc “TimeCheck” de ejemplo del ide de Arduino:

(más…)

Leer Más

Actualiza el firmware del Arduino YUN

Hace meses que tengo mi arduino YUN abandonado, pero hoy he tenido un poco de tiempo para trastear de nuevo con el, y lo primero en lo que me he fijado es que en los últimos meses el firmware del arduino Yun ha sido actualizado varias veces (me refiero a la version del sistema operativo Linino del Yun).  A continuación tienes un pequeño tutorial de como actualizar el firmware del arduino YUN.

(más…)

Leer Más

Publicado Android Studio 0.8.14

Parece que esta versión es corrige una serie de bugs importantes de la versión 0.8.13.

  • El gestor de emuladores AVD vuelca a una consola integrada en Android Studio información más detallada al crear y arrancar un emulador. Además los ajustes por defecto de ram y otros parámetros  para los emuladores estándar han sido afinados.
  • El editor de XML ha sido actualizado para incorporar los nuevos tags y todo lo relativo a la nueva API de Android 5 Lollipop

Como es habitual, solo podrás instalar Android Studio 0.8.14 a partir de la versión 0.8.13 como actualización.

Leer Más

Novedades en Android Studio 0.8.13

Poco menos de una semana después de la aparición de la versión 0.8.12, ya tenemos aquí la versión 0.8.13. Las novedades no son muchas: bugs de la anterior versión corregidos  y la posibilidad de crear emuladores para los recientemente presentados Nexus 6 y Nexus 9.

Solo podéis aplicar el parche para instalar la version 0.8.13 si tenéis la versión 0.8.12 que requiere de una instalación manual y podéis descargar aqui.

Leer Más

¿Que directorio de recursos usa mi app de Android?

Como ya es sabido, la estructura de directorios de un proyecto de Android contiene una carpeta llamada “res”, que a su vez contiene diversas subcarpetas con los recursos del proyecto, bien sean imágenes (directorio /res/drawable), cadenas de texto (fichero strings.xml en el directorio /res/values)  etc.

Y también sabemos que para luchar contra la fragmentación del ecosistema Android, estas carpetas pueden asociarse con un segmento de dispositivos determinado. Por ejemplo, la carpeta /res/drawable-hdpi contendría recursos gráficos para dispositivos hdp, y análogamente para la carpeta /res/xxhdpi.

Cuando nuestro proyecto crece y su complejidad aumenta, y queremos abarcar varios segmentos de dispositivos diferentes con varias carpetas de recursos personalizados diferentes, podemos llegar a un estado de confusión sobre que carpeta está usando en cada momento nuestra app. Pero hay un truco muy sencillo para saber de que carpeta esta cogiendo nuestra app los iconos o los valores de dimensiones.

(más…)

Leer Más

Desactiva las llamadas a Log antes de publicar tu app de Android

Todos utilizamos la clase  android.util.Log para volcar a la consola mensajes de error o que nos informen de lo que está haciendo nuestro programa. Pero de acuerdo con Google en su documento “Preparing for release“, es muy importante desactivar el logging antes de publicar una aplicación en versión release:

Turn off logging and debugging

Make sure you deactivate logging and disable the debugging option before you build your application for release. You can deactivate logging by removing calls to Log methods in your source files.

Pero seamos realistas: ¿es práctico eliminar todas las llamadas a los métodos de la clase Log de nuestro código fuente cuando vamos a crear nuestro apk de release? Afortunadamente no hay que llegar a tanto.

(más…)

Leer Más

Swipe to Refresh en Android, como implementarlo correctamente

Uno de los patrones de diseño más útiles en Android es el gesto “Swipe to Refresh”. El layout SwipeRefresh es básicamente un viewgroup que puede contener una objeto del tipo view que pueda hacer scroll, lo cual lo reduce básicamente a un scrollview, un gridview o un listview.

Lo que hace el layout SwipeToRefresh es gestionar los eventos que suceden al realizar el gesto de “tirar” de la vista con scroll hacia abajo. La vista se desplaza ligeramente, y rebota hacia arriba. En ese momento se invocan el método que hayamos definido para actualizar la información que mostramos en nuestra interfaz, mientras se visualiza una barra de progreso indeterminada en la parte superior. (más…)

Leer Más