Timer to control solenoid

Hello, I am new to Arduino and this forum. I am looking to develop a controller, and I stumbled upon Arduino on the internet.

I would like to develop a controller that times and controls 14 solenoids. The device would need a screen to program the current time of day, and the times that each solenoid should be activated. I would also like to include up to 4 buttons that activate pre-programmed timing schemes. Is Arduino the device for me? If so, which model should I choose?

Thank you! I look forward to becoming an Arduino user.

The basic Arduino UNO has enough pins:

D0, D1 for Serial I/O (handy for debugging) D2-15 for the 14 solenoids (D14=A0, D15=A1) A4,A5 I2C bus for a serial LCD display (typically 16x2 or 20x4 characters) That leaves A2, A3 for button inputs. If you need more than two buttons you can use analog tricks to connect more than one button to each analog input.

If you want to use a parallel LCD (6 data pins) you can always use shift registers to expand outputs. Three pins can control a series of shift registers giving 8, 16, 24, 36... outputs.

You will likely need transistor drivers to get the drive power needed for the solenoids.

Thank you for the detailed reply. I will order the UNO tonight.

I forgot to note the "time of day" requirement. You will probably need a Real-time Clock (RTC) to keep track of time and maintain the time if the power goes out. You can probably find one to share the I2C bus with the LTC.

You might also find an I2C Serial LCD that includes some buttons. That might save you some pins.