Pinguino PIC18F4550

Pinguino Banner
I’m trying out the Pinguino platform, which is made for Microchip PIC MCUs and it mimics the Arduino environment.

It uses programming syntaxes that are very similar to the Arduino environment. It is to make the programming of PICs easier.

Since it’s an open source platform, the firmware (bootloader) and schematics are openly available at their website.

I’m using a PIC18F4550 which is one of the four supported 8 bit MCUs.

PIC18F4550_diagram

The benefit of the PIC18F4550 is it has USB capabilities. With the Pinguino firmware, it can be programmed without the Pickit programmer.

Following the official schematic, I’ve designed the PCB myself using eagle.

eagle_sch eagle_pcb

Another one of my usual routines, making a PCB at home.

IMG_2785

IMG_2786

IMG_2789

IMG_2792

IMG_2801

Fully assembled board.

IMG_1645copy

IMG_1646

IMG_1649

I’ll go through the installation but first you’ve to download the required files which is provided in the link below.

https://www.dropbox.com/s/rlmc5rmot0anbx0/pinguino_installer.rar

There are 5 files required in the installation.

  • Bootloader v4.14
  • libusb 1.2.5.0
  • Python 2.6.6 32-bit (use 32-bit even if you’re on a 64-bit system)
  • wxPython 2.8
  • PyUSB 0.4.3

First, we have to upload the bootloader to the PIC using a Pickit programmer.

IMG_2809

pickit_upload

After programming the bootloader, disconnect Pickit 2 and connect the board through USB to your computer.

IMG_2810

A notification will pop-up saying that Windows is unable to find the driver. If not, go to the Device Manager and you’ll see a hardware named ‘P8’ that has error.

device_manager

Open up libusb and run bin/inf-wizard.exe. If the P8 device doesn’t show up, reset the MCU.

driver2

It will then generate the required drivers.

driver3

Go back to Device Manager and update the driver of P8

update_driver

Select Browse my computer for driver software.

update2

Browse to the folder where the driver was generated by libusb.

update3

Install this driver software anyway.

update4

Driver is successfully installed.

update6

The device can now be found in Device Manager with no errors.

update_installed

Install Python 2.6.6

phyton

Install wxPython.

wxphyton

After installing, let the batch command run. Do not close the window.

python_installing_

Install PyUSB.

pyusb

Extract the Pinguino IDE zip file using winrar to C:\ (Must be C:\)

extract_pinguino

Launch Pinguino.exe.

launch

Select the correct board. Pinguino 4550 and USB bootloader.

board

Open up the Blink example and try to upload to the board.

upload_code

Make sure the code is compiled successfully before uploading it.

Download Installer Files

  1. zeeshan07-21-2017

    Hello sir, i have made this board. But when i plug the board (shows p8 in device manager) it disconnect after few seconds automatically. Please help me.

  2. seat-belt05-01-2015

    what paper you use for pcb?

  3. Eduardo12-13-2014

    Great post!
    Are those drivers good for Windows 7 – 64 bits?

  4. Luca05-29-2014

    Hello!!

    Sorry for my English because I’m Brazilian!

    I am developing a student project which I am basing this article!
    I wonder the possibility of sending me the Proteus project, so I can add a few other utilities and complete the project successfully! If possible could send me this email? (lucacgranato@gmail.com)

    Thanks for your attention!
    Luca Chamecki Granato

Leave a Reply to Eduardo Click here to cancel reply.