arduino uno with ethernet+lcd+ds18x20 - possible?

I'd like some advice about light home monitoring.

It would contain arduino with ethernet to see everything abroad and lcd to follow temperatures/humidity without pc.

Question is that do i have pins enough for it? LCD and ethernet takes a bunch of them. All i need after lcd and ethernet is pin for temp sensors and a possible output for one relay. Could this be done or am i out of pins?

And some suggestions are welcome too.

The Ethernet shield uses 4 pins - 10 to 13 on UNO/Duemilave. The number of pins that the LCD uses depends on the LCD. My serial LCD only uses 1.

The number of pins left, then, depends on the LCD you have/plan to get, and which Arduino you have/plan to get. The Mega has way more pins.

It is certainly possible, i see no problems regarding the total pins needed.
You can save pins if you choose eg. a serial LCD.
The DS18b20 use only one pin.

Just check what you need as I/O and see if the board you want to use supports it.

PaulS:
The number of pins that the LCD uses depends on the LCD. My serial LCD only uses 1..

I've got this 2x16 lcd. I've tested it with nano and it used 6 pins from arduino? How do you get it with one?

Can you tell me what pins does ethernet shield take?

How do you get it with one?

Buy a serial LCD, like this one:

Other colors and sizes are available.

Can you tell me what pins does ethernet shield take?

It uses the SPI pins - 10, 11, 12, and 13 on the UNO/Duemilanove. The SPI pins depend on the board. Find your board here to see what the SPI pins are.

PaulS:
It uses the SPI pins - 10, 11, 12, and 13 on the UNO/Duemilanove. The SPI pins depend on the board. Find your board here to see what the SPI pins are.

It seems to use pins 10, 11, 12 and 13. Is four pins really enough?

What about lcd then. I think ill use my lcd because i cant get that serial-lcd for this week. Although it sounds sweet and i gotta get one if ever needed.

But LCD seems to use pins 2, 3, 4, 5, 11 and 12. Can i change them or can i use them at all if they overlap?

Just check how many pins you need of the kinds you have and see if all the I/O fits.
If it does , just use the things you have.
If not, improvise or go shopping.

But LCD seems to use pins 2, 3, 4, 5, 11 and 12. Can i change them or can i use them at all if they overlap?

The LCD uses whatever pins you tell it to use.

No, one pin can not be used for two different purposes.

Parallel LCDs need 6 pins. Of these, 1 must be dedicated to the LCD (the EN input). The other 5 are only sampled by the LCD when the EN pin is active. This means that you can share those 5 pins with outputs to other devices, if those devices only sample the data on those pins when a separate EN or clock pin is active. For example, you can drive 2 LCDs with 7 pins (2 pins for the EN inputs to the LCDs, and 5 common pins for the other LCD inputs).

dc42:
Parallel LCDs need 6 pins. Of these, 1 must be dedicated to the LCD (the EN input). The other 5 are only sampled by the LCD when the EN pin is active. This means that you can share those 5 pins with outputs to other devices, if those devices only sample the data on those pins when a separate EN or clock pin is active. For example, you can drive 2 LCDs with 7 pins (2 pins for the EN inputs to the LCDs, and 5 common pins for the other LCD inputs).

So are you saying that all LCD pins can be assigned as i like? And yes it is parallel LCD(if that is the name)
I did try it with the example from LCD library with few modifications. But its still not clear to me that can i change all pins to something else and to what?
Ethernet shield takes 10-14 pins so could lcd be 3-9?

neepie:
So are you saying that all LCD pins can be assigned as i like? And yes it is parallel LCD(if that is the name)
I did try it with the example from LCD library with few modifications. But its still not clear to me that can i change all pins to something else and to what?
Ethernet shield takes 10-14 pins so could lcd be 3-9?

Yes (although 3-9 is 7 pins and you only need 6). You tell it what pins the LCD uses when you declare the LiquidCrystal object. For example:

LiquidCrystal(3, 4, 5, 6, 7, 8)

tells it that the RS line is connected to pin 3, the Enable line to pin 4, and the D4 thru D7 lines to pins 5 thru 8 respectively.