You Are Here: Home » AVR ATmega Projects » Interfacing(USB - RS232 - I2c -ISP) Projects » Open Programmer – USB programmer for PIC, EPROM, ATMEL, SPI

Open Programmer – USB programmer for PIC, EPROM, ATMEL, SPI




Open Programmer – An open source USB programmer for PIC micros, I2C-SPI-MicroWire-OneWire-UNIO EEPROMs, some ATMEL micros, generic I2C/SPI devices and (soon) other devices.Open Programmer – USB programmer for PIC, EPROM, ATMEL, SPI

  • Completely free and Open Source (including firmware)
  • Programs PIC10-12-16-18-24, dsPIC30-33, EEPROMs type 24xxxx (I2C), 25xxx (SPI), 93xx6 (MicroWire), DS24xx (OneWire), 11xxx (UNIO), some ATMEL micros, communicates with generic I2C & SPI devices (see supported devices)
  • Can work as ICD debugger
  • USB 2.0 Full Speed interface, HID class (same as keyboards, mice, etc.)
  • Self powered
  • Doesn’t need drivers
  • Built from easy to find components (estimated cost ~10€)
  • Hardware generated timings for maximum speed and reliability (writes a 18F2550 in 15s, 8s under Linux)
  • Doesn’t saturate your CPU and doesn’t suffer when other programs are running
  • Open source control programs for Linux and Windows
  • It’s not another PicKit clone

OpenProg is a C++ application written with Visual C++ 6 and MFC.
Using it is straightforward: just connect the programmer, start the application, select the device, load a hex file and read or write; works with XP, the V bloatware, 7.
On the “Device” tab it’s possible to modify some programming options, such as ID and calibration write, use of eeprom etc.; only settings compatible with the current device will be used.

graphical interface for Linux! It’s built using GTK libraries and it looks more or less like the other.
From version 0.7.10 it includes an ICD debugger, working more or less like pdb; in addition it supports coff files.
To use it under Windows it’s necessary to install the GTK Runtime Environment.

Supported devices

The author tried this programmer with a small number of devices (those I own plus some tested by other users) indicated in bold; the other devices are supported but not tested; however, considering that for every device family at least one has been verified, all of them should work without problems.
Please let me know if you verify operation with the untested devices.
Also contact me if you need other algorithms or code new ones by yourself.
Take notice:
LF series PICs are used exactly as the F ones;
Atmel AVR devices with varius suffixes are grouped together whenever the programming algorithm is exactly the same, eg. ATmega8 and ATmega8A;
EEPROM memories comprise all versions with VDDmax=5V, eg. 242LC56, 24AA256, etc.;
93x memories use 2 different algorithms, for the 93S series and for all the others, indicated with 93x (93xA have 8 bit organization).

Schematic Open Programmer – USB programmer for PIC, EPROM, ATMEL, SPIFor more detail: Open Programmer – USB programmer for PIC, EPROM, ATMEL, SPI

Leave a Comment

You must be logged in to post a comment.

Read previous post:
Updating electricity meter to communicate via WLAN
Updating electricity meter to communicate via WLAN

A while ago Farnell sent email to me and offered one (inexpensive) product  as a sample in exchange for mentioning...

Close
Scroll to top