Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
[ Help/Newbie ] what is pinguino actually ?
10-12-2013, 08:01 PM,
[ Help/Newbie ] what is pinguino actually ?
Best regards peers,

I have a fundamental doubt with pinguino , hope you can help me see the light.

Long time I stop using the parallel port (from GNU / Linux ) to control hardware , and wanna to start using USB , for that I have buy PIC18F4550 , and try to venture to implement a USB firmaware for this PIC to be able of control I / O digital from (GNU / Linux) via USB, while searching for information I found pinguino .. but my question is ... does Pinguino work as a device that implements the USB communication and which can communicate directly from the meidante PC 's own USB protocol ( as used LIBUSB from C / C + +) or actually making ( IDE penguin for example) is generate a program that the PIC is able to run ? ie : does pinguino use the bootloeader just to burn a .hex via USB . ? or actually implements the USB communication to the PC is running the program and take orders from PC ?

if so .. can i control I / O through a program in C / C + + ( some documentantion ? )

if I decide to mount a pinguino ( using the PIC18F4550 I own ) should use this scheme and PCB ? :

and the bootloader .. would have to use the " bootloader version 2.12 (hex file) " from here :

The idea is to use hardware pinguino but write my own software in C / C + + that put of digital I / O .

is pinguino good for me with this ?

Thank you very much for your help .. I am aware that much of what I ask shows that I have no idea .. but why is presisamente ...

Greetings !

[apoligize, i've use google translate to take this from spanish to english]
10-12-2013, 09:19 PM,
RE: [ Help/Newbie ] what is pinguino actually ?

I use PINGUINO32 devices but I think is the same for PIC18 devices.

The USB port is used like a virtual serial port with a very hight baudrate, is very easy write a program which convert simple serial command in IO status, for example a single Word can be used directly for configure 16 out.

Bye Bye, Moreno
11-12-2013, 11:36 AM,
RE: [ Help/Newbie ] what is pinguino actually ?
Yes you can do all of this with a Pinguino (and a lot more).
8-bit Pinguino can communicate as a USB CDC or USB Bulk device.
Take a look at examples in examples/04.Communication/USB
You can use bootloader of any version (1, 2 or 4.x) but I would recommend to use the latest (4.14 up now).
You might use this design :
Good luck.
It is easier to complain than it is to do, but it is better to do than it is to complain.
11-12-2013, 11:47 AM, (This post was last modified: 11-12-2013, 11:49 AM by pingotg.)
RE: [ Help/Newbie ] what is pinguino actually ?
Yes you can do it.

The PC would send USB packets meaning things like
set port A as input
read port A

The small app running in the Pinguino would look at each USB packet and do as it is told.

It would just be one example of a way to use a Pinguino. You'd write the app in a text editor on the PC, compile (probably in the IDE) and download (the Pinguino has a bootloader mode - see the wiki). Then the app would run and listen for USB packets.

I think there's already at least one offering that does it. Can't recall its name, sorry!

If you go ahead, the key thing is what to put in each USB packet. I'd have a debug kind where the app sends back to the PC what it thinks it is doing or debugging may be tough!

12-12-2013, 11:08 PM,
RE: [ Help/Newbie ] what is pinguino actually ?
Thank you very much guys, that's waht i need to know, if pinguino firmware connects via USB with cdc then i'll have a virtual serial port (COM) in /dev/ttycom or something like that and then i can use it reding and writing on tath with a descriptor in C/C++

Greetings! and thanks!
13-12-2013, 12:52 PM,
RE: [ Help/Newbie ] what is pinguino actually ?
/dev/ttyACM0 etc

Use a udev rule to set permisions if on Linux with udev.
Such as 41-microchip.rules which is on the net IIRC.

13-12-2013, 07:42 PM,
RE: [ Help/Newbie ] what is pinguino actually ?
guys i've mount this pinguino:

But without extanal power supply diagram, just like this one:

and i've use bootloader V4 from here:

and try with booth:

but i have nothing when connect pinguino trought USB port..

-dmesg- has nothing when connect/disconnect pinguino, and "ttyACM0" ins't created.. , i've try in Archlinux and Linux Mint 14

any idea what is happening? i can't solve it

please give me a hand with this.

13-12-2013, 08:16 PM,
RE: [ Help/Newbie ] what is pinguino actually ?
1/ Use Bootloader_v4.14_18f4550_X20MHz.hex if you have a 20MHz crystal on your board and Bootloader_v4.14_18f4550_X48MHz.hex if you have a 48MHz crystal instead.

2/ When your Pinguino is plugged, it jumps directly to the user program. If you wrote nothing, it does nothing.

3/ /dev/ttyACM0 will be created when your program will execute some CDC instructions.

So ...

First, try to switch to bootloader mode by pressing the reset button, you will see the led blinking and command lsusb will give something like :

Bus 003 Device 046: ID 04d8:feaa Microchip Technology, Inc.

That's your Pinguino.

Second, turn on the IDE and compile one of the CDC example, then upload it on your Pinguino. When your program starts : cat /dev/ttyACM0 to see the result.

Good luck.
It is easier to complain than it is to do, but it is better to do than it is to complain.
13-12-2013, 08:30 PM,
RE: [ Help/Newbie ] what is pinguino actually ?
ooohh!!! what a silly fail!

what i put in the PIC (bootloader) is just for write a new program to the PIC via USB, i been expecting that it get cdc com too

Thank You! @regis , i'll try that and come back to comment what happends

Forum Jump:

Users browsing this thread: 1 Guest(s)