I was trying to think of a suitable name for this project, and after literally seconds of careful deliberation, I gave up and decided to call it Fluffy. Sorry.
Anyway, Fluffy is a SX programmer for people who havealready experimented with PIC chips, and want to try out the Scenix SX family. I built Fluffy because I wanted to experiment with the SXβs, but didnβt want to spend $300 or so bucks on the official development system. To build it, you will need a PIC16F84 (a 16C84 will probably also work, but I donβt have any to test!). Note that this implies you should already have a working PIC programmer. If you donβt, you might want to check out COM84, or any of the multitude of free, cheap PIC programmers available on the web.
As usual, the standard disclaimers apply. I accept absolutely no responsibility for any damage caused by the use of this system. It seems to work just fine for me, but if it happens to blow up your chips, melt your computer or exterminate your family and friends, etcβ¦ etcβ¦ then donβt come crying to me. Fluffy is completely free β please go ahead and use/distribute as you wish, provided that itβs used only for noncommercial purposes, and the above disclaimer is also distributed with it.
21st May 2001
Steven Willis has been working on a new version of Fluffy, with improved serial port speed, and a number of bug fixes. Since Iβm no longer actively maintaining this project, you may want to head over to his page and get the latest code from there. Thanks also to Bonny Gijzen for adding Fluffy support to his excellent IC-Prog PC software.
Version Information
fluffy is currently undergoing a few changes, mainly brought about by Scenixβs recent silicon revision. Therefore, there are currently a few different version availableβ¦
0928fluf.zip β Sept 28th 1999
This is the latest code, which uses a completely rewritten fluffy.exe. The firmware code has also been upgraded to support the 16C6X class of PICs. The main things to be aware of with this version are that the -test option has been removed, as has the support for the fluffy.ini config file. Everything is now on the command line, and some of the command-line options have changed. The code has been changed in such a way as to make adding more chips easier. At present, support for SX (old and new revs), 16F84, 16C84, and 16C64 is included. In theory a much larger range of PICs should be supported, simply by adding the relevant lines in the chips[] array, but I just havenβt had time.
STOP PRESSI just received some samples of the new revision SX18/28βs from Scenix. The really quick test that I just did suggests that the code is working. Iβve just added simplel.sxh to the ZIP file, which is the equivalent of simple.sxh, but for the new revision.
DOH! It seems some of you are experiencing problems with the new code, when using the parallel port interface. Iβve just tried to track down the problem, but my programmer doesnβt seem to work with my new PC! (I havenβt touched SX chips for quite a while). If you do experience this problem, can you please first try the older version of the code, and then let me know what works, and what doesnβt. Thanks!
0216fluf.zip β Feb 16th 1999
This is the original, much older code. It has a very different interface, and only supports the older SX revision. It does, however, have a semi-useful -test command-line option, which runs through some simple diagnostics, enabling you to hopefully verify that your programmer is built correctly.
I apologise for the somewhat disorganised nature of these releases, but I am unfeasibly busy at the moment, and thus unable to spend the time Iβd like to on thisβ¦
The ZIPs contain the following files:
fluffy.exe | Main programmer software. |
fluffy.c | Source for FLUFFY.EXE |
fluffy.txt | Brief description of how to use fluffy |
sxprog.hex | PIC16F84 hex file |
sxprog.asm | Source for SXPROG.HEX |
simple.sxh | A simple test SX program that counts upwards on PORTB really fast. |
Anyway, hereβs the schematic β I hope Iβve drawn everything right. Basically A0 and A1 control the SX OSC1 voltage level β both low implies 0V, A0 high (and A1 low) implies 5V, and A1 high (and A0 low) gives 12.5Vish. If you want to implement your own power supply circuit, it shouldnβt be too hard.
2nd Sep 2000
Just a quick update β βLing SMβ has sent me a few pictures of a nice portable implementation of Fluffy. As you can see, there are some spare components available β email [email protected] for details.
2nd Mar 1999
A number of people have written to me, offering to write a W95/NT version of the PC software. Since itβs unlikely that Iβll have time to do this myself, anyone who wants to is more than welcome! I realise that fluffy.c and sxprog.asm, although commented in places, arenβt necessarily the most legible or intuitive pieces of code in the world. So, in the spirit of open protocols, (and in a thinly disguised attempt to get other people to do this stuff for me), my attempt at documenting Fluffyβs protocol is here, in MS Word format.
1st Mar 1999
Just a quick note β there has been some discussion of late regarding SX chipsβ propensity for suddenly deciding to draw a large amount of current, in some cases resulting in a hot, unpleasant smelling chip death. This appears to be a problem with SX chips in general β people using programmers other than Fluffy have experienced it, as have I. One suggested safeguard is to put a 100 ohm resistor between the programmerβs OSC1 output, and the SXβs OSC1 pin. I havenβt cooked a chip for a while, but hey, best to be safe
For more detail:Β βFluffyβ β A Scenix (and PIC) Programmer