should ethernet shield affect analog input values?

I have a 2010 official arduino ethernet shield connected to an official pre-Uno arduino from last year, in the openenergymonitor.org setup; i.e. it is sampling 5 analog inputs to determine household power usage (5 = 1 voltage + 2 solar CTs + 2 mains CTs)

I had it hooked to the wishield and working well, except the wishield would drop out a couple times a day. :(

So I figured the ethernet shield might work better, and hooked it up, and the power values went all wonky - generally much higher than they should have been. I stripped down the sketch to not do any networking, removed initialization etc, so the shield was just sitting there doing nothing. Same problem. Took the ethernet shield out of the stack, and the values went back to normal again, with the same sketch.

Is there anything about the ethernet shield which would affect analog readings? I can post the sketch if needed...

Thanks, -Eric

I think I can prove it simply, too:

void setup() {
  Serial.begin(57600);
}

void loop() {
  // read the analog sensor:
  int sensorReading = analogRead(A0);   
  int sensorReading2 = analogRead(A1);   

  Serial.print("analog: ");
  Serial.print(sensorReading);
  Serial.print(" ");
  Serial.println(sensorReading2);
  delay(1000);
}

With A0 connected to ground and A1 connected to 3.3V, I get "0 675" with a bare board, and "0 706" with the ethernet shield stacked on.

About a 5% difference; 3.3V really should give a reading of 675 (3.3/5*1023 = 675)

on edit:

From a DMM, I read the actual voltage outputs for 3.3V and 5V with and without the shield:

no shield: 4.98V 3.296V
shield:    4.80V 3.311V

So maybe it's a vref problem... 3.3/4.8*1023 = 703 ... (board was powered from USB at the time of test)

Any idea if this is expected?

The ethernet shield uses a lot of power and causes a voltage drop on the arduino when powered via USB. If you feel the big chip on the ethernet shield, it will be noticably warm.

Hm even when on a 6.5V 2A AC adapter, it gets worse:

analog reading for 3.3V: 769
5V reading on DMM: 4.42V

what kind of reactor do I need to power this thing? :slight_smile:

Oh, duh:

The board can operate on an external supply of 6 to 20 volts. If supplied with less than 7V, however, the 5V pin may supply less than five volts and the board may be unstable. If using more than 12V, the voltage regulator may overheat and damage the board. The recommended range is 7 to 12 volts.

Mabye I grabbed the wrong adapter, will keep trying...

I'll still try a beefier adapter, but looking at the W5100 specsheet it doesn't really look like much of a pig for power... typical 146mA in 100baset mode.

With a 9V 1A switching AC adapter, it yields 4.9V w/ the shield on, 4.98V with it off.

And running the sketch above, the analog reading is still too high due to the too-low Vref. Argh.

Does anyone else see this?

Thanks,
-Eric

I don't know what's going on here; I measured current draw off the ac adapter and it was around 250mA; on a 9V 1A switching power supply I still get the voltage drop. 9V/1A should be plenty...

Hi Sandeen,

I might be having the same issues. Did you find a solution to the power drop?

If the ethernet chip draws 150 mA from the +5V supply, that’s going to cause some amount of voltage drop across the resistance due to circuit traces, connectors etc. Let’s say you want to see less than 15 mV drop on your power supply, that means the resistance between the output of the 5V regulator and the voltage measurement point must be less than 0.1 ohms. Is it?

lebeig: I've not found a workaround for the issue, no. Other threads suggest a robust 5V power supply directly to the 5V pin.

John: I'll measure the resistance when I get a chance. I should also measure the voltage at the output of the regulator, I suppose.

Hi,

Thanks for your reply. As for your question. Unfortunately I cannot test it at the moment. I will tomorrow morning. But I can explain the setup. I use a 9 volt (1500mAh) dc adapter connected to the external voltage input.

Other sources that draw power are:

  • a barcode scanner (5vdc, 100mAh when scanning, 30mAh when standby)
  • three ultra bright LEDs that operate at 3,4 Volt… so we put a resistor in between to make it work best at 5 V… The LEDs use 30mAh

I read that it might be smart to try to set the adapter at 7,5 Volt…

Hello,

The Ethernet Shield use analog inputs 0 and 1 to control the SD card. Please check this topic for more information:

Regards Celio Goetten

Here is the link:

http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1268910409

GhostRider, thanks - feel dumb for not checking whether those pins were used! Pity they're not jumpered...