Project platform requirement?

I'm analyzing the requirements for a controller system I intend to build around the Arduino platform (if feasible). Rough specs;

5 PWM out 6 Analogue in 8 Digital in XBee (to peripheral devices (remote control & display, AC relays etc)) Ethernet (to web server and file storage) SD Card 16x2 LCD display (no need for special characters)

Considering the amount of pins required by the components (I will try to "mux" as much as possible with 4094 and it's cousins), and the amount of code the components will generate with all the libraries, will the UNO be sufficient or do I need to go larger?

Thanks for any advice!

The UNO will support 6 analog in signals and 5 PWM outputs. With the XBee in the mix, using pins 0 and 1, you are left with only 7 additional digital pins for the 8 digital inputs, ethernet shield, SD card, and LCD. You need 5 pins for the ethernet shield/SD card, and they can not be multiplexed. That leaves you just 2 pins for the LCD and digital inputs. If the LCD is a serial version, it will need just one pin, leaving you 1 for the 8 digital inputs.

I think you would be happier to start with the Mega, which has plenty of pins, so no multiplexing is required. You'll save on the multiplexing chips, and can use a cheaper, non-serial, LCD. Plus, there's (lots) more room for code and data.

The ethernet shield doesn't play real well with the Mega, but there are ways to make it work.

Thanks PaulS. Kind of what I suspected, but nice to get it confirmed by someone with more experience.

What's the deal with the ethernet boards? Haven't browsed too much on them but I thought it would be quite straight forward.. :relaxed:

The Ethernet shield uses SPI to communicate with the Arduino. On other than the Mega, that involves pins 11, 12, and 13. On the Mega, that involves pins 50, 51, and 52. The shield physically connects to pins 11, 12, and 13. This physical connection needs to be broken, by bending the pins. The physical/logical connection to the appropriate Mega pins then needs to be made.

Ok thanks for the info!