PICkit 2 hardware features

11 views
Skip to first unread message

Chen Xiao Fan

unread,
Oct 7, 2005, 2:07:09 AM10/7/05
to Pickit-Devel (E-mail)
PICkit 2 has one mystery button and 2x64KB 24LC512
EEPROMs for future use. Maybe it is time to demystify
this puzzle. ;-)

What is the intention for this button and the EEPROMs?
Last time we have a discussion on PIClist and we guess
that it will be used to store and hex file and start the
programming/verification process. Is this correct?

Another possibility I am thinking of is like Basic
Stamp. We can put a rather big byte code interpreter
(basic/C/pascal/...) inside and use the EEPROMs to
store the byte code.

Another question is the future support for 18J device.
Since the PGC/PGD generated by PIC is about 5V, is
this okay for the 18J device or the future dsPIC33
device. Vdd/Vpp can be adjusted in PICkit 2.

There is an AUX pin for the ICSP socket as well. It
does not take part in programming. What is the
potential use of the AUX pin?


Regards,
Xiaofan

Mark Rages

unread,
Oct 7, 2005, 3:11:51 AM10/7/05
to pickit...@googlegroups.com
On 10/7/05, Chen Xiao Fan <xia...@sg.pepperl-fuchs.com> wrote:
>
> PICkit 2 has one mystery button and 2x64KB 24LC512
> EEPROMs for future use. Maybe it is time to demystify
> this puzzle. ;-)
>
> What is the intention for this button and the EEPROMs?
> Last time we have a discussion on PIClist and we guess
> that it will be used to store and hex file and start the
> programming/verification process. Is this correct?

I think it could be used for this, but the PICkit would still need to
be connected to a computer for power. ( or an Altoids tin:
http://www.chrisdiclerico.com/2004/10/24/ipod-altoids-battery-pack-v2
)

When I was in Arizona this weekend I stopped by the Microchip factory
at Chandler. Dan Butler was gone, unfortunately, but Steven Bible
talked to me for a while about the design of the PICkit 2. I didn't
get the impression that those EEPROMs are dedicated to anything in
particular. They just increase the flexibility of the PICkit 2
platform.

If you study the PICkit 2 schematic, several of the programming lines
are connected to analog inputs. So one possible applicaition would be
a signal analysis / data logger application similar to the PICtail
signal analysis daughter board:
http://microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1406&dDocName=en020777

The button will also trigger the bootloader if pressed during
power-up. This should be handy for experimentation!

> Another possibility I am thinking of is like Basic
> Stamp. We can put a rather big byte code interpreter
> (basic/C/pascal/...) inside and use the EEPROMs to
> store the byte code.

I vote for Python! I guess no-one's ever made a "py-machine" before.

> Another question is the future support for 18J device.
> Since the PGC/PGD generated by PIC is about 5V, is
> this okay for the 18J device or the future dsPIC33
> device. Vdd/Vpp can be adjusted in PICkit 2.

I believe support for more devices is planned.

> There is an AUX pin for the ICSP socket as well. It
> does not take part in programming. What is the
> potential use of the AUX pin?

There are a *lot* of potential uses of that pin, and the other,
"programming" pins. Look carefully at the schematic. A lot of
thought was put into it.

I spent a few hours trying to get PyUSB to work tonight. I could
write to, but not read from, the PICkit. There are more fun things to
work on, so I am going to abandon PyUSB integration for now.

My next steps are to get bootloading working, and set up the toolchain
to rebuild the firmware.

Regards,
Mark
markrages@gmail
--
You think that it is a secret, but it never has been one.
- fortune cookie

Chen Xiao Fan

unread,
Oct 7, 2005, 4:19:46 AM10/7/05
to pickit...@googlegroups.com
Oh yes there is a lot of the things inside PICkit 2 and I need
to study the schematics more carefully.

As for the Python-Machine, it it possible since Python is
bigger than Basic? Are there any simple embedded Python
implementation? I know there are quite some intepreters
or virtual machines for Basic/Forth. I remember there is a
"Java" virtual machine as well.

As for PyUSB, I think there may still be some bugs and
features missing. However I think it is quite promissing.
Do you set the endpoint address correctly (0x81 for IN
and 0x1 for OUT)?

As for the firmware building, will you use Wine/MPLAB C18
or something else?

Regards,
Xiaofan

Steven...@microchip.com

unread,
Oct 7, 2005, 11:07:13 AM10/7/05
to pickit...@googlegroups.com

Hi Guys,

I've been lurking in the background, time I chimed in.  And since Dan is on vacation this week.

When Mark was here at the factory we had a little time to talk about the PICkit 2 design.  

The push button is actually for whatever you want to use it for.  Since PICkit 2 has a bootloader, it was designed with future abilities that are simply waiting for ideas and software.  Do look at the schematic.  It tells you everything about the PICkit 2 hardware.

The serial EEPROMs (128K bytes) are again a future feature just waiting for ideas and software.  I never thought about using it to store pseudo code, that's a cool idea.  The one idea we had was that the *.hex file can be stored in the sEEPROMs and the device can be programmed with a push of the push button.  The concept was for manufacturering line work where you don't have to worry with a PC but just plug the PICkit 2 into the PCB, push the push button, observe the red LED blink, and move on to the next PCB.

BTW, the Red LED is programmable and you can make it indicate whatever status you would like.  In the present firmware, the red BUSY LED lights during programming mode.  

As Mark aluded, if you hold the push button as you plug the PICkit 2 onto the USB bus, it will go into bootloader mode.  You will see this as the red BUSY LED will blink.  

Also, as Mark mentioned, take a look at the schematic, and look at the ICSPDAT, ICSPCLK, and AUX pins, and you will notice that they connect to the PIC18F2550 analog pins.  Naturally, in the existing firmware, and for programming, these 3 pins are digital.  But you could create a new firmware module that makes one, two, or all these pins to analog and create an analog capture.  Maybe make a 0-5V oscilloscope.  Take a look at the PICtail Signal Analysis Board that Dan and I did.  The Signal Analysis PC software is open and is written in Visual Basic 6.0.  In the software, you have a strip chart, o'scope, FFT, and hystogram.  Just some ideas to play with.

Sorry that all this is not documented.  I all stems from not enough time in the day/week.  So we did the next best thing in releasing all schematics and software.  But I have to agree that understanding what ideas and thoughts that went into the design process helps you guys.

I'll try to chime in as I can.  The major problem I am facing is that there are too many fun things to do but there are not enough hours in the day.  So if you don't hear from me, it is only because I (and Dan) are covered up.  But we want to support and encourage all the work you guys are doing.  It was our intent in creating an open system and encouraging experimentation.

Steven Bible  [steven...@microchip.com]
Principle Applications Engineer
Microchip Technology Inc.
Phone: (480) 792-4298
Fax: (480) 792-4015




Mark Rages <mark...@gmail.com>
Sent by: pickit...@googlegroups.com

10/07/2005 12:11 AM
Please respond to pickit-devel

       
        To:        pickit...@googlegroups.com

        cc:        

        Subject:        Re: PICkit 2 hardware features
Reply all
Reply to author
Forward
0 new messages