Introduction: Electro Magnetic Interference (EMI) Detector

About: Ngo active in the field of digital mediation, based in Toulouse, France

In this tutorial you will learn how to assemble an EMI (electromagnetic interference) probe.

EMI is a form of electromagnetic radiation: a combination of electric and magnetic waves traveling outward from anywhere that an electrical power signal is changing or being turned on and off rapidly

Where this gadget excels is spotting “phantom” or “vampire” energy loads. More correctly called standby power, this is the amount of electricity that constantly flows through some electronic devices, even when they’re supposedly switched off or in standby mode. Devices use standby power on features such as digital clocks, remote control reception, and thermometers. Relatively weak energy efficiency regulations in the United States result in many devices drawing far more wattage than they need in standby mode.

The EMI detector works by capturing the electrical energy coming into the arduino's analog port, and turning it into a sound via the speaker.

Supplies

  • 1x Arduino uno or arduino nano + USB cable
  • 1x 1MOhm resistor some single core hook up wire
  • 1x 4x6cm PCB a few arduino male headers
  • 1x piezo speaker
  • link to the digital design of a case for your EMI detector (suitable if you are using an arduino nano)

Step 1: Assembling the EMI Probe

It is possible to assemble an EMI probe using an arduino Uno or an arduino nano.

Here is a timelapse of the assembly process of an EMI probe based on arduino nano.

Here is a video of the assembly process of an EMI probe based on arduino uno.

List of parts

  • 1x Arduino uno or arduino nano + USB cable
  • 1x 1MOhm resistor some single core hook up wire
  • 1x 4x6cm PCB a few arduino male headers
  • 1x piezo speaker
  • link to the digital design of a case for your EMI detector (suitable if you are using an arduino nano).

To begin with, solder 3 male headers on the PCB. When you will plug the PCB onto the arduino board, the headers will have to go into pin 9, GND, and Analaog5.
Solder the speaker onto the PCB. The positive leg of the speaker need to be connected to the male header going into pin 9 of the arduino board.

The other leg (negative leg) of the speaker needs be connected to one end of the resistor (via some hook up wire).

Now, solder the resistor onto the PCB. Connect one end of the resistor to the male header going into GND on the arduino board. Connect the other end to the header going into A5.

Grab a piece of solid core wire about 20 cm long, and solder one end in correspondence with the male header going into A5.

Your EMI probe is ready.

Step 2: Program the EMI Detector

Whether you re using an arduino uno or a nano, the code that you ll need to upload in order for the probe to function correctly is basically the same.

Just make sure to program the correct digital pin for the piezo speaker. In the instructions above, we connected the speaker on D9 on an arduino uno, and D3 on an arduino nano.

// Arduino Electromagnetic interference detector // Code modified by Patrick Di Justo, based on // Aaron ALAI EMF Detector April 22nd 2009 VERSION 1.0 // aaronalai1@gmail.com // // This outputs sound and numeric data to the 4char #include #define SerialIn 2 #define SerialOut 7 #define wDelay 900 int inPin = 5; int val = 0; SoftwareSerial mySerialPort(SerialIn, SerialOut); void setup() { pinMode(SerialOut, OUTPUT); pinMode(SerialIn, INPUT); mySerialPort.begin(19200); mySerialPort.print("vv"); mySerialPort.print("xxxx"); delay(wDelay); mySerialPort.print("----"); delay(wDelay); mySerialPort.print("8888"); delay(wDelay); mySerialPort.print("xxxx"); delay(wDelay); Serial.begin(9600); } void loop() { val = analogRead(inPin); Serial.println(val); dispData(val); val = map(val, 1, 100, 1, 2048); tone(9,val,10); } void dispData(int i) { if ((i<-999) || (i>9999)) { mySerialPort.print("ERRx"); return; } char fourChars[5]; sprintf(fourChars, "%04d", i); mySerialPort.print("v"); mySerialPort.print(fourChars); }

The full arduino code is also available here.

Because Arduino is connected by a USB cable to your computer, it is receiving a flood of electromagnetic interference from the computer. Even worse, that EMI is being pumped into Arduino via the USB cable. To make this detector really work, we’ve got to go mobile. A fresh 9-volt battery should be enough to get this gadget running. Your Arduino should start up normally: the LEDs mounted on the Arduino board should flash, and within a few seconds the EMI code should be up and running.

Watch the EMI probe in action here.

Step 3: Using the EMI Detector

You can use the EMI probe to compare and contrast EMI radiations deriving from different electronic appliances.

Hold the probe next to a stereo system or a TV whilst these devices are in standby mode, and you ll probably get a similar reading to a laptop when this is turned on. Once you ve found out which electronic appliances radiate the biggest amount of EMI when in standby mode, you can learn to plug these off to save energy.