Things used in this project

Hardware components:
Attiny85
Atmel ATTiny85
×1
11801 01
SparkFun Tiny AVR Programmer
×1
Adafruit FTDI Serial TTL-232 USB Cable
×1
SparkFun .1 µF Ceramic Capacitor
×1
SparkFun 10K Ω Resistor
×1
Adafruit Break-away 0.1" 36-pin strip male header
1 piece @ length 6
×1
11026 02
Jumper wires (generic)
×1
220 Ω Resistor
×1
09590 01
LED (generic)
×1
Software apps and online services:
Ide web
Arduino Arduino IDE

Schematics

Fritzing
ATtiny_Bootloader.fzz
Breadboard
Attiny bootloader bb
Schematic
Attiny bootloader schem
Fritzing - LED
LED.fzz
Breadboard - LED
Led bb
Schematic - LED
Led schem

Code

boards.txtArduino
Version 1.0.2
menu.cpu=Processor
menu.clock=Clock

################################################################################

ATtinyX5.name=ATtiny25/45/85
ATtinyX5.bootloader.tool=arduino:avrdude
ATtinyX5.bootloader.file=optiboot/optiboot_attiny85.hex
ATtinyX5.bootloader.unlock_bits=0xff
ATtinyX5.bootloader.lock_bits=0xff

ATtinyX5.build.core=arduino:arduino
ATtinyX5.build.board=attiny
ATtinyX5.upload.tool=arduino:avrdude

ATtinyX5.menu.cpu.attiny25=ATtiny25
ATtinyX5.menu.cpu.attiny25.upload.maximum_size=1472
ATtinyX5.menu.cpu.attiny25.upload.maximum_data_size=128
ATtinyX5.menu.cpu.attiny25.build.mcu=attiny25
ATtinyX5.menu.cpu.attiny25.build.variant=tiny8

ATtinyX5.menu.cpu.attiny45=ATtiny45
ATtinyX5.menu.cpu.attiny45.upload.maximum_size=3520
ATtinyX5.menu.cpu.attiny45.upload.maximum_data_size=256
ATtinyX5.menu.cpu.attiny45.build.mcu=attiny45
ATtinyX5.menu.cpu.attiny45.build.variant=tiny8

ATtinyX5.menu.cpu.attiny85=ATtiny85
ATtinyX5.menu.cpu.attiny85.upload.maximum_size=7616
ATtinyX5.menu.cpu.attiny85.upload.maximum_data_size=512
ATtinyX5.menu.cpu.attiny85.build.mcu=attiny85
ATtinyX5.menu.cpu.attiny85.build.variant=tiny8

ATtinyX5.menu.clock.internal1=Internal 1 MHz
ATtinyX5.menu.clock.internal1.bootloader.low_fuses=0x62
ATtinyX5.menu.clock.internal1.bootloader.high_fuses=0xdf
ATtinyX5.menu.clock.internal1.bootloader.extended_fuses=0xfe
ATtinyX5.menu.clock.internal1.build.f_cpu=1000000L

ATtinyX5.menu.clock.internal8=Internal 8 MHz
ATtinyX5.menu.clock.internal8.bootloader.low_fuses=0xe2
ATtinyX5.menu.clock.internal8.bootloader.high_fuses=0xdf
ATtinyX5.menu.clock.internal8.bootloader.extended_fuses=0xfe
ATtinyX5.menu.clock.internal8.build.f_cpu=8000000L

ATtinyX5.menu.clock.internal16=Internal 16 MHz
ATtinyX5.menu.clock.internal16.bootloader.low_fuses=0xf1
ATtinyX5.menu.clock.internal16.bootloader.high_fuses=0xdf
ATtinyX5.menu.clock.internal16.bootloader.extended_fuses=0xfe
ATtinyX5.menu.clock.internal16.build.f_cpu=16000000L

ATtinyX5.menu.clock.external8=External 8 MHz
ATtinyX5.menu.clock.external8.bootloader.low_fuses=0xfe
ATtinyX5.menu.clock.external8.bootloader.high_fuses=0xdf
ATtinyX5.menu.clock.external8.bootloader.extended_fuses=0xfe
ATtinyX5.menu.clock.external8.build.f_cpu=8000000L

ATtinyX5.menu.clock.external16=External 16 MHz
ATtinyX5.menu.clock.external16.bootloader.low_fuses=0xfe
ATtinyX5.menu.clock.external16.bootloader.high_fuses=0xdf
ATtinyX5.menu.clock.external16.bootloader.extended_fuses=0xfe
ATtinyX5.menu.clock.external16.build.f_cpu=16000000L

ATtinyX5.menu.clock.external20=External 20 MHz
ATtinyX5.menu.clock.external20.bootloader.low_fuses=0xfe
ATtinyX5.menu.clock.external20.bootloader.high_fuses=0xdf
ATtinyX5.menu.clock.external20.bootloader.extended_fuses=0xfe
ATtinyX5.menu.clock.external20.build.f_cpu=20000000L

################################################################################

ATtinyX4.name=ATtiny24/44/84
ATtinyX4.bootloader.tool=arduino:avrdude
ATtinyX4.bootloader.file=optiboot/optiboot_attiny84.hex
ATtinyX4.bootloader.unlock_bits=0xff
ATtinyX4.bootloader.lock_bits=0xff
ATtinyX4.build.core=arduino:arduino
ATtinyX4.build.board=attiny
ATtinyX4.upload.tool=arduino:avrdude

ATtinyX4.menu.cpu.attiny24=ATtiny24
ATtinyX4.menu.cpu.attiny24.upload.maximum_size=1472
ATtinyX4.menu.cpu.attiny24.upload.maximum_data_size=128
ATtinyX4.menu.cpu.attiny24.build.mcu=attiny24
ATtinyX4.menu.cpu.attiny24.build.variant=tiny14

ATtinyX4.menu.cpu.attiny44=ATtiny44
ATtinyX4.menu.cpu.attiny44.upload.maximum_size=3520
ATtinyX4.menu.cpu.attiny44.upload.maximum_data_size=256
ATtinyX4.menu.cpu.attiny44.build.mcu=attiny44
ATtinyX4.menu.cpu.attiny44.build.variant=tiny14

ATtinyX4.menu.cpu.attiny84=ATtiny84
ATtinyX4.menu.cpu.attiny84.upload.maximum_size=7616
ATtinyX4.menu.cpu.attiny84.upload.maximum_data_size=512
ATtinyX4.menu.cpu.attiny84.build.mcu=attiny84
ATtinyX4.menu.cpu.attiny84.build.variant=tiny14

ATtinyX4.menu.clock.internal1=Internal 1 MHz
ATtinyX4.menu.clock.internal1.bootloader.low_fuses=0x62
ATtinyX4.menu.clock.internal1.bootloader.high_fuses=0xdf
ATtinyX4.menu.clock.internal1.bootloader.extended_fuses=0xfe
ATtinyX4.menu.clock.internal1.build.f_cpu=1000000L

ATtinyX4.menu.clock.internal8=Internal 8 MHz
ATtinyX4.menu.clock.internal8.bootloader.low_fuses=0xe2
ATtinyX4.menu.clock.internal8.bootloader.high_fuses=0xdf
ATtinyX4.menu.clock.internal8.bootloader.extended_fuses=0xfe
ATtinyX4.menu.clock.internal8.build.f_cpu=8000000L

ATtinyX4.menu.clock.external8=External 8 MHz
ATtinyX4.menu.clock.external8.bootloader.low_fuses=0xfe
ATtinyX4.menu.clock.external8.bootloader.high_fuses=0xdf
ATtinyX4.menu.clock.external8.bootloader.extended_fuses=0xfe
ATtinyX4.menu.clock.external8.build.f_cpu=8000000L

ATtinyX4.menu.clock.external16=External 16 MHz
ATtinyX4.menu.clock.external16.bootloader.low_fuses=0xfe
ATtinyX4.menu.clock.external16.bootloader.high_fuses=0xdf
ATtinyX4.menu.clock.external16.bootloader.extended_fuses=0xfe
ATtinyX4.menu.clock.external16.build.f_cpu=16000000L

ATtinyX4.menu.clock.external20=External 20 MHz
ATtinyX4.menu.clock.external20.bootloader.low_fuses=0xfe
ATtinyX4.menu.clock.external20.bootloader.high_fuses=0xdf
ATtinyX4.menu.clock.external20.bootloader.extended_fuses=0xfe
ATtinyX4.menu.clock.external20.build.f_cpu=20000000L
platform.txtArduino
Version 1.0.2
name=ATtiny Microcontrollers

tools.avrdude.path={runtime.tools.avrdude.path}
tools.avrdude.erase.params.verbose=-v -v -v -v
tools.avrdude.erase.params.quiet=-q -q
tools.avrdude.erase.pattern="{cmd.path}" "-C{config.path}" {erase.verbose} -p{build.mcu} -c{protocol} {program.extra_params} -e -Uefuse:w:{bootloader.extended_fuses}:m -Uhfuse:w:{bootloader.high_fuses}:m -Ulfuse:w:{bootloader.low_fuses}:m

tools.avrdude.bootloader.params.verbose=-v -v -v -v
tools.avrdude.bootloader.params.quiet=-q -q
tools.avrdude.bootloader.pattern="{cmd.path}" "-C{config.path}" {bootloader.verbose} -p{build.mcu} -c{protocol} {program.extra_params} "-Uflash:w:{runtime.platform.path}/bootloaders/{bootloader.file}:i"
Blinking LED CodeArduino
// ***
// *** Specifies the pin on which the LED is connected.
// ***
#define LED_PIN 4

// ***
// *** Specifies the amount of time (in milliseconds)
// *** to pause between truning the LED on and off.
// ***
#define DELAY_TIME 1000

// ***
// *** The setup function runs once when you press
// *** reset or power the board.
// ***
void setup() 
{
  // ***
  // *** Initialize the digital pin for output.
  // ***
  pinMode(LED_PIN, OUTPUT);
}

// ***
// *** The loop function runs over 
// *** and over again forever.
// ***
void loop()
{
  // ***
  // *** Turn the LED ON. Since we have connected
  // *** the LED to the 3.3v pin we must set our
  // *** GPIO pin to LOW to light the LED.
  // ***
  digitalWrite(LED_PIN, LOW);
  
  // ***
  // *** Pause
  // ***
  delay(DELAY_TIME);
  
  // ***
  // *** Turn the LED off. Since we have connected
  // *** the LED to the 3.3v pin we must set our
  // *** GPIO pin to HIGH to turn the LED off.
  // ***
  digitalWrite(LED_PIN, HIGH);
  
  // ***
  // *** Pause
  // ***
  delay(DELAY_TIME);
}

Credits

Mysocialphoto
Daniel Porrey

I lead a software development team for a large Chicago based organization. I also develop applications personally.

Contact

Replications

Did you replicate this project? Share it!

I made one

Love this project? Think it could be improved? Tell us what you think!

Give feedback

Comments

Similar projects you might like

PHPoC - Web-Based Thermometer
Easy
  • 127
  • 8

Full instructions

This project allows to check temperature at home from anywhere using web browser.

Arduino - Web-Based Thermometer
Easy
  • 647
  • 11

Full instructions

This project allows you to check temperature at home from anywhere using web browser.

Electronic Voting Machine Using Arduino
Easy
  • 157
  • 5

It is an EVM using Arduino. There are five switches in all, assigned for various activities.

MyHumidity controlled by BME280 and Photon
Easy
  • 29
  • 1

Full instructions

Checks if humidity threshold is reached and informs the user by using Blynk/IFTTT-services with softAP integration.

Assemble a PCB using Upverter and Fusion PCBA
Easy
  • 269
  • 5

Full instructions

Using an existing well written guide, our Hackster Live chapter designed, fabricated, and assembled an Arduino shield for a Simon Says game.

Retro Nokia Snake Game with Arduino
Easy
  • 3,236
  • 23

Full instructions

Ever wish you could go back to the happy 90's and play snake on your old Nokia phone? Grab on to your joystick for this blast-from-the-past.

ProjectsCommunitiesTopicsContestsLiveAppsBetaFree StoreBlogAdd projectSign up / Login