Inquire: Call 0086-755-23203480, or reach out via the form below/your sales contact to discuss our design, manufacturing, and assembly capabilities.
Quote: Email your PCB files to Sales@pcbsync.com (Preferred for large files) or submit online. We will contact you promptly. Please ensure your email is correct.
Notes: For PCB fabrication, we require PCB design file in Gerber RS-274X format (most preferred), *.PCB/DDB (Protel, inform your program version) format or *.BRD (Eagle) format. For PCB assembly, we require PCB design file in above mentioned format, drilling file and BOM. Click to download BOM template To avoid file missing, please include all files into one folder and compress it into .zip or .rar format.
Digispark ATtiny85: The Smallest Arduino-Compatible Board
The first time I held a Digispark ATtiny85, I couldn’t believe something this tiny could run Arduino code. Smaller than my thumbnail and costing less than a cup of coffee, this board has become my go-to solution for projects where a full-size Arduino would be overkill.
The Digispark ATtiny85 is a microcontroller development board created by Digistump that packs surprising capability into an impossibly small package. Based on the ATtiny85 chip from Microchip (formerly Atmel), it plugs directly into your computer’s USB port for programming and power. No cables, no external programmers—just plug it in and upload your sketch.
What Makes the Digispark ATtiny85 Special?
Unlike traditional Arduino boards that require USB-to-serial converter chips, the Digispark ATtiny85 implements USB communication entirely in software through an ingenious solution called V-USB. This software-defined USB interface, combined with the Micronucleus bootloader, eliminates the need for additional hardware and keeps the board incredibly compact.
The original Digispark measures approximately 25mm x 18mm—smaller than a standard USB flash drive. Some clones are even tinier. Despite this miniature footprint, the board includes an onboard 500mA voltage regulator, status LED, and all the circuitry needed for USB programming.
For makers working on space-constrained projects, the Digispark ATtiny85 opens possibilities that simply don’t exist with larger boards. I’ve embedded these in wearables, hidden them inside keyboard enclosures, and built standalone USB devices that disappear into the port they’re plugged into.
Digispark ATtiny85 Technical Specifications
Understanding the hardware capabilities helps determine if the Digispark ATtiny85 fits your project requirements:
Specification
Value
Microcontroller
ATtiny85
Architecture
8-bit AVR RISC
Operating Voltage
5V
Clock Speed
16.5 MHz (internal oscillator)
Flash Memory
8 KB (6 KB usable after bootloader)
SRAM
512 bytes
EEPROM
512 bytes
I/O Pins
6 (P0 to P5)
PWM Channels
3 (P0, P1, P4)
ADC Channels
4 (10-bit resolution)
USB Interface
V-USB (software-defined)
Input Voltage (VIN)
7V – 35V (12V recommended max)
Board Dimensions
~25mm x 18mm
Price Range
$1 – $5 USD
The 6KB usable flash sounds limiting, but many practical applications fit comfortably within this constraint. The bootloader occupies roughly 2KB, leaving enough space for LED controllers, sensor readers, USB HID devices, and automation scripts.
Digispark ATtiny85 Pinout Guide
The Digispark ATtiny85 pinout requires careful attention since pins serve multiple functions. Two pins (P3 and P4) handle USB communication, which affects their availability during active USB sessions.
Complete Pin Function Table
Pin
Digital
Analog
PWM
Special Functions
Notes
P0
D0
—
Yes
SDA (I2C), AREF
LED on older revisions
P1
D1
—
Yes
MISO, DO
LED on Rev 2/3/4
P2
D2
A1
—
SCK, SCL (I2C)
Analog input
P3
D3
A3
—
USB+
Shared with USB D+
P4
D4
A2
Yes
USB-
Shared with USB D-
P5
D5
A0
—
Reset (default)
Only 3V output on clones
USB Pin Sharing Explained
P3 and P4 connect to the USB data lines. During programming, these pins handle USB communication. Once your sketch runs, you can use them as regular I/O—but only if your code doesn’t actively communicate over USB. If you need all six pins, avoid USB serial communication in your final application.
Revision Differences
The onboard LED location varies by board revision:
Revision
LED Pin
Reset Pin (P5)
Original (no marking)
P0
Disabled (6 I/O available)
Rev 2
P1
Disabled (6 I/O available)
Rev 3 (clones)
P1
Enabled (5 I/O available)
Rev 4
P1
Disabled (6 I/O available)
Most inexpensive clones are Rev 3 variants with P5 functioning as reset rather than I/O. This limits you to five usable pins unless you modify fuse settings—a process that requires a high-voltage programmer to reverse if something goes wrong.
Setting Up Arduino IDE for Digispark ATtiny85
Programming the Digispark ATtiny85 works through the standard Arduino IDE with some additional board definitions. Here’s the setup process:
Step 1: Install Digispark Drivers
Windows users need libusb drivers before the board will be recognized:
Download drivers from the Digistump GitHub repository
Extract and run DPinst64.exe (64-bit) or DPinst.exe (32-bit)
Verify installation in Device Manager under “libusb-win32 devices”
Mac and Linux users typically don’t need additional drivers, though Linux may require udev rules for non-root access.
Step 2: Add Board Manager URL
Open Arduino IDE and navigate to File → Preferences. In the “Additional Board Manager URLs” field, add:
The Digispark ATtiny85 upload process differs from standard Arduino boards:
Write your sketch
Click Upload (do NOT plug in the board yet)
Wait for “Plug in device now… (will timeout in 60 seconds)”
Insert the Digispark into a USB port
Wait for “Micronucleus done. Thank you!”
This sequence exists because the bootloader only listens for uploads during a 5-second window after power-up. Miss that window, and the board starts running your existing sketch.
Digispark ATtiny85 vs Arduino Uno Comparison
Understanding the tradeoffs helps determine when the Digispark ATtiny85 makes sense:
Feature
Digispark ATtiny85
Arduino Uno
Microcontroller
ATtiny85
ATmega328P
Clock Speed
16.5 MHz
16 MHz
Flash Memory
8 KB (6 KB usable)
32 KB (31.5 KB usable)
SRAM
512 bytes
2 KB
EEPROM
512 bytes
1 KB
Digital I/O
6
14
Analog Inputs
4
6
PWM Pins
3
6
Hardware Serial
No
Yes
Hardware I2C
No (USI-based)
Yes
USB Programming
Built-in (V-USB)
Via USB-Serial chip
Price
$1-5
$20-25
Size
~25 x 18 mm
68.6 x 53.4 mm
The Digispark ATtiny85 sacrifices memory, pins, and hardware peripherals for size and cost advantages. It doesn’t replace the Arduino Uno—it complements it for applications where minimal resources suffice.
Practical Digispark ATtiny85 Projects
The Digispark ATtiny85’s native USB capability enables unique applications impossible with boards lacking direct USB access.
USB HID Keyboard Emulation
The most popular Digispark ATtiny85 application is keyboard emulation. Using the DigiKeyboard library, the board can send keystrokes to any computer:
#include “DigiKeyboard.h”
void setup() {
pinMode(1, INPUT_PULLUP);
}
void loop() {
DigiKeyboard.update();
if (digitalRead(1) == LOW) {
DigiKeyboard.sendKeyStroke(KEY_ENTER);
DigiKeyboard.delay(300);
}
}
This capability enables macro pads, automated login devices, accessibility tools, and yes—security testing devices similar to the USB Rubber Ducky.
Common Project Categories
Project Type
Description
Difficulty
USB Macro Pad
Programmable shortcut keys
Beginner
Password Manager
Auto-type stored credentials
Intermediate
LED Controller
WS2812 NeoPixel strips
Beginner
Sensor Logger
Temperature/humidity monitoring
Intermediate
USB Volume Knob
Rotary encoder media control
Intermediate
BadUSB Clone
Security testing device
Advanced
OLED Display
I2C display with tiny graphics
Advanced
Servo Controller
Single servo projects
Beginner
Working with I2C Devices
The ATtiny85 lacks dedicated I2C hardware but supports it through USI (Universal Serial Interface). Use the TinyWireM library instead of the standard Wire library:
Memory constraints make I2C OLED displays challenging. Standard Adafruit libraries won’t fit; use lightweight alternatives like Tiny4kOLED designed specifically for ATtiny85.
Troubleshooting Digispark ATtiny85 Issues
Common problems and their solutions:
Board Not Recognized
Symptom: No USB connection sound, device doesn’t appear in Device Manager.
Solutions:
Reinstall drivers using administrator privileges
Try different USB ports (USB 2.0 often works better than USB 3.0)
Check if the board is a defective clone
On Linux, verify udev rules are configured
Upload Timeout
Symptom: “Device search timed out” or similar message.
Solutions:
Unplug the board before clicking Upload
Insert within the 60-second window after the prompt appears
Try plugging directly into the motherboard rather than through a hub
Some clones require longer detection time—wait a moment after plugging in
Sketch Runs Once Then Fails
Symptom: Code works after upload but not after power cycling.
Solutions:
Add DigiKeyboard.update() or DigiKeyboard.delay(5000) at sketch start
The bootloader needs time before your sketch hijacks USB pins
Avoid immediate USB communication in setup()
P5 Doesn’t Work as I/O
Symptom: Pin P5 shows unexpected behavior or only outputs 3V.
Cause: Most clones keep P5 as the reset pin rather than disabling it.
Solution: Modify fuse settings (advanced, irreversible without high-voltage programmer) or design around using only P0-P4.
Digispark ATtiny85 Resources and Downloads
Resource
Description
Link/Location
ATtiny85 Datasheet
Official Microchip documentation
Microchip website
Digistump Board Files
Arduino IDE board definitions
GitHub digistump repo
Windows Drivers
libusb-win32 drivers
GitHub releases
Micronucleus Bootloader
USB bootloader source
GitHub micronucleus
DigiKeyboard Library
HID keyboard emulation
Included with board package
TinyWireM Library
I2C for ATtiny
Arduino Library Manager
Tiny4kOLED Library
Lightweight OLED driver
Arduino Library Manager
DigiSpark Scripts
USB automation examples
GitHub community repos
Frequently Asked Questions About Digispark ATtiny85
Can the Digispark ATtiny85 replace an Arduino Uno?
No, but it can replace an Uno in specific applications. If your project needs only a few I/O pins, fits within 6KB of code, and doesn’t require hardware serial or extensive libraries, the Digispark ATtiny85 works beautifully. Complex projects with multiple sensors, displays, and communication interfaces still need more capable boards.
Why does my Digispark ATtiny85 take 5 seconds to start?
The Micronucleus bootloader waits approximately 5 seconds after power-up, listening for programming commands over USB. If none arrive, it transfers control to your sketch. This delay ensures you can always reprogram the board, even if your sketch crashes immediately or disables USB functionality.
How do I use Serial.print() for debugging on Digispark ATtiny85?
Traditional serial debugging isn’t available since the ATtiny85 lacks hardware UART and USB communication is software-based. Alternatives include: blinking the onboard LED in patterns, using DigiUSB library for software serial over USB, or connecting an I2C OLED for visual feedback.
Is the Digispark ATtiny85 safe for USB HID projects?
The hardware itself is safe—it’s just a microcontroller. However, keyboard emulation capabilities can be misused. Never deploy HID scripts on computers you don’t own or have permission to test. Many organizations consider unauthorized USB HID devices security threats and may flag or confiscate them.
What’s the difference between genuine Digispark and clones?
Original Digisparks came from Digistump (now defunct). Clones vary in quality and may have different revision numbers, LED locations, or P5 functionality. Most $1-2 boards from AliExpress or eBay are Rev 3 clones that work identically for most purposes but limit P5 to reset functionality only.
Conclusion
The Digispark ATtiny85 occupies a unique position in the maker ecosystem. It’s not trying to compete with Arduino Uno on features—it’s enabling projects that wouldn’t exist otherwise. When you need a tiny, cheap, USB-programmable microcontroller that fits anywhere and costs almost nothing, nothing else comes close.
I keep a handful of these boards in my parts drawer at all times. They’re perfect for quick USB automation tools, tiny sensor nodes, LED controllers, and proof-of-concept prototypes. The limitations are real—512 bytes of RAM disappears fast, and some libraries simply won’t fit—but working within constraints often leads to more elegant solutions.
Whether you’re building a custom macro pad, creating a USB prank device, or learning microcontroller programming on a budget, the Digispark ATtiny85 delivers remarkable capability in an impossibly small package. At this price point, you can afford to experiment freely and discover what this tiny board can really do.
Note: The microcontroller is the ATtiny85, not ATtiny86. There is no ATtiny86 chip—this is a common misconception. Always verify you’re purchasing ATtiny85-based Digispark boards.
Inquire: Call 0086-755-23203480, or reach out via the form below/your sales contact to discuss our design, manufacturing, and assembly capabilities.
Quote: Email your PCB files to Sales@pcbsync.com (Preferred for large files) or submit online. We will contact you promptly. Please ensure your email is correct.
Notes: For PCB fabrication, we require PCB design file in Gerber RS-274X format (most preferred), *.PCB/DDB (Protel, inform your program version) format or *.BRD (Eagle) format. For PCB assembly, we require PCB design file in above mentioned format, drilling file and BOM. Click to download BOM template To avoid file missing, please include all files into one folder and compress it into .zip or .rar format.