Clase de Arduino (nivel principiante)

El pasado sábado dimos con Xavier Tisaire una clase de iniciación a Arduino para principiantes que duró poco más de 6 horas y en la que se explicaron los conceptos básicos de este entorno.

En el grupo de alumno tuvimos gente que no había usado nunca Arduino y que provenían de diferentes ámbitos, la mayoría sin relación alguna con la electrónica o programación. También hubieron asistentes de todas las edades.

El curso se planteo de manera que pudiera ser seguido por todos sin necesidad de tener ningún conocimiento previo.

A cada participante se le proporcionó el material necesario para ejecutar ejemplos prácticos durante el curso: Arduino I, breadboard, led set, resistencias, 8×8 led display y un juego de cables.

Comenzamos con una introducción de ejercicios básicos para entender el IDE y el lenguaje. Continuamos con la explicación de las salidas de Arduino poniendo el ejemplo práctico de control secuencial de leds al estilo luces de “El coche fantástico”. En la segunda parte se explicó el control de la matriz.

Pese a ser muchos conceptos muy condensados en el tiempo de duración de la clase, los asistentes no tuvieron problemas en seguirlos y se mostraron muy motivados por seguir descubriendo el potencial de Arduino. Creo que fue muy interesante para todos.

Aquí podéis ver las fotos y vídeos.

Este es el link del github que creamos para seguir los contenidos del curso: https://github.com/tisaire/arduino/wiki

 

IMG_20141025_124947

Read the rest of this entry »

Advertisements

Como usar el DS1307 con Arduino

Para aquellos que quieran utilizar un Real Time Clock (RTC) y más concretamente un DS1307 de forma rápida y fácil con Arduino aquí dejo un código básico listo para usar.

Para empezar hay que conectar el DS1307 al arduino tal como se indica en la referencia de la librería wire:

Para la mayoría de la placas (Arduino UNO y Nano):

  • SDA (línea de datos):  pin analógico 4
  • SCL (línea de reloj) : pin analógico 5.

En Arduino Mega:

  • SDA (línea de datos):  pin digital 20
  • SCL (línea de reloj) :  pin digital 21

Read the rest of this entry »


GBcamera ImageSaver

I have just found an old code I wrote, some time ago, to get Game boy camera images from the cartridge and save them in a computer. Probably nobody cares anymore about Game Boy and Game Boy Camera, I can imagine. But I was born in the 80’s, and for me that’s still funny.

Ok! I know GB Camera has only 23kpx monochrome sensor, but in 1998 Casio just launched Casio QV-10 with 250kpx sensor and one year later Nikon released Nikon D1 (2.8Mpx). Unfortunately at that time I was too young for a 6k$ camera.

So GameBoy Camera was a pretty awesome toy in the late 90’s. With GB camera you could take pics and check them without waiting for any chemical process. There is a menu for editing the photos with endless options, and another one to make funny animations. You can even rotate the lens to make selfies!

Read the rest of this entry »


Crushing candies

King company, developers of Candy Crush Saga video game, seems to be proud of their willful evil attitude (1, 2, 3, …). It seems they are trying to grab an all time classic video game pretending to be the original creators.

But we have to accept Candy Crush is a crazy social phenomena with 46 million average monthly users. It is installed on almost every smartphone, tablet, or electronic device.

I, personally, lost the interest on it when I realize that all the levels where just the same with random difficulty. Most of the time I had the impression that it was not possible to accomplish the level if you didn’t play a minimum number of lifes.

That’s why I started looking into the application and tried to figure out how it works, that’s what I have found:

There are many applications to cheat, most of them give you infinite lives or boosters. But what about beating a level without even playing it?

Charles Web Debugging Proxy its a very powerful application that allows you to motorize internet connections. You can even use breakpoints to change the requests and the response allowing to do MITM attacks in a very simple way. The interface is awesome. With this application I started looking inside candy crush communication with king server. Most of the communication is done in HTTP, and they only use HTTPS for a few options.

Charles

Read the rest of this entry »


Cheating on android

Resulta que el otro día me baje un juego para android para esos ratos muertos.
Se trata de FilmsQuiz, un juego donde sale un pequeño dibujo y tienes que acertar la pelicula. Simple, pero divertido, aunque en mi opinión tiene un par de problemillas por solucionar.
star_wars

Como podéis ver las primeras películas son realmente fáciles, luego la cosa se complica.
Resulta que llego a un momento en el que casi había descubierto todas las películas, pero no podía adivinar alguna de ellas, incluso con las pistas. No podía sacarme la imagen de la cabeza así que opte por la siguiente solución:

Read the rest of this entry »


From: Filmaffinity To: IMDB

logo

I have been using filmaffinity website for a long time. But now its server seems to have some issues; It is not so fast as it used to be and the search engine is not very efficient.

Some time ago I noticed that it is possible to download all your information from facebook. It made me think it would be very useful to have the same option available in filmaffinity.

As it is not implemented on the website (or I haven’t found it), instead of requesting this functionality to filmaffinity staff I decided to code it myself. With these application your are able to download user personal movie list and make a backup on local disk.

These lines are my first Python code lines. Previously I coded in assembly, C and VisualBasic but never in Python.
Python is surprising. It was very easy to learn the basics and it is such a good experience when the code just flows and the ideas work.  In fact the code flows so fast that I obtained my list too easy. So I decided to move my votes from filmaffinity to IMDB using the same script (in my case ~3500 movie).

You can find the code here: https://github.com/gism/filmaffinity2IMDB

The structure of the local CSV with all the information is as follow:
FA movie title | FA movie year | FA movie director | Vote | FA movie code | IMDB movie title | IMDB  movie year | IMDB movie code

  • As you can see there are movies not found in IMDB. In my particular case there are 23 movie out of 3489. It represent the 0.6%, which for the first version it is not bad.
  • The IMDB titles have codification errors. I will try to fix it. But FA title its fine. Solved.

In the case you just want to save all the movie list from filmaffinity: the script will ask you to dumb all the filmaffinity information and save it to a csv file.
Then the program will ask you to vote all these movies to IMDB. I’ve separated these options just to make it more versatile.

How to use it:

  1. Install Python. (I have used Python 2.7)
  2. Open a terminal or cmd and go to downloaded .py file folder
  3. type: python FA2IMDB.py

Here you can find a demonstration video of how to run it:

The python script should work on all platforms, windows, linux and mac.
If you want to reuse this code feel free to do it but please inform me.


printf(“Hello World\n”);

Hasta hoy siempre me he nutrido de la casi infinita información que he podido encontrar en la red de una forma bastante leecher.
Pero ahora me apetece compartir mis pequeños entretenimientos.

Espero que algún día esto lo indexe google y le pueda servir de ayuda a alguien.