mail to me
mail to me

PonyProg
serial device programmer

Online Forum

 

PonyProg logo

Last update
07 Nov 1999

 Introduction
   
If you are looking for a simple but powerful programmer you are right, it's here.
PonyProg is a serial device programmer software with a user friendly GUI framework available for Windows95, 98 & NT and Intel Linux. Its purpose is reading and writing every serial device. At the moment it supports I²C Bus, Microwire, SPI eeprom and the flash Atmel AVR and PIC micro.
SI-Prog is the programmer (hardware) for PonyProg. Every device supported by PonyProg is supported by the SI-Prog hardware usually by ISP programming or by a DIL socket.
PonyProg even works with other simple hardware interfaces like AVR ISP (STK200/300), Ludipipo and EasyI2C .

 

 Features
   
Support 24C02, 24C04, 24C08, 24C16 I²C Bus EEPROM
Support 24C32, 24C64, 24C65, 24C128, 24C256, 24C512 I²C Bus EEPROM
Auto detect 24XX EEPROM capacity
Support 24C325 and 24C645 I²C Bus EEPROM
Support Siemens SDE2516, SDE2526, SDA2546, SDA2586, SDA3546, SDA3586   EEPROM (as 24XX Auto)
Support Siemens SDE2506 EEPROM
Detect the bank roll over capability of some old 24XX EEPROM
Support AT90S1200, AT90S2313, AT90S2323, AT90S2343, AT90S4414, AT90S4434, AT90S8515, AT90S8535 Flash micro
aninew.gif (1263 byte) Support AT90S2323, AT90S2343, AT90S2333, AT90S4433, AT90S4434, AT90S8535, AT90S8534
Auto detect AVR microcontroller type
Support the AVR ATmega microcontroller
aninew.gif (1263 byte) Support the AVR ATtiny microcontroller
Write lock bits to protect the AVR micro from reading
Write both the Flash and EEPROM memory of the AVR micro in one shot
Support the AT89S8252 and AT89S53 micro
Support 93C06, 93C46, 93C56, 93C66, 93C76, 93C86 Microwire EEPROM (C and LC series, the CS serie is not supported yet)
Support 93C13 (as a 93C06) and 93C14 (as a 93C46) Microwire EEPROM
Support PIC 16C84/16F84 micro
Support 25010, 25020, 25040 SPI EEPROM
Support 25080, 25160, 25320, 25640, 25128, 25256 Big SPI EEPROM
Support 25642 and 95640 Big SPI EEPROM
Read/Write Intel hex format file as well as raw binary file
Read/Write Motorola S-record format file
Features a custom E²P format file to store the EEPROM characteristics, an editable comment and memory content all together with CRC
Enhanced buffer edit, text and hexadecimal
Work with Windows95, Windows98, WindowsNT and Linux*
Reload file button
Fill buffer command
aninew.gif (1263 byte) Security bits editing for AVR and PIC
*Not all interfaces are supported in every operating system, for more informations look at the documentation.

PonyProg is still under development, if you are a programmer and want to improve PonyProg download the sources from the Linux download page, but read the GPL license first!

Do you need AVR development tools? Look here

 

TODO
 
  • Add 8 bit organization microwire eeprom
  • Setup window to change .INI parameters
  • Write eeprom only (without flash erase) in the AVR
  • Add color to highlight differences after a verify
  • Add remote control mode for Build/Makefile support
  • Add autoprogram command
  • Add PIC16F8XX support
  • Add 24C01 write support
  • Add NVM3060 (IMBUS)
  • Add SX Parallax micro
  • ... any suggestions are welcome
   
 Screen dump
   
PonyProg screen shot

 

 Download pages
   
PonyProg for Intel Linux

PonyProg for Windows95, 98 & NT

   
 Hardware interfaces
   
PonyProg now work with several hardware interfaces. Choose the one you prefer and try it.

 

SI Prog (PonyProg Serial port Interface v2.0)

The serial port interface is a small circuit board that don't need external supply power in most cases (*). It uses a 10 pin sil connector for device specific adapter card. For every family of supported device there is an adapter pcb with a socket for every supported device. Alternatively you can use a cable for in-system programming connecting directly the serial interface to the target circuit.

Adapter cards available:

  • AVR family micros. 40 pin dip like AT90S4414 and 8515, 4434, 8535, AT89S8252, 20 pin dip like AT90S1200 and 2313, 8 pin dip like AT90S2323 and all other by in-circuit programming.
  • Every I²C Bus eeprom (i.e. 24C02, 24C04, ..., 24C512).
  • MicroWire eeprom like 93Cx6 (93C06, 93C46, ..., 93C86).
  • SPI eeprom like 25010, 25020, ..., 25256
  • SDE2506 eeprom
  • PIC16F84/16C84 micro
  • DS1621 digital thermometer/thermostat

PDF schematics

GIF schematics

* some handbook PC doesn't feed enough power from the serial port, so you need to feed power from an external source.

SI-Prog mother boardSI-Prog AVR adapter

The photo shows the SI-Prog base card and the AVR adapter card (other adapters not showed). If you want SI-Prog look at http://www.artek.it/payment.htm. or contact artek@artek.it

If you are interested in the SI Prog PCB alone you'll find assembling instruction here


AVR ISP (STK200/300) parallel port interface

The best way to perform AVR ISP programming. It works even in low voltage systems (3V). To select it choose "AVR ISP" from the Options - Setup menu and the parallel checkbox.
You can connect directly to the target system (ISP) trhough the 10 pin connector, alternatively you can connect a PonyProg adapter card for AVR, AT89S, SPI eeproms, microwire eeproms and feed external power to the device.
This interface may not work with WindowsNT due to the LPTCON.VXD file. Linux version need the parport and ppuser kernel modules.

The STK200/300 ISP programmer is provided by http://www.kanda.com/


Ludipipo interface

PonyProg support ludipipo interface to program PIC16x84. To select it choose "SI-Prog API" from the Options - Setup menu and the serial checkbox, then click on the "Invert D-OUT" check box (this line are inverted respect to PonyProg interface). If you use Linux select "SI-Prog I/O" and run PonyProg as root.

Ludipipo schematics


Easy I²C Bus interface (both serial and parallel)

To select it choose "Easy I2CBus" from the Options - Setup menu and the parallel checkbox. Note that it don't work with WindowsNT at the moment. If you can use the parallel port because the serial port may output low voltage levels with some PCs.

Easy I²CBus schematics