Tag Archives: ATtiny85

IR Remote Control Detective based on ATtiny85

David Johnson-Davies published another great and detailed tutorial on how to build an IR remote control detective. He writes:

The IR Remote Control Detective decodes the signal from several common types of infrared remote control, such as audio, TV, and hobbyist remote controls. To use it you point a remote control at the receiver and press a key; it will then identify the protocol, and display the address and command corresponding to the key.

IR Remote Control Detective based on ATtiny85 – [Link]

Harmonic Function Generator using ATtiny85

David Johnson-Davies published another great and detailed project based on ATtiny85. It’s an harmonic function generator with an OLED display.

This article describes a simple function generator based on an ATtiny85 which allows you to generate a virtually unlimited number of waveforms using additive harmonic synthesis, by specifying the amplitude of each of the waveform’s harmonics.

It includes a volume control, audio amplifier, and loudspeaker so you can hear the waveforms. It’s not only a useful waveform generator, but also a good introduction to the composition of musical notes.

Harmonic Function Generator using ATtiny85 – [Link]

Tiny Graphics Library for ATtiny85 and SH1106 OLED Display

David Johnson-Davies published another great tutorial on how to use the Tiny Graphics Library to plot the outside temperature over 24 hours on a 128×64 OLED display using an ATtiny85.

This small graphics library provides point, line, and character plotting commands for use with an I2C 128×64 OLED display on an ATtiny85.

It supports processors with limited RAM by avoiding the need for a display buffer, and works with I2C OLED displays based on the SH1106 driver chip. These are available for a few dollars from a number of Chinese suppliers.

To demonstrate the graphics library I’ve written a simple application to measure the temperature every 15 minutes over a 24-hour period and display it as a live chart.

Tiny Graphics Library for ATtiny85 – [Link]


ATtiny85 Function Generator

David Johnson-Davies build a tiny function generator based on ATtiny85 microcontroller. He writes:

This article describes a simple function generator based on an ATtiny85. It can generate triangle, sawtooth, square, and rectangular waves, a pulse train, and noise. The frequency can be adjusted using a rotary encoder between 1Hz and 5kHz in steps of 1Hz, and the selected waveform and frequency is displayed on an OLED display.

This project really puts the ATtiny85 through its paces; it’s generating 8-bit samples at a 16kHz sampling rate, decoding the rotary encoder, switching between waveforms, and updating the OLED display via I2C.

ATtiny85 Function Generator – [Link]

ATtiny85 runs at 0.000011574Hz clock

What is the lowest possible clock frequency at which a microcontroller can still do useful work? Here’s a little project that attempts to explore this weird question. by @ idogendel.com:

ATtiny85 runs at 0.000011574Hz clock – [Link]


Continuity Tester using ATtiny85

This article describes a simple continuity tester based on an ATtiny85. The tester features a buzzer that sounds to help you determinate the trace continuity. It is designed for checking circuit wiring, or tracing out the tracks on a PCB. According to it’s author David Johnson-Davies it has a low threshold resistance of 50Ω to avoid false positives, and passes less than 0.1mA through the circuit under test, to avoid affecting sensitive components. It’s powered from a small button cell, and automatically switches itself off when not in use, avoiding the need for an on/off switch.


BeanDuino Attiny85 – super small Digispark clone

The BeanDuino is an ATtiny85 based microcontroller development board similar to the Arduino line highly inspired by DigiSpark , BeanDuino is hardware compatible with Adafruit Trinket / Gemma.


  • Support for the Arduino IDE 1.0 and later (OS X, Windows, and Linux)
  • Built-in USB
  • 5 I/O pins (2 are used for USB only if your program actively communicates over USB, otherwise you can use all 5 even if you are programming via USB) or 6 I/O pins if you dissable reset fuse
  • 8 KB flash memory (about 6 KB after bootloader)
  • I2C and SPI (vis USI)
  • PWM on 3 pins (more possible with software PWM)
  • ADC on 4 pins
  • Internal temperature sensor
  • On-board PB1 led – no shield required !!!
  • Keyboard or other HID devices emulation (mouse, gamepad …)
  • reset is enabled you can program this board with USBASP or Arduino via ISP you can easy replace/repair/remove bootloader
  • slim design 11×20 mm
  • breadboard compatible

BeanDuino Attiny85 – super small Digispark clone – [Link]

Breadboard Friendly ATTiny85

Chris @ chris3d.com build his own Attiny85 board:

 The modularity of Arduinos is great, but after playing with them for a year or so, I wanted to start building things that needed a little more integration. I also wanted to design the components and programming around the actual controller I’d be using. So, I decided to start by building a small breadboard friendly ATTiny85.

Breadboard Friendly ATTiny85  – [Link]

ATtiny85 Tiny OLED Watch

An ATtiny85 and a 64×48 OLED display hand clock:

This is the third in my series of minimalist watches based on the ATtiny85. This version displays the time by drawing an analogue watch face on a miniature 64×48 OLED display. It uses a separate crystal-controlled low-power RTC chip to keep time to within a few seconds a month, and puts the processor and display to sleep when not showing the time to give a battery life of over a year.

ATtiny85 Tiny OLED Watch – [Link]


Temperature Controlled Fan With LED Status

This is a simple fan controller with single LED temperature status light using an ATtiny85 microcontroller and DS18B20 temperature sensor. The fan is turned on/off based on temperature sensed and the controller goes in sleep mode when the temperature drop below a predefined threshold.

Simple ATtiny85 fan controller to turn a fan on/off based on temperature. Includes an LED as a temperature indicator. LED is dim at start of fan on temperature and blinks when above a max temperature. Fan is not PWM controlled since I am using a small 5V fan which is quiet running at 100%. The controller is in sleep state while the temperature is below the minimum threshold and wakes up every ~8 seconds to recheck the temperature. When temperature is above minimum threshold, the controller will stay awake checking every second till the temperature falls below the minimum threshold. The code uses ds18b20 library by Davide Gironi.

Temperature Controlled Fan With LED Status – [Link]