Important NoteThis entire repo was AI created - including all of the data within. The intent was to A) help me with my personal electronics inventory; and B) see how I could use AI to make that process a bit easier. DO NOT TRUST!
AVR 6 Pin In-Circuit Serial Programming Adapter
Overview
The AVR 6 Pin In-Circuit Serial Programming (ICSP) Adapter is a compact breakout board that provides a breadboard-friendly interface for programming AVR microcontrollers. This adapter converts the standard 2x3 IDC header used by AVR programmers to individual breadboard-compatible pins, making it easy to program AVR chips during prototyping and development.
Specifications
- Connector Type: 2x3 IDC box header (0.1” pitch)
- Breakout Pins: 6 individual 0.1” header pins
- Pin Spacing: Standard 0.1” (2.54mm) breadboard compatible
- PCB Size: Approximately 17.77mm x 15.14mm (0.69” x 0.59”)
- Material: High-quality PCB with gold-plated contacts
- Assembly: Requires basic soldering skills
Pin Configuration
2x3 IDC Header Pinout
MISO VCC
SCK MOSI
RST GND
Standard AVR ISP Signals
- VCC: Target power (3.3V or 5V)
- GND: Ground reference
- MOSI: Master Out, Slave In (programming data)
- MISO: Master In, Slave Out (programming data)
- SCK: Serial Clock
- RST: Reset signal (active low)
Features
- Breadboard Compatible: Direct insertion into standard breadboards
- Compact Design: Minimal footprint for space-constrained projects
- Standard Pinout: Compatible with all AVR ISP programmers
- Durable Construction: High-quality PCB with reliable connections
- Easy Assembly: Simple soldering required for headers
- Cost Effective: Affordable solution for AVR programming
Compatible Programmers
USB Programmers
- USBtinyISP: Popular open-source USB programmer
- AVRISP mkII: Official Atmel/Microchip programmer
- USBasp: Low-cost USB programmer
- Arduino as ISP: Arduino board configured as programmer
Development Boards
- Arduino Uno/Nano/Pro Mini: Using Arduino as ISP
- Raspberry Pi: Using GPIO pins with avrdude
- STK500: Classic Atmel development board
- AVR Dragon: Advanced debugging and programming tool
Supported Microcontrollers
ATmega Series
- ATmega328P: Arduino Uno/Nano microcontroller
- ATmega32U4: Arduino Leonardo/Pro Micro microcontroller
- ATmega2560: Arduino Mega microcontroller
- ATmega168/88/48: Smaller ATmega variants
ATtiny Series
- ATtiny85: Popular 8-pin microcontroller
- ATtiny84: 14-pin microcontroller
- ATtiny2313: 20-pin microcontroller
- ATtiny4313: Enhanced 20-pin variant
Other AVR Microcontrollers
- Most AVR microcontrollers with ISP capability
- Custom AVR-based designs
- Legacy AVR microcontrollers
Applications
Development and Prototyping
- Programming AVR microcontrollers on breadboards
- Firmware development and testing
- Bootloader installation
- Fuse bit configuration
Educational Projects
- Learning AVR programming
- Microcontroller course projects
- STEM education applications
- Arduino programming without Arduino board
Production and Maintenance
- Initial programming of custom AVR boards
- Firmware updates and bug fixes
- Quality testing and validation
- Field programming and updates
Assembly Instructions
- Prepare Components: PCB, 2x3 IDC header, 0.1” header strip
- Install IDC Header: Insert 2x3 header on top side, solder all pins
- Prepare Breadboard Headers: Break header strip into two 3-pin sections
- Position Headers: Place in breadboard to hold steady during soldering
- Install Breakout: Place adapter on headers and solder side pins
- Test Connections: Verify continuity between IDC and breakout pins
Usage Instructions
Basic Setup
- Insert in Breadboard: Place adapter in breadboard with pins in separate rows
- Connect Target: Wire breakout pins to target AVR microcontroller
- Connect Programmer: Attach ISP programmer to 2x3 IDC header
- Power Target: Ensure target circuit has proper power supply
- Program: Use avrdude or IDE to program microcontroller
Wiring Example (ATtiny85)
Adapter Pin -> ATtiny85 Pin
VCC -> Pin 8 (VCC)
GND -> Pin 4 (GND)
MOSI -> Pin 5 (PB0/MOSI)
MISO -> Pin 6 (PB1/MISO)
SCK -> Pin 7 (PB2/SCK)
RST -> Pin 1 (PB5/RST)
Programming Software
Command Line Tools
- avrdude: Universal AVR programming utility
- avr-gcc: AVR compiler toolchain
- make: Build automation tool
Integrated Development Environments
- Arduino IDE: With ATtiny board support
- Atmel Studio: Official Microchip IDE
- PlatformIO: Modern development platform
- Code::Blocks: Open-source IDE with AVR support
Troubleshooting
Common Issues
- Connection Problems: Check wiring and solder joints
- Power Issues: Verify target power supply voltage
- Programming Failures: Check programmer compatibility and drivers
- Fuse Bit Errors: Use proper fuse settings for target microcontroller
Best Practices
- Double-check Wiring: Verify all connections before programming
- Use Proper Voltage: Match programmer and target voltage levels
- Backup Fuses: Read and save original fuse settings
- Test Continuity: Verify adapter connections with multimeter
Package Contents
- 1x AVR ICSP Adapter PCB
- 1x 2x3 IDC box header
- 1x 0.1” header strip (6 pins)
- Assembly instructions
Important Notes
- Assembly Required: Basic soldering skills needed
- Voltage Compatibility: Ensure programmer and target voltage match
- Proper Orientation: Check IDC header orientation before connecting
- Static Protection: Use anti-static precautions when handling
- Documentation: Keep AVR datasheet handy for pinout reference
Advantages
- Breadboard Friendly: Easy prototyping and development
- Universal Compatibility: Works with all standard AVR programmers
- Compact Size: Minimal breadboard real estate usage
- Cost Effective: Affordable programming solution
- Reusable: Durable construction for repeated use
- Educational Value: Great for learning AVR programming concepts