Arduino + iPhone (Nivel 2)

4 comentarios


En el anterior vídeo de Arduino, encendíamos y apagábamos un LED con el iPhone. En este, vamos a ir un poco más allá. Vamos a encender y apagar una hilera de LEDs en función a la frecuencia de la música. Y os preguntaréis, ¿qué pinta aquí el iPhone? Pues bien, usaremos el iPhone para captar el sonido, y enviará las frecuencias de sonido a Arduino. Necesitaremos un Arduino, un Ethernet Shield, un puñado de cables, una breadboard, 7 LEDs y un iPhone. Además, debemos descargas las librerías que mencionamos en el anterior post.

Para que os sea más fácil probarlo, he comprimido tanto el proyecto de Arduino como el de Xcode y lo he subido para que lo podáis descargar desde aquí. Como siempre, no os olvidéis de cambiar la IP de en el código de ambos proyectos por la que le corresponde en vuestro caso.

¡Un saludo!

Arduino + iPhone (Nivel 1)

9 comentarios


Como seguramente sabréis, tengo un Arduino desde hace algunas semanas. El caso es que me he puesto a trastear con él y he cosillas bastante interesantes. Además, el módulo de Ethernet multiplica sus posibilidades, pudiendo controlar el Arduino desde un iPhone, iPad o vía web. Aprovechando esto, he hecho un pequeño Hello World, que en este caso ha sido básicamente encender un LED desde el iPhone (aunque perfectamente se podría hacer desde otro terminal o desde el navegador). Para ello, he usado la librería de Ethernet_28J60, que además de añadir compatibilidad con más placas tanto de Ethernet Shield como de Arduino, es mucho más simple que la oficial. La podéis descargar desde aquí. Para instalarla, descomprimís el fichero, os váis a la aplicación de Arduino, hacéis click derecho y seleccionáis “Mostrar contenido del paquete”. Después, vais hasta la ruta /Contents/Resources/Java/Libraries y ahí dentro arrastráis las dos carpetas del zip que hemos descargado.

Más

MapView, el cambio de iOS 5 a iOS 6 (Workether, día 15)

Deja un comentario

Como sabéis, con la inminente llegada de iOS 6, los mapas en iOS ya no están proporcionados por Google, sino que son OpenStreetMaps. Esto implica que no tendremos StreetView pero sí que tendremos otra apariencia en los mapas. Además, para no suponer un quebradero de cabeza para los desarrolladores, Apple ha mantenido los mismos métodos, propiedades, instancias… en el framework de MKMapView. Y digo esto porque en la app que estoy haciendo uso este framwork para un feature bastante chulo de la app.

¡Un saludo!

¿Qué es el coworking? (Workether, día 14)

Deja un comentario

Aunque haya venido a Workether como desarrollador iOS, no son una empresa enfocada a eso, sino al coworking. Os diría que lo buscáseis en la Wikipedia (os lo dejo de todas formas), pero os lo voy a explicar así por encima. El coworking es una nueva forma de trabajo, en la cual se comparte un espacio de trabajo entre profesionales de distintas ramas. A su vez, también se comparten las ideas de todos, y surgen nuevas ideas y proyectos. Y poco más. Si os interesa, podéis mirarlo en la Wikipedia en el enlace de arriba, o venir a Workether, donde os informaremos adecuadamente.

¡Un saludo!

UIViewAnimation y controles personalizados (Workether, día 13)

Deja un comentario

A la hora de desarrollar una app, un punto muy importante a tener en cuenta es apariencia de la aplicación (UI, User Interface) y la experiencia de usuario (UX, User Experience). Por eso, la interacción y la usabilidad debe de ser algo a llevar muy al día en la aplicación. Por ejemplo, meter animaciones (como UIViewAnimation) o controles personalizados, hace que el usuario se sienta a gusto usando la aplicación. Para los controles personalizados, os recomiendo la web de CocoaControls, ya que tiene controles tanto para iOS como para Mac muy chulos.

El otro ejemplo que he puesto ha sido UIViewAnimation. Lo bueno es que es muy fácil de usar para hacer cosas simples. Pongamos un ejemplo: queremos hacer un Fade In de un label. Lo que tenemos que hacer es establecerle al label un alpha 0 (label.alpha = 0) y una animación:

[UIView animateWithDuration:1 delay:0 options:UIViewAnimationCurveEaseInOut animations:^{ label.alpha = 1; } completion:nil];

Con ese código, el label hará un Fade In, y la animación durará un segundo. Podemos configurar más cosas como la duración, el delay (retraso), métodos que se ejecuten al terminar la animación, otros métodos para animar…

¡Un saludo!

¿SQLite es el futuro? Nope (Workether, día 12)

1 comentario

Otro día más, os traigo mi blog diario sobre mi estancia en Valencia con Workether. Y como bien podéis leer en el título, vengo a hablar de SQLite. No de mi libro, otro día si eso, sino de SQLite en entornos móviles. Y no, no es el futuro. Para el que no lo conozca, es un sistema de bases de datos similar a SQL y algo más alejado, pero con ciertos rasgos de similitud, a MySQL.

La razón por la que estoy usando SQLite y no CoreData (“base de datos” en iOS) es básicamente que me gustaría aprender CoreData pero no tengo tiempo. La solución: usar SQLite. Con crearte una base de datos simple y aprenderte las querys principales como INSERT, ALTER y demás, puedes ir tirando. Una query es como un método que se ejecuta sobre la base de datos y, obviamente, tiene un resultado distinto según la que uses. Por ejemplo, la query INSERT INTO TABLE (‘Name’, ‘Description’) VALUES (‘SQLite’, ‘Base de datos’) haría lo siguiente: meter en la tabla ‘TABLE’ los valores ‘SQLite’ y ‘Base de datos’ en ‘Name’ y ‘Description’ respectivamente. Si queréis aprender SQLite, os recomiendo esta guía de iniciación. Para hacer algo simple está bien, pero si quieres hacer algo serio y tienes tiempo, aprende CoreData sin duda.

¡Un saludo!

¿Problemas con el código? Busca inspiración (Workether, día 11)

Deja un comentario

Y digo día 11 porque realmente llevo en Valencia con ellos 11 días. Aclarado esto, vamos al lío. Seguramente no sea el más experto ni el más indicado para decir esto, pero cuando llevas un número considerable de horas metido de lleno con una aplicación, por el cansancio o de lo quemado que estás, llega un momento en el que no te sale nada: errores por todos lados, la aplicación peta cada vez que la abres, etc. En estos casos se suele recomendar descansar un poco, tomar algo, o darte una vuelta para que te de el aire.

Si nada de esto funciona, no desesperes, hay otras soluciones, las cuáles me enseñó Pepe Borrás. Buscar inspiración. Sí, tal cual. Si estás atascado con una parte de la aplicación en concreto, te recomiendo que le eches un ojo a webs como AppStorm o DesignM.ag. Aunque para mí la mejor de todas es Meerli. Son webs que recopilan las mejores interfaces de aplicaciones para iOS, y vienen muy bien para mirar cómo hacer un menú, una sección, un control…

¡Un saludo!

Older Entries

A %d blogueros les gusta esto: