Como comenzar con PINGUINO – OPEN HARDWARE / SOFTWARE / MIND
Menú Close

Como comenzar con PINGUINO


Aunque fue diseñado originalmente en LINUX, es mejor comenzar con WINDOWS, se facilita mucho la instalación y puesta en marcha. Luego si deseamos más potencia podríamos migrar a LINUX.

Pero para verlo funcionando de una forma rápida… lo mejor es el dichoso WIN2.

Lo primero será cargar el firmware en el PIC 18f2550 o 18f4550, recomiendo este ultimo por tener muchas más aplicaciones posibles, aunque un poco más caro, en EBAY se puede conseguir por $8 dólares.

Igual necesitarían un programador, pero omito este pasó ya que supongo que algún experimento han hecho con PICs y ya tendrán uno. J

El firmware a cargar «compatible con ambos PICs» se encuentra en la siguiente dirección, en si se denomina BOOTLOADER porque sirve para iniciar el pic y que este escuche al programa PINGÜINO.

Este firmware está basado en el proyecto VASCOBOOTLOADER… y modificado para este micro-controlador.


CIRCUITOS DE PINGÜINO



En Windows necesitaremos cuatro programas para ejecutar la interface grafica de PINGÜINO

PYTHON, WXPYTHON, PYUSB y LIBUSB

Estos se pueden conseguir desde los vínculos siguientes

PYTHON (cualquier versión, pero necesitaremos la versión de WXpython complementaria)

PYTHON 2.6 LINK
http://www.python.org/ftp/python/2.6.5/python-2.6.5.msi

WXPYTHON
http://downloads.sourceforge.net/project/wxpython/wxPython/2.8.10.1/wxPython2.8-win32-unicode-2.8.10.1-py26.exe?use_mirror=switch

PYUSB
http://downloads.sourceforge.net/project/pyusb/PyUSB%200.x/0.4.3/pyusb-0.4.3.win32-py2.6.exe?use_mirror=heanet

LIBUSB-WIN32
http://downloads.sourceforge.net/project/libusb-win32/libusb-win32-releases/0.1.12.2/libusb-win32-device-bin-0.1.12.2.tar.gz?use_mirror=mesh

Una vez instalados todos los programas necesarios, podremos descargar la última versión de PINGÜINO.

PINGÜINO 8
http://www.hackinglab.org/pinguino/download/pinguino%20beta%208/

Y el controlador para que Windows reconozca el PINGÜINO como tal.

Este es el link del controlador.
http://www.hackinglab.org/pinguino/download/driver%20pinguino%20windows/driver%20pinguino%20windows.tar.gz

Otro LINK

AQUÍ OS DEJO UN PAQUETE COMPLETO CON TODO LO NECESARIO POR SI ALGUNA VEZ ALGÚN REPOSITORIO SE ENCUENTRA CAIDO.

Una vez descomprimido donde queramos que resida nuestra aplicación (necesitaremos el WINRAR) si todo ha ido como corresponde, con solo ejecutar «pinguinobeta8windows.py» con doble click del raton, si no funciona correctamente o no vemos que ocurra nada… entonces recomiendo reiniciar WIN2, he intentar nuevamente ejecutar el programa.


Tras ejecutar y llegar a la pantalla principal, veremos varias opciones…

Lo primero que haremos será ir a ARCHIVO, ABRIR, y buscar en el directorio EXAMPLES algún código de ejemplo para probar y cargar en nuestro pic.

Por ejemplo TESTBLINK que funciona en cualquiera de los dos PICs 18f2550 o 18f4550

[sourcecode language=»py»]
// Test blink with Pinguino
// jean-pierre MANDON 2008
int led1; // led1 is an integer ( Pin )
int led2; // led2 is an integer ( Pin )
int tempo; // tempo is an integer
void setup()
{
led1=1; // led 1 is connected on pin 1
led2=7; // led 2 is connected on pin 2
tempo=500; // tempo for blink is 500 mS
pinMode(led1,OUTPUT); // pin 1 is an output
pinMode(led2,OUTPUT); // pin 7 is an output
}
void loop()
{
while (1)
{
digitalWrite(led1,HIGH); // led 1 high
digitalWrite(led2,LOW); // led 2 low
delay(tempo); // wait 0,5 second
digitalWrite(led1,LOW); // led 1 low
digitalWrite(led2,HIGH); // led 2 high
delay(tempo); // wait 0,5 second
}
}

[/sourcecode]

Este ejemplo es muy práctico y grafico a la vez, vemos que de indican las variable, y determina los leds (patillas del PIC), que actuaran como salidas. Y más tarde en el LOOP vemos como enciende un led, espera un tiempo y enciende el siguiente.

Cuando presionamos el botón de PLAY (triangulo) el sistema analiza el código y nos informa si tenemos algún error. O si todo esta correcto. En este último paso si todo se encuentra correcto, genera un archivo HEX que será el que más adelante envíe al PIC.


Una vez pasado este punto, podremos enviarle al PIC el código generado.

Conectaremos por USB el PIC al PC, y presionando en el último botón de la derecha, obtendremos la siguiente ventana.


Aquí podremos observar el archivo HEX generado, y la dirección USB del PIC en vendorRID y productID.

Tendremos en este momento que presionar el botón de reset del PIC, y el botón de escribir WRITE varias veces hasta que veamos el mensaje de «PIC FOUND», y luego el mensaje de «fila.hex uploaded». No importa que lo presionemos varias veces, ya que esto no genera problemas. Como ven en la imagen yo lo he presionado casi 10 veces antes que el PIC sea reconocido por el sistema.


El resultado debería ser el siguiente, claro dependiendo el circuito ya que el mío es algo voluminosoJ:


Y ya tenemos nuestro PINGÜINO funcionando, ahora necesitamos experimentar cuanto podamos. J


Related Posts

10 Comments

  1. jose luis

    Hola.
    Hago todo lo que pone en la guía pero no me sale «PIC FOUND».
    Lo único es que el LIBUSB-WIN32 realmente no lo he instalado porque no viene ningún ejecutable. ¿Puede ser por eso?
    gracias

  2. walterleonardo

    HOla buenas…
    Lo que te ocurre es que no tienes el controlador (driver), si pusiste bien el firmware en el PIC, cuando lo conectas por USB tiene que decir (la primera vez) que ha encontrado un hardware nuevo, algo así como MICROCHIP USB o algo por el estilo… luego vas al configurador de dispositivos y buscar el nuevo hardware encontrado… y le dices que quieres reinstalar los controladores, y buscar los archivos «drivers» de PINGUINO. Es correcto que no trae ningún ejecutable, porque tienes que decirle a mano que controlador utilizar.
    Si tienes algún otro inconveniente me lo dices, pero iniciarlo es lo mas complicado una vez que esta funcionando, ya luego siempre funcionara.

    Saludos.

  3. jose luis

    Sí, si el Controlador sí se lo instalé manualmente eligiendo la carpeta donde me había descargado y descomprimido el controlador del link de esta página , y me lo reconoce como USB custom device: Microchip Technology, Inc.
    Despues he probado a crearme mi propio controlador como se indica en http://sourceforge.net/apps/trac/libusb-win32/wiki y sí me reconoce el dispositivo (Pone PIC found) pero no me deja subirlo.

  4. walterleonardo

    aa aok… entonces ya lo tienes reconocido por WINDOWS (estas usando windows no?), en este momento vas a la interfaz de GUI de PINGUINO, y lees cualquiera de los ejemplos, testblink puede ser el mas fácil de verlo funcionar. Si no, estoy subiendo ahora mismo uno aun mas fácil que no necesita nada extra a la placa (hace parpadear el led de control RUNLED del puerto RB4).
    Recuerda que cuando conectas PINGUINO a un puerto USB tienes que escuchar el sonido característico de windows de hardware encontrado, y si tienes todo bien configurado no veras mensajes emergentes, ya que le carga directamente el controlador correcto. (Intenta siempre conectarlo en el mismo puerto USB ya que si lo cambias deberás configurar los controladores nuevamente «cosas de windows»).
    con el Pinguino conectado, y la ventada de UPLOAD to PINGUINO en frente a ti, presionas el botón RESET de PINGUINO (en la tarjeta) «deberías escuchar el sonido de hardware extraído típico de windows», entonces comienzas a presionar repetidas veces el botón de WRITE que tienes en la interfaz de UPLOAD… muchas veces no importa cuantas porque no molesta.
    Cuando detecte el inicio del BOOTLOADER la misma interfaz gráfica te dirá, PICFOUND archivo.hex UPLOADED, y quizás porque presionaste muchas veces, veas este mensaje repetido, no te preocupes, espera a que termine de informarte archivo.hex UPLOADED,,,y espera unos segundos para ver que no aparecen nuevos mensajes.
    con el tiempo tomaras practica con los tiempos, yo suelo resetearlo y contar 3 segundos, y presionar el botón de WRITE, casi siempre funciona a la primera.
    SI has hecho todo bien, el led de control de PINGUINO comenzar´´a a parpadear «claro si has puesto el código que te menciono).

    Si no funciona bien, verifica que has puesto todos los componentes correctamente, y si esta todo bien, cambia el CAPACITOR de 220UF de la patilla 18 (versión 18f4550) o 14 de la (versión 18f2550). Este puede generar problemas a la hora de detectar vía USB el PINGUINO.
    Si aun con todo esto no funciona, reinstala PYTHON y WXPYTHON, porque puede que tengas problemas en la ejecución de

    aquí te lo pego: igual lo tienes en el ultimo POST:

    // Pinguino.walii.es RUNLED BLINK
    #define RUNLED PORTAbits.RA4

    void setup()
    {
    }

    void loop()
    {
    //Esta linea puede agregarse en cualquier parte del loop
    //pero genera un retardo en el propio LOOP de 500milisegundos
    RUNLED=1;delay(250);RUNLED=0;delay(250);
    }

  5. jose luis

    Ok.
    Ya lo he conseguido;
    Muchas gracias por tu atención y enhorabuena por el website, es muy bueno.
    Saludos.

  6. juan josé

    Hola Walter, primero felicitaciones por el website, y segundo, necesitaría una «pequeña» ayuda, ya que no dispongo nada referente a los componentes necesarios para el proyecto, pero muchas ganas de comenzar de una vez por todas con MICROCONTROLADORES, ya he visto mucho sobre el tema y cada vez me pierdo mas, entonces necesito COMENZAR, ojala no sea mucha molestia mi solicitud, pero comienzo de cero,
    Que tipo de programador me recomiendas conseguir, especificaciones para comprarlo y referencias para usarlo??

    Bueno, realmente no se por donde seguir con las preguntas, son muchas, pero ojala me puedas guiar para entrar en este apasionante mundo, felicitaciones,

  7. walterleonardo

    Hola Jose… buenos dias… que bueno que estes interesado en PINGUINO, lo primero es que me digas que tipo de ordenador dispones… si tiene puerto serie, paralelo o solo USB???
    Porque de eso depende el programador que utilices:
    si tienes puerto serie, es lo mejor, porque son los mas economicos, y luego con uno serie, puedes hacerte uno USB, que hoy dia estan un poco caros. Esto he hecho yo y estoy muy contento con el resultado…
    Lo malo que para hacerte un programador USB necesitas disponer previamente de uno serie…para programar el PIC necesario para hacer el segundo programador…
    igual hay formas de hacerte un programador muy facil por puerto paralelo… pero lo mismo, si dispones de puerto serie, mejor empezar asi…
    NOTA: no vale el truco de un adaptador SERIEtoUSB… no es factible programar asi… asi que nunca compres un programador serie, si no tienes un puerto serie real, por temas de diferencias de voltages nunca te funcionaria.
    Por otro lado, estoy por sacar un KIT para hacerce cada uno un PINGUINO (componentes y placas), pero tienes que soldar, para los mas vagitos o que no disponen de soldador, venderia un KIT ya armado pero con el coste añadido que esto genera…
    Por ahora no tengo valores, pero creo que el KIT saldria por unos 35 euros… y el armado por 50… depende mucho de los proveedores. Estoy tratando de ajustar precios.
    Me alegra mcuho que te interese programar, veras que satisfacciones cuando digas, quiero que mi PIC haga esto y lo hace…(claro esta con algo de matematica por medio)….

    Te mando un saludo… y estemos en contacto para cualquier cosa.

  8. jaba0001

    pero este es 1 tutorial para windows? y para linux? en especifico ubuntu.. q software se necesitan? los mismos?

  9. walterleonardo

    llamo a la primer frase…
    «Aunque fue diseñado originalmente en LINUX, es mejor comenzar con WINDOWS», y ademas las ventanas son de windows… pero no te preocupes… si necesitas ayuda… estamos para eso…
    Este tutorial es para windows… si lo necesitas en LINUX se encuentra en la web de HACKINGLAB… pero te lo puedo explicar en unos simples pasos…

    para ubuntu por ejemplo deberías instalarte primero…
    python 2.5
    wx-python 2.8
    libusb

    estos los instalas mediante la aplicación grafica de ubuntu para instalar paquetes… o mediante una consola… tipeando «apt-get install python», «apt-get install wx-python» y «apt-get install lubusb» quizas los nombres esten cambiados y tengas que buscarlos… si algún comando te indica error… busca el paquete instalador con «apt-cache search (nombre de instalador)», siempre después de hacer un «apt-get update» para actualizar la lista de paquetes.

    luego de instalar estos tres programas, te descargar la version de linux y la descomprimes en un directorio cualquiera…
    y lo ejecutas con «sudo python pinguinobeta9-0X.py» donde «X» seria la version de PINGUINO.
    y se supone que iniciaría la interfaz grafica de pinguino.

    dime si tienes complicaciones…

  10. ubanov

    Ultimo comentario de hoy 🙂 ya se que es el quinto o sexto de hoy… este tipo de entradas (la de instalación básica, en Windows/Mac…) la podrías poner en la web del proyecto (en la de Jean que está en google), yo alguna vez ya he estado escribiendo ahí y me consta que el proyecto está falto de documentación y jean encantado de que le ayudemos… O:-) eso si en inglés 🙂

    De echo lo que está en la página de google sobre la instalación de mac la escribí yo (creo que hace un par de años)… igual tengo que actualizarla un poco… 🙁

Deja una respuesta

Tu dirección de correo electrónico no será publicada.

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.