Turning on Servo causes hall effect sensor input to go crazy

I have a project where I need to count inputs from a hall-effect sensor, determine RPMs, and control a throttle with a servo through PID regulation. BUT....

  1. Using the streamlined code below and monitoring serial, I get crazy high numbers on the variable "count".
  2. If I rem-out the "myservo.attach" line, the FreqCount (reads pin 5) function works fine.
  3. If I attach the servo or do not attach the servo, the result is the same.

SO... Is this a "noise thing"? Any suggestions for troubleshooting?
Many thanks!

/* FreqCount - Example with serial output

void setup() {
Serial.begin(9600);
FreqCount.begin(1000);//Begin frequency counting. GateInterval is the time in milliseconds for each measurement. Using 1000 provides direct frequency output without mulitplying or dividing by a scale factor.
//Lower gate interval to increase sampling frequency, but multiple the calculated RPM accordingly, as needed.

myservo.attach(9); // attaches the servo on pin 9 to the servo object
}

void loop() {
if (FreqCount.available()) //Returns true when a new measurement is available. Only a single measurement is buffered, so it must be read before the next gating interval.
{
unsigned long count = FreqCount.read();//Returns the most recent measurement, an unsigned long containing the number of rising edges seen within the gating interval.
Serial.println(count);
}
}

This is most likely to be a power supply problem - are you powering the servo from the Arduino ?

And you might want to look at the distance from the sensor the servo is physically located. If I remember motor coils produce a field that the sensor might find attractive.