Problema con librerias spi, sd shield ethernet y shield Lcd

Hola.
Estoy haciendo un contador de luz con un Arduino uno, con información en un Lcd de 2x16 (Shield Lcd) y cada dia genero un fichero en una sd con todo la información (Shield Ethernet V3).
Por seperado todo funciona OK, pero cuando conecto todo, y activo todo el software, el texto del Lcd, se ve un poco menos y el sistema no me reconoce la tarjeta Sd.

El inicio de programa es

#include "EmonLib.h"
#include <SD.h>
#include <SPI.h>
#include <LiquidCrystal.h>

EnergyMonitor emon1;
Sd2Card card;

const int chipSelect = 4;

LiquidCrystal lcd(8,9,3,5,6,7);

Alguien tiene alguna idea de donde tengo el problema? Por lo que he leido, la Sd solo usa el Pin 4.
Gracias a todos por adelantado.

Saludos
Te aclaro la SD no solo usa el pin 4 sino todos los del SPI, es decir 10,11,12 y 13, aunque el 10 es el CS del ethernet.
Ahora si conectaste todo alimentado desde el Arduino el problema que tienes es de alimentación, debes tratar de alimentar desde una fuente externa los shield.

Tienes el propio arduino, la LCD, el modulo Ethernet, el modulo de medición de energía, así que son muchos alimentados desde la misma placa.

Mmmmmm ... puede ser lo que te señala max_saeta o puede que tantos shields unos sobre otros se molesten entre ellos, comprueba los pines que utiliza cada shield, puede que dos de ellos estén utilizando pines comunes (por ejemplo el pin 4) y por ello no te funcione la tarjeta SD.

También puede ser que las librerías no sean compatibles entre ellas, eso sería mas dificil de solucionar.

Correcto.

Unos de los pines del SPI son el 9 y 10, los cuales son usados por el shield LCD. Conecta el shield LCD a otros pines. lo malo es que no estara montada sobre el arduino sino con conecciones externas.

Hay un truco pero es poco "elegante". Consiste en doblar para afuera los pines del shield conflictivo (solo los que molestan) para que no interfieran y luego puentearlos con pines libres.

Ya esta Soluccionado.
Como bien habéis indicado, todo el problema era el pin 10 del Shield LCD, el cual es usado para controlar la retroiluminación.
Lo he sacado por fuera y todo listo.
MUCHAS GRACIAS a tod@s.

De nada, ha sido un placer.

Para tus próximos proyectos no olvides visitar Ardutienda :wink: