Arduino Mosquito Repeller




Introduction: Arduino Mosquito Repeller

In this instructable I'm going to show you how to build a mosquito repeller using an Arduino. The repeller is in the form of a shield that plugs into the Arduino board and the frequency of the repeller can be changed easily.

This project is ideal if you are going camping or hiking outdoors, this device produces a sound of 31KHz Frequency which acts as a mosquito repellent. The frequency of this device can be adjusted and at 23kHZ to 54 kHz it also acts as a dog whistle. Human ears are not sensitive to these frequency ranges.

You can also view the video below on how to build this project.

Step 1: Tools and Components

Here is a list of the components and tools required, the list is simple and all you need is

  • Arduino Uno
  • PCB
  • Piezoelectric Disk
  • Header Pins
  • A breadboard (optional)
  • Wires
  • Soldering Iron
  • Soldering Lead

Step 2: Measuring

For this project we will be using digital pins 9 and 11, you could use any other pin with PWM support. So we will need to cut the header pins to our requirement. Then plug the headers into the PCB and mark the layout of the shield. Solder the header pins on to the Arduino, to solder the pins move the black connectors up a little bit and then solder it.

After soldering place the PCB on the Arduino to see if everything fits fine.

Step 3: Cutting

After soldering the headers lets cut the excess PCB out, to do this I used a rotary tool, you can also use a PCB cutter. After cutting the PCB you should have a shield, like the one in the picture. You can sand out uneven edges to get a cleaner look.

Plug the board on the Arduino to make sure it fits right.

Step 4: Circuit

The circuit is very simple, one of the piezoelectric disk is connected to digital pin 9 and the other to digital pin 11. The left over terminal of both the disks is connected together and soldered to the ground terminal of the Arduino. I am using two digital pins because I want to generate two different frequencies. You could connect both the disks in parallel if you like to use only one frequency.

Setting both the disks to the same frequency will cause the board to resonate and will give you more range.

Step 5: Code

The code for this circuit can be found below the code is really simple and is self explanatory, you can change the frequency by altering the frequency range in the code. 31KHz is the frequency that repels mosquito's and 23kHZ to 54 kHz to act as a dog whistle.

int speaker = 9;
int frequency = 31000;
int speaker2 = 11;
int frequency2 = 31000;

void setup(){
pinMode(speaker, OUTPUT);
pinMode(speaker2, OUTPUT); }

void loop(){ tone(speaker, frequency, 1000); tone(speaker2, frequency2, 1000); }



    • Metalworking Contest

      Metalworking Contest
    • Tiny Home Contest

      Tiny Home Contest
    • Creative Misuse Contest

      Creative Misuse Contest

    38 Discussions

    Thanks for your post; just for the sake of clarity; the code says

    int speaker2 = 11;

    But, in the wiring there is no connection speaker2 (one of the piezoelectric) with Arduino┬┤s pin 11.

    could you check please. Thanks you for your time and replay.

    can i change piezo to buzzer?

    Great Work dude.

    I enjoyed tinkering with the piezoelectric disk and the tone function in Arduino. However as a repellent, seem the science is not there. Might give it a try on my front porch though. Thanks.

    1 reply

    By the mouth of two or three. Here is another link to establish the word!

    What frequency would I need to scare squirrels? I'm fighting a losing battle in my backyard..

    4 replies

    I was thinking about this and came up with two thoughts. 1:) You could come up with a frequency, and if irritating enough possibly it would push the squirrel away and do what you want. On the other hand, it could simply act as an alarm telling squirrels, "Hey, food here!" much like a dog whistle calls a dog.

    On a third note, I was thinking that two dissonant frequencies, as there are two emitters, just might be discouraging enough to repel them, if would me if I could hear them; I think it's worth a try; but, I don't have a squirrel problem; so, good luck.

    I recommend you look up essential oils that squirrels don't like. Then simply dilute this essential oil into water or a natural cheap oil (perhaps vegetable oil) or sorts and spray on your yard and areas where squirrels are bothersome. If you look at the ingredients on products sold at your local store for squirrel deterrents majority of the time you'll find they are using essential oils.

    Make sure you reapply after any rain fall as the essential oils are washed away.

    when you get that answer i too would like to know.

    Great project!!!

    Let me ask you two questions.

    Can I send data using this desing (kind of a ultrasound modem)?

    And if so....would the same desing able to listen? (changing speaker for micro)


    2 replies

    sure, why not. the transmit medium doesn't matter as long as your sensor and emitter speak the same "language".
    the simplest solution would be to use 50-305 kHz as a representation of the 256 values a byte can have: 0 = 50khz, 1= 51khz, ... 255= 305khz.
    maybe the bytes have to be separated by a 30khz-pulse or something along the line... otherwise you may run into problems with consecutive same values...

    It probably does work as a sound emitter but as a repellant I doubt it since many tests have been done on mosquitoes and sound and none have been found to be effective.

    Does this work by resonating the body of the mosquito so it explodes in mid air? That would be amazing. Else, I'll stick with this:

    4 replies

    The video doesn't work in the US. You probably have copyrighted material...

    This version works in the US:

    Maybe because they have used the word Starwars... The rest seems to be original.