IMPORTANT: THIS BLOG MOVED… This Blog has been moved to & this is no longer updated…

Open Programmer

An open source USB programmer for PIC micros, I2C-SPI-MicroWire EEPROMs, some ATMEL micros, generic I2C/SPI devices

Quick review

  • Completely free and Open Source
  • Programs PIC10-12-16-18-24, dsPIC30-33, EEPROMs type 24xxxx (I2C), 25xxx (SPI), 93xx6 (MicroWire), some ATMEL micros, communicates with generic I2C & SPI 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

Now a day the serial and parallel interfaces have almost disappeared. So we use PIC controllers and their native USB interface.Open source means that all sources and schematics are given free of charge with the rights to modify and release them

Circuit :

Schematic diagram

Supported devices

devices supported for read and write:
10F200, 10F202, 10F204, 10F206, 10F220, 10F222,
12F508, 12F509, 12F510, 12F519, 12F609, 12F615, 12F629, 12F635, 12F675, 12F683,
12F1822, 12F1840,
16F505, 16F506, 16F526, 16F54, 16F610, 16F616, 16F627, 16F627A, 16F628, 16F628A, 16F630, 16F631, 16F636, 16F639, 16F648A, 16F676, 16F677, 16F684, 16F685, 16F687, 16F688, 16F689, 16F690, 16F716, 16F722, 16F722A, 16F723, 16F723A, 16F724, 16F726, 16F727, 16F73, 16F737, 16F74, 16F747, 16F76, 16F767, 16F77, 16F777, 16F785, 16F818, 16F819, 16F83, 16F83A, 16C83, 16C83A, 16F84, 16C84, 16F84A, 16C84A, 16F87, 16F870, 16F871, 16F872, 16F873, 16F873A, 16F874, 16F874A, 16F876, 16F876A, 16F877, 16F877A, 16F88, 16F882, 16F883, 16F884, 16F886, 16F887, 16F913, 16F914, 16F916, 16F917, 16F946,
16F1516, 16F1517, 16F1518, 16F1519, 16F1526, 16F1527, 16F1823, 16F1824, 16F1825, 16F1826, 16F1827, 16F1828, 16F1829, 16F1847, 16F1933, 16F1934, 16F1936, 16F1937, 16F1938, 16F1939, 16F1946, 16F1947,
18F242, 18F248, 18F252, 18F258, 18F442, 18F448, 18F452, 18F458, 18F1220, 18F1230, 18F1320, 18F1330, 18F13K50, 18F14K50, 18F2220, 18F2221, 18F2320, 18F23K20, 18F2321, 18F2331, 18F2410, 18F24J10, 18F24J11, 18F2420, 18F24K20, 18F2423, 18F2431, 18F2439, 18F2450, 18F24J50, 18F2455, 18F2458, 18F2480, 18F2510, 18F25J10, 18F25J11, 18F2515, 18F25K20, 18F2520, 18F2523, 18F2525, 18F2539, 18F2550, 18F25J50, 18F2553, 18F2580, 18F2585, 18F2610, 18F26J11, 18F26J13, 18F2620, 18F26K20, 18F26J50, 18F26J53, 18F2680, 18F2682, 18F2685, 18F27J13, 18F27J53, 18F4220, 18F4221, 18F4320, 18F43K20, 18F4321, 18F4331, 18F4410, 18F44J10, 18F44J11, 18F4420, 18F44K20, 18F4423, 18F4431, 18F4439, 18F4450, 18F44J50, 18F4455, 18F4458, 18F4480, 18F4510, 18F45J10, 18F45J11, 18F4515, 18F4520, 18F45K20, 18F4523, 18F4525, 18F4539, 18F4550, 18F45J50, 18F4553, 18F4580, 18F4585, 18F4610, 18F46J11, 18F46J13, 18F4620, 18F46K20, 18F46J50, 18F46J53, 18F4680, 18F4682, 18F4685, 18F47J13, 18F47J53, 18F8722,
24F04KA200, 24F04KA201, 24F08KA101, 24F08KA102, 24F16KA101, 24F16KA102, 24FJ16GA002, 24FJ16GA004, 24FJ32GA002, 24FJ32GA004, 24FJ48GA002, 24FJ48GA004, 24FJ64GA002, 24FJ64GA004, 24FJ64GA006, 24FJ64GA008, 24FJ64GA010, 24FJ96GA006, 24FJ96GA008, 24FJ96GA010, 24FJ128GA006, 24FJ128GA008, 24FJ128GA010, 24FJ32GA102, 24FJ32GA104, 24FJ32GB002, 24FJ32GB004, 24FJ64GA102, 24FJ64GA104, 24FJ64GB002, 24FJ64GB004, 24FJ64GB106, 24FJ64GB108, 24FJ64GB110, 24FJ128GA106, 24FJ128GB106, 24FJ128GA108, 24FJ128GB108, 24FJ128GA110, 24FJ128GB110, 24FJ192GA106, 24FJ192GB106, 24FJ192GA108, 24FJ192GB108, 24FJ192GA110, 24FJ192GB110, 24FJ256GA106, 24FJ256GB106, 24FJ256GA108, 24FJ256GB108, 24FJ256GA110, 24FJ256GB110, 24HJ12GP201, 24HJ12GP202, 24HJ16GP304, 24HJ32GP202, 24HJ32GP204, 24HJ32GP302, 24HJ32GP304, 24HJ64GP202, 24HJ64GP204, 24HJ64GP206, 24HJ64GP210, 24HJ64GP502, 24HJ64GP504, 24HJ64GP506, 24HJ64GP510, 24HJ128GP202, 24HJ128GP204, 24HJ128GP206, 24HJ128GP210, 24HJ128GP306, 24HJ128GP310, 24HJ128GP502, 24HJ128GP504, 24HJ128GP506, 24HJ128GP510, 24HJ256GP206, 24HJ256GP210, 24HJ256GP610,
30F1010, 30F2010, 30F2011, 30F2020, 30F2023, 30F2012, 30F3010, 30F3011, 30F3012, 30F3013, 30F3014, 30F4011, 30F4012, 30F4013, 30F5011, 30F5013, 30F5015, 30F5016, 30F6010, 30F6011, 30F6012, 30F6013, 30F6014, 30F6015,
33FJ06GS101, 33FJ06GS102, 33FJ06GS202, 33FJ12GP201, 33FJ12GP202, 33FJ12MC201, 33FJ12MC202, 33FJ16GP304, 33FJ16GS402, 33FJ16GS404, 33FJ16GS502, 33FJ16GS504, 33FJ16MC304, 33FJ32GP202, 33FJ32GP204, 33FJ32GP302, 33FJ32GP304, 33FJ32GS406, 33FJ32GS606, 33FJ32GS608, 33FJ32GS610, 33FJ32MC202, 33FJ32MC204, 33FJ32MC302, 33FJ32MC304, 33FJ64GP202, 33FJ64GP204, 33FJ64GP206, 33FJ64GP306, 33FJ64GP310, 33FJ64GP706, 33FJ64GP708, 33FJ64GP710, 33FJ64GP802, 33FJ64GP804, 33FJ64GS406, 33FJ64GS606, 33FJ64GS608, 33FJ64GS610, 33FJ64MC202, 33FJ64MC204, 33FJ64MC506, 33FJ64MC508, 33FJ64MC510, 33FJ64MC706, 33FJ64MC710, 33FJ64MC802, 33FJ64MC804, 33FJ128GP202, 33FJ128GP204, 33FJ128GP206, 33FJ128GP306, 33FJ128GP310, 33FJ128GP706, 33FJ128GP708, 33FJ128GP710, 33FJ128GP802, 33FJ128GP804, 33FJ128MC202, 33FJ128MC204, 33FJ128MC506, 33FJ128MC510, 33FJ128MC706, 33FJ128MC708, 33FJ128MC710, 33FJ128MC802, 33FJ128MC804, 33FJ256GP506, 33FJ256GP510, 33FJ256GP710, 33FJ256MC510, 33FJ256MC710,
2400, 2401, 2402, 2404, 2408, 2416, 2432, 2464, 24128, 24256, 24512, 241024, 241025,
25010, 25020, 25040, 25080, 25160, 25320, 25640, 25128, 25256, 25512, 251024,
93S46, 93×46, 93x46A, 93S56, 93×56, 93x56A, 93S66, 93×66, 93x66A, 93×76, 93x76A, 93×86, 93x86A,
AT90S1200, AT90S2313, AT90S8515, AT90S8535, ATmega8, ATmega8A, ATmega8515, ATmega8535, ATmega16, ATmega16A, ATmega32, ATmega32A, ATmega64, ATmega64A, ATtiny2313

devices supported for read only:
12C508, 12C508A, 12C509, 12C509A, 12C671, 12C672, 12CE673, 12CE674

Important!! Don’t use 3.3V devices without the 3.3V expansion boards, otherwise permanent damage may occur; the software verifies that such adapters are present before starting to program, but obviously you need to select the proper device; the 3.3V devices are:
Also don’t put any 24F-33F on the 30F socket, which works at 5V.

More details will update later……….


Comments on: "Open Programmer" (1)

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: