Navigation

DIY Gauss Meter

  • Views Views: 3,469
  • Last updated Last updated:
  • When building or diagnosing magnetic pickups it is useful to be able to check the magnetic field strength of magnets. This gauss meter is very easy to build, uses only 10 components, and costs about $10. It can measure +/- 1000 gauss (or more, depending on sensor used).

    measuring_pickup.jpg

    Note that strong magnets typically have flux values of 3000 gauss or more at the magnet surface so this meter is best suited for measuring Weak magnets or comparing magnetic flux at a fixed distance (ex: from the surface of a pickup).

    See this short video for a demonstration of a finished meter:

    Gauss Meter Demo Video

    On power on it auto zeros itself and shows the battery voltage, in mV, before showing the field strength in gauss. It's a little hard to see in the video but the bottom LED in the lower window is a polarity indicator, turning on when the bottom of the sensor (without the label) is on a magnet South pole.

    Hardware Components
    • Arduino Nano V3 (about $5)
      • Note: Other Arduino variants based on ATmega328P will also work
    • 4-digit TM1637 display module (about $1)
    • Honeywell SS49E hall effect sensor (about $1 each)
      • The original design used Honeywell SS49E sensor which are readily available and inexpensive, but not very accurate (35%) and only measures to +/- 1000 gauss linearly
      • The TI DRV5055A4 is a more accurate (5%) sensor that can measure +/- 1690 gauss linearly but somewhat more expensive and harder to find.
      • If other sensors are used be sure to recalculate the Sensitivity constant
    • Power switch, (any type, pennies each)
    • 100K and 47K ohm resistors 1% (pennies each)
      • Used for battery level measurement
      • Other resistor values also work as long as one is roughly twice as large as the other and at least 10K ohm
      • If other resistors are used be sure to update the batScalingFactor constant
    • Prototype board (optional, pennies each)
      • Optional, components and wires can also be soldered directly to the board
      • 50 x 70 mm size works and is readily available
    • 9 V battery connector (pennies each)
    • Case ($1)
      • Use anything that will fit components
      • Original design used 100 x 60 x 25 mm size
    • 9 V battery (any, must be at least 7 V for meter to function properly)
    A small amount of hookup wire and solder are also required.

    Hardware Assembly
    1. Connect the 9 V battery clip
      1. Connect the black wire to an Arduino GND pin
      2. Connect the red wire to one pin of the the power switch
    2. Connect the other pin of the power switch to the Arduino Vin pin
    3. Connect the TM1637 display board
      1. Connect the Vcc pin to the Arduino 5 V pin
      2. Connect the GND pin to an Arduino GND pin
      3. Connect the CLK pin to the Arduino D2 pin
      4. Connect the DIO pin to the Arduino D3 pin
    4. Connect the hall effect sensor
      1. Connect the left pin (when viewing the sensor label) to the Arduino 5 V pin
      2. Connect the middle pin (when viewing the sensor label) to an Arduino GND pin
      3. Connect the right pin (when viewing the sensor label) to the Arduino A1 pin
    5. Connect the battery voltage measuring resistors
      1. Connect one lead of the 100K resistor to the Arduino Vin pin
      2. Connect the other lead of the 100K resistor to the Arduino A0 pin
      3. Connect one lead of the 47K resistor to the Arduino A0 pin
      4. Connect the other lead of the 47K resistor to an Arduino GND pin

    The finished meter should look something like this:

    interior.jpg

    Software installation
    1. Install the Arduino IDE
      1. Visit: https://www.arduino.cc/en/Guide
      2. Install the appropriate IDE version for your OS using links in the "Install the Arduino Desktop IDE" section
    2. Connect the Arduino Nano to a USB port on your computer with the meter's power switch turned off
    3. Launch the IDE and click Tools->Manage Libraries...
      1. Search TM1637 and scroll down to the TM1637 library by Avishay Orpaz then click the Install button
      2. Once that finishes search again, this time for ResponsiveAnalogRead then click the Install button
    4. Download the GaussMeter.ino file from here and save it, making note of the location
    5. In the Arduino IDE click
      1. File->Open and choose the file saved in step 4 above. If prompted to move the file, click OK.
      2. Tools->Board->Arduino AVR Board:->Arduino Nano
      3. Tools->Board->Arduino AVR Processor:->ATmega328P (Old Bootloader) unless running a genuine board, then choose AVR Processor:->ATmega328P
      4. Sketch->Upload
    You should see a success message and within a few seconds the Arduino should reboot and function like the example in the video.

    Contact Jeff Siddall if you have any questions