Supportpage for the EPPO project

Mainresource for the EppoManager application, its scripts, tutorials as well as the hardware concerning EPPO itself, and the Led Bar Demo Board.

Although this site is as up-to-date as possible, we can not be held accountable for possible damages as a result of use of information and/or software obtained from this site.
Manuals Download EPPO Hardware Led Bar Demo Board Buy EPPO Scripts Pool Home

What exactly is EPPO?
EPPO is a PIC programmer. Well, to be more precise, EPPO is a DIY-kit of a PIC programmer. The kit also contains software which makes the hardware work. Except for the actual hardware, and EPPO's firmware, you can find everything on this site from schematics, to the managing software called EppoManager. EPPO was born out of the need to get "old style" designers, which use a lot of chips, to use "modern" microcontroller technology. Well, first you need the hardware, et voila: EPPO. Next you will need software. The free Microchip's MPLAB IDE allows you to create software in assembly right away. It is however much nicer to be able to "do it" in a higher level of programming-language, like C. On the CDROM are a lot of try- and- buy and "lite" versions of different compilers, which however crippled, allow you to get a sniff on how it all comes together. Wait! There is more... Next to EPPO you will get a free Led Bar Demo Board with all nescessary components! Both PCB's are connected to each other via a perforated separator. After assembly, you just break off the Led Bar Demo Board from EPPO.

Why yet another PIC programmer?

Look around on the net. The cheapest programmers you can build yourself are just for one type of controller. One exception to the rule is for instance this dutch one. Building separate programmers for seperate controllers is not really the way you want to go. EPPO can manage the DIL controllers up to 28 pins (narrow), and the rest via ICSP (In Circuit Serial Programming). My experience on off-the-shelve programmers, such as Microchip's Picstart Plus, is a quite dissapointing one. Everytime a new microcontroller is released, the current programmer must be upgraded. At first you had to program a controller with new firmware, and replace the one inside the programmer. A year or two ago, Microchip decided to replace the controller with a so called PUM, of which the firmware was upgradable via their IDE MPLAB. Well... My PUM was unusable after my first upgrade, and when I complained with Microchip, everybody had gone fishing.

Why choose Microchip microcontrollers?
This is a subjective one. Basically, any microcontroller can do the same job. some of them have more I/O ports, other ones have specific analog or communicative features. I think the Microchip range of controllers is the most complete one on the market. A drawback is that not every electronics-shop can deliver Microchip controllers, apart from the most popular (and in my view obsolete) PIC16F84. The microchip microcontrollers are small, fast and have RISC
(Reduced Instruction Set Controller) architecture, so quickly to learn.

What type of controller must I choose?
The main property I always look for, is how many I/O pins I will need. You also have to keep in mind that, by using a microcontroller, you in fact are heavilly reducing other (logic) components from your hardware design. So if you design some circuitry, you leave the station with knowing what inputs and outputs your hardware design will need. After that you start your design with drawing a microcontroller with exactly that I/O configuration. Then start removing components you can "do" in software, like debouncing switches, directly driving LED's instead of using transistors etcetera. Although EPPO can program any PIC microcontroller, I made a list of controllers up to 28 pins, which reduces the number of microcontrollers to choose from quite a lot:

Microcontroller number of I/O Extra features Pins
PIC12F675 5 I/O, 1 input A/D, int osc 8
PIC16F688 11 I/O, 1 input int osc 14
PIC16F88 15 I/O, 1 input EEPROM, int osc 18
PIC16F73 21 I/O, 1 input A/D 28
You might remark that I do not address memory issues. My experience with the controllers I have ever programmed, is that the memory resources fit the microcontrollertype. If you use less I/O, you probably need less memory.

What's the difference between C device and F device microcontrollers?
In short: C device controllers, such as the 12C672, you can only program once. So if you screw up your program, or the programming itself, you will find that your microcontroller has been upgraded to a disposable one, ready to throw away. The F device controllers have their program not in EPROM, like the C device ones, but in so called flash memory. These controllers can be erased, and reprogrammed a huge number of times. Most older C device microcontrollers have a F device counterpart, so eventually all C device microcontrollers become extinct.

Why still support C device programming?
If you have a well tested and popular design, you might think of using a C type controller instead of a F type one. Normally the C type microcontrollers are cheaper than the F types (until they last that is). It can be very rewarding, checking ebay or other auctionsites, on left-overs. Since the C type controllers become less and less popular, you probably can buy them cheaper and cheaper.


How do I update EppoManager with a new type of controller?
This issue is covered in the EppoManager's helpfile. In simple terms, you have to get or write a script for every operation you want to execute on the new microcontroller. If you are completely uninterrested in how the programming process actually works, please wait for somebody to send in scripts, so you can download them from the scripts page. If you are up to the challenge, please get the programming specifications from the Microchip website for that particular microcontroller. The CDROM that came with EPPO has a lot of programming specifications for the most popular microcontrollers. The programming for the new microcontroller is probably not that different from an other type which is already supported. It might be that you just have to copy the scripts for that controller, rename them (anti-overwrite), and change the scripts to fit the new controller. Remember to adjust lines 1 thorugh 3 in the scripts, so that EppoManager recognises the new controller.


How can I contact the support-team?
Basically, all the info you really need is on this site already. Ofcourse you need some basic understanding about electronics, but you should already have that. You can use this email-address for:
  1. Questions which are NOT about third-party stuff, i.e. the information on the CDROM.
  2. Questions, to which the answer can NOT be found on this site.
  3. Sending us new or improved scripts.
  4. Testimonials from you, about your experience with building and using EPPO.
  5. Information, software or links, which can help us help you.

News.
The total stock of EPPO kits was depleted after just a few hours at the assembly in Rosmalen on saturday the 17th of March 2007. We did not expect this kind of response, but boy, are we happy! We now have to determine how big the next batch of EPPO's will have to be. The museum in Budel already has a waiting list, and we are able to build just a limited number of kits at this time.

WARNING! This site is constantly under construction.
Any information presented via this site can be updated any time. If you experience problems or inconsistancies due to the integrity of this information, please visit regularly to check for updates.