Introduction: "Re-Purpose" Cat Genie Solution Eeprom
*** this is my fist ible so be kind...
I'm going to show you how to make a eeprom reader to read and write to those 24lc00 eeproms embedded in the cat genie solution cartridges. I have seen the adrino versions of this but realistically this is WAY cheaper and, in my opinion, much easier.
Lets face it: once you empty the cartridge, the next step is to throw it away so why not do something useful with it!!
Step 1: Where to Begin?
You have a couple of options open to you at this point:
1) do you want to make a reader that looks nice or
2) do you just want to cram something together and make it work?
Either option you choose you will need:
-sani solution cartridge (duh!)
- preferably a desktop computer with a parallel port capable of ECP and EEP protocols (explained later)
- 2X BC337 NPN transistors
- 2X 2.2K resistors (or +/- 200ohm)
- 2X 4.7K resistors
- 1X 10K resistor
- 1X100nF capacitor (any non-electrolyte type will work)
- 1X PC parallel port stub (male or female depends on your computer)
- an old USB cable you can destroy
- various wire lengths
- (optional) 4X small springs (3-4mm diam, 5mm tall)
tools: wire strippers, low watt soldering gun (20W max), solder, super (or hot) glue,
Step 2: The Schematic
first of all, look at this schematic provided by Lanconelli
if you think you can handle building this on your own, skip to step 6, if not lets keep going!
*** Notice *** the person's name and website where i obtained this schematic is on the schematic.
Step 3: Choice Time!!
As i said at the beginning, you can make this thing neat or just toss it together. both options will need this image to go by.
*** Notice both groups that green=bottom layer, red=top layer, yellow=the component ***
Get yourself a protoboard (i prefer the ones with individual solder points) and start ramming the parts and wires on. It is always a good idea to put all the parts on first, then wire it up, and only start soldering once you are sure everything is perfect.
Making it neat
Get yourself the following:
1) copper clad (2"X2" is fine, just so long as the parallel port will fit)
2) disposable plastic bowl that your final circuit will lay in
3) Hydrogen peroxide
4) hydrochloric acid
5) paint thinner or rubbing alcohol
6) a cloths iron
7) photo paper and laser printer.
- take a look at The Real Elliot's ible over here for how to mix the etching solution and then go on.
Step 4: Etching
Assuming you have looked at The Real Elliot's ible, we won't go into etching very much.
Below is the bottom copper layer. copy it to your computer and open it in an application you can print from. now, print a test copy on regular paper. if the diagram fits your clad board well enough you're golden, if not, re-size the image and try again. I can't help you too much here because the program i made the diagram with automatically scales everything.
Once you have the correct size, put your photo paper in the printer, set it to the highest detail, and print.
Now that you have this picture, grab a piece of glossy paper (magazine page?) and set your cloths iron to max. Using rubbing alcohol, clean the entire surface of the copper clad and do not touch it again until after etching. now find a smooth, hard, heat proof surface and lay a some cloth down and put the 'dirty' face of the clad on it, followed by the the photo paper (lined up as best you can and printed side facing the copper clad) and finally put the glossy paper over top of everything.
When the iron is hot, place it on top of everything and push down hard for at least a minute (more shouldn't hurt). after that, the photo paper should be stuck onto the clad so turn it over and using the tip of the iron on the photo paper, add more heat to all the lines and pads. Finally, when you are satisfied, soak the clad with the paper still on it in water for 5-15mins and then peal off the paper. You can use a soft brush to get the rest of the paper off, but you should have a perfectly set clad board ready for etching. if you are unsure about any points, you can also use a 'sharpie' pen to add some detail (such as making the pads a little bigger).
*** Hint *** if you are using a 90 degree parallel port then you might want to look at the previous step's pic to look at which pads are actually being used and make the pads a little bigger.
If you are using a straight adapter, don't worry about it because we are going to remove the portion shown in the yellow box on the pic below.
*** before you go on there is an optional step to etch as well but i found it annoying so i didn't bother but here you go:
below the bottom layer pic is the top layer. you have to drill a few of the pads, print the top layer on photo paper, line everything up perfectly then follow the ironing steps above again. I don't recommend this because there is only a few jumper wires to put in to its not a big deal.
all you have to do now is follow The Real Elliot's ible here and then get back here for the next step.
*** Notice *** NO i did not figure out this schematic transfer method!! i got the idea from hackaday.com. check them out when you have a chance.
Step 5: Drill and Fill
*** a drill press would be very helpful for this step ***
It may be tough, but you have to find a very small drill bit. I used a 0.025" size and even then it was a little too big for the pads on the parallel port.
If you know anything about drilling then you know that taping your holes before drilling is very helpful but for our purposes it may result in damage so be careful.
tap all the holes and drill them out. try to go slow when you are just about through so you don't push out the fibers on the opposite side.
Using the image below, place all component and top jumper wires (if you didn't do the optional step before), but LEAVE OUT the parallel connector if you are using the 'straight connector' (see pics). identifying which side of a transistor is what can be annoying so to help yourself out, use a marker on the E (emitter side) pole first. i have a pic of the transistor below for reference.
Rip the end off your junk USB cable (the end that doesn't go into the computer!) and try to identify +5V and gnd. hopefully they are colour coded (red positive, black neg) but if they are not, just strip all the wires a bit, KEEP THEM SEPARATED, and plug it into your computer. Then just use a multimeter to find out which wire is which. the other wires can then be clipped back since we will not use them. then just wire up the USB cable to the pads shown.
The port that is supposed to go out to the eeprom doesn't need to be a special connector. i will show you how i made my eeprom connector but i just soldered it right on to the pads. I left it in in case you want to make it that much nicer ;)
Once everything fits nicely, start soldering! Remember, if you are using a straight parallel connector leave it out, if you are using the right angle connector solder it in place.
if everything works out, you should have something like my last pic on this step. Notice that I messed up and had to put my cap on the bottom.
Step 6: Eeprom Connector (optional)
As i said before, you can wire the eeprom connection wires directly to the board and use some kind of a connector to attach to the eeprom. this really depends on how you are going to use the eeprom, but for me, i left the eeprom on the little chip it came with and wired everything i needed to the underside leaving the original outside the same.
cut a piece of circuit board the same dimensions as the cartridge's chip. with those little springs you have, use 1 dot of super glue to stick them BELOW the first two pads, skip the next pad, put another below the next two pads, skip the next pad, put another below the next two pads, skip the next and finally below the last two pads. (the skipped pads are not used). put your circuit board on top of the springs and draw their outlines. now take the springs off, bend a bit of the spring up so it will go through the board and then just fit it in place and solder it. do the same for the rest and you will get something like the pic below.
if you still have not removed the sani cartridge's chip, then, with it right side up and reading from left to right, the pins are SDA(5), SDA(5), blank, SCL(6), SCL(6), blank, TEST(7), TEST(7), blank, VCC(8), VCC(8). (confused? see second pic on this step) *** the numbers after each are how i labled the connections on the schematic.
now just connect your programmer to you make-shift connector in the proper order.
Step 7: Programming
Do a google search for "ponyprog" and you should find Lanconelli's website. find and download the pony program.
You may also require a little program called DLport or "driverLINX Port I/O" driver. just search for "dlport" and find the link that mentions a plugin to download.
now all you have to do is plug in your programmer, plug in the usb power cable, hold the eeprom connector onto the chip, and start ponyprog. once in go to options, setup and make sure it is set on "Easy I2C bus", your printer port is selected and nothing else (see screen shot). in the main screen, make sure the dev. type is "2402-16" and "24XX auto" (see screen shot). then just read your chip to make sure everything worked.
your done!!! now you can write whatever code you want into the chip and bring the cartridge's chip back to life.
Step 8: Troubleshooting
pony prog has a few errors it can give you. the most common are:
device not responding
- i've found this usually means that the power is not being supplied properly, check your power connections
hardware not present
- this error also asks if you have everything set up correctly. this usually means that your programmer circuit is flawed. quadruple check all your connection, check your transistor positions, etc. and try again.
if i missed something, let me know.
GOOD LUCK and have fun using your new eeproms!!
7 years ago
i am so techo dumb. i am sure these are so very easy to make if one was smart enough. my question is does anyone make these things. i would LOVE to buy one please!!! firstname.lastname@example.org
7 years ago
Would anyone be interested in making one of these???? The instructions are great but Over my head!!! Thanks!
12 years ago on Step 7
I could not get this to work until I created a file using a HEX editor. The file is imported into PonyProg. There are just 16 bytes of data but I had to repeat these same 16 bytes to build a file that was 2048 bytes in total size.
00000000 01 01 01 3C 3C 3C 3C 3C 3C 08 08 08 21 21 21 FF
00000010 01 01 01 3C 3C 3C 3C 3C 3C 08 08 08 21 21 21 FF
00000020 01 01 01 3C 3C 3C 3C 3C 3C 08 08 08 21 21 21 FF
000007F0 01 01 01 3C 3C 3C 3C 3C 3C 08 08 08 21 21 21 FF
This was very easy to do using a free editor called HxD
13 years ago on Step 8
OK so here is my story, I tried this and was able to read the cartragesuccesfully, built on a greadboard in 10 minutes and it worked onfirst try (that's unusual) I see that I can use the utilityfillbuffer from Ponuprog to change the data but I have to modify line byline which is quite a long process, I can not read the file withnotepad. I tried to save as hex, then modify with notepad but when Iopen the file again in Ponyprog it is not good.
Anyone have any advice?
13 years ago on Step 8
I am surprised to see no comments here, has anyone tried it? any succesful stories? any issues?
13 years ago on Introduction
A very nice Instructable. Very well done. I'm the one that started this ball rollin' - and I have to say, your solution looks very doable. If I ever come up with another need for my arduino, I'll have to whip up one of these! Helpful hint: Your 'ible doesn't come up when I search for "CatGenie" (one word) you might want to add that as a keyword or change your title.
14 years ago on Introduction
More information about the CatGenie and posible hacks in this Article at uChobby.