Next project
Outreach Initiatives and Community Awareness

No Button, Hassle Free, Easy to Mount Simple Knock-to-Ring Bell System

Video Demonstration

Short demo of how the bell works is shown below:


The objective of this project is to build a device with a vibration to electrical transducer that alerts the user when somebody is at the door. Unlike a traditional doorbell, this doorbell plays a ring-tone when somebody knocks at the door. It also illuminates an LED to alert the user. It is easier to install than a traditional doorbell because no holes need to be drilled and no wiring needs to be done. The user simply installs batteries and mounts the device on their door.

In this lab, the engineering student will learn to program an ATTINY85, see Figure 1 micro-controller to read sensors, control LEDs and play sounds. This is a step up from programming the Arduino as the student must use a programmer instead of the built-in FTDI converter on the Arduino board.

Image of Atmel Tiny85 micro-controller. Image of Atmel Tiny85 micro-controller.

Figure 1 The attiny85 micro-controller is the "brain" of the circuitry — it stores, processes & decides the behaviour of the circuitry according to the program you uploaded to it.

Description of project

This project is controlled by an ATTINY85 micro-controller. It reads analog data from a piezo vibration sensor. Whenever somebody knocks on the door, a small voltage is generated by the piezo vibration sensor, see Figure 2. When the ATTINY85 reads this voltage, it turns on a LED and starts to play a Ring Tone Transfer Language (RTTTL) ring-tone. Once the ring-tone is finished playing, the LED turns off.

Electric component that senses mechanical vibrations.

Figure 2 A piezo electric device is an electric component that senses mechanical vibrations, and then converts them to electric signals.

Hardware Components

ATTINY85 micro-controller1
2N3904 NPN transistor1
small 8Ω speaker1
1MΩ resistor1
AA batteries and holder1
68Ω resistor1
100Ω resistor1
1MΩ resistor1
Jumper Wires1

Software Components

  • Arduino IDE — to program ATTINY85 —
  • ATTINY support for Arduino - - download at
  • Tools

    • Programmer for the ATTINY85, such as the USBtinyISP


  1. Install ATTINY support in the Arduino IDE
    1. Download the following file:
    2. Extract the zip file and copy the directory attiny located under attiny-master to /home//sketchbook/hardware replacing with your Linux username
  2. Compile the program, for your door bell setup, see Figure 3
  3. Figure 3 The program gives instructions to the micro-controller (a type of dedicated processor) how to handle input/output in the doorbell setup.

    1. Open the file ATTINY85_doorbell.ino in the Arduino IDE.
    2. Under Tools → Board, select ATtiny85 (internal 8MHz clock)
    3. Click on the check mark to verify and compile
    4. Locate the file /tmp/build <xxxxxxxxx> .tmp/ATTINY85_doorbell.CPO.hex, where <xxxxxxxxx> is a number, and copy it to a working directory
    5. You may now close the Arduino IDE
  4. Upload the program
    1. Place the ATTINY85 in the programmer and lock it into place
    2. From the working directory, run the following command: sudo avrdude -c usbtiny -p attiny85 -U flash:w:ATTINY85_doorbell.CPO.hex
    3. Unplug the programmer and remove the ATTINY85 once the code upload is complete
  5. Follow schematic and diagram in Figure 4 and Figure 5, respectively, to build the circuit
  6. Figure 4 Follow this circuit diagram or schematic to wire together the bell circuitry on a bread board or a prototype board.

  7. Install on a door, of surface, as shown in Figure 6, so your bell apparatus is able to "sense" knock knock vibrations from somebody's act of knocking.

Figure 5 Follow this circuit diagram or schematic to wire together the bell circuitry on a bread board or a prototype board.

Further Readings

To have a deepened knowledge in Applications of Transducers, you should first gain a "knowledge scaffold and learning directions" of powerful math, science, computer technologies and engineering. Learn more as a student or teacher from free schools:

Once you feel confident, please Search with keywords "Mechanical Transducers", "Instrumentation Science", "Vibration Transducer Applications" at UOIT Library or Open Textbooks and Open Encyclopediae:

Other Projects
Gesture Pong Game
Gesture Pong Game Build your own motion tracked game and console similar to Kinect or Wii. Inside is code and design helping you make the classic Pong Game. Play the game as you move on your tv or monitor. See step by... Continue >>
Optical Network Made Easy
Optical Network Made Easy Optical communication is fast, cheap, and reliable. Build your own prototype of a peer-to-peer network using laser. Understand how big Rogers, Bell and use Fibre to connect you in lightning speed to... Continue >>
Pedometer for Athletes
Pedometer for Athletes Supercharge your shoe! Use it to find issues in your run during basketball, track or soccer. Or, track the distance and stats of your jog. Help keep others keep their walk at constant pace, such as... Continue >>
Networked Thermometer
Networked Thermometer Thermometers are old. They are useful: superb tool to control experiments in science labs, monitor body heat, get weather data, save devices from overheating as your flat screen tv, and car engines. Continue >>
Self-Driving Car
Self-Driving Car Robots are smart. Here you transform your old toy car or another vehicle into a bot that follows a wavy line. Use it for shipping goods between unmanned travel ports. Real world uses are endless. Continue >>
Paper Music Player Tutorial
Paper Music Player Tutorial Play music from paper as if the paper was an "ipod". You build a system that senses capacitive touch on pencil shaded shapes on paper. With these touches music is controlled. Continue >>
Raspberry Pi Tweet to my Door Raspberry Pi Tweet to my Door Raspberry Pi connected to colour display wirelessly. Show your twitter updates on a screen attached to your door at school's club office, classroom, treehouse room. Display to your audience your... Continue >>
Arduino Lilypad Remote Mouse
Arduino Lilypad Remote Mouse Control your computer's mouse with this homemade remote-control. Build touch switches completely in software and then link the remote to the computer via infrared. Continue >>
Professional Circuit Drafting
Professional Circuit Drafting CAD drawing gives you professional grade circuit schematics and prototype models. Learn to communicate design of electronics and hardware innovation like the professional engineer. Continue >>
Broadcast Your Radio
Broadcast Your Radio Broadcast your music and voice wirelessly. Spread your news with your friends over short distance using radio. It is easy to make, free, and won't get CRT angry at you. Radio podcasts, chatroom uses... Continue >>
Internet Controlled Lights
Internet Controlled Lights Use internet to make lighting during Christmas or other occasions dance! Surprise your buddies with LED sequence control. Make decoration energetic during your sweet holidays. Continue >>
Arduino Tweets to my Door Arduino Tweets to my Door Arduino connected through wire to display. Show your twitter updates on a screen attached to your door at school's club office, classroom, treehouse room. Display to your audience your location at the... Continue >>

Maintained by Qusay H. Mahmoud
Content Contributors: Rudy Lang, Michael Lescisin, Rahma Mahmood, Ahmad Shamshiri, Ahmad Touseef, Mirna Zohiry