Control two steppers +LCD + Keypad

Hey guys,
I am not sure if I have enough pins on my Arduino UNO. I want to control two steppers with A4988 drivers. For those together I need 4 I/O pins and GND+5V. My LCD got 2 I/O pins and again GND+5V. Then the keypad needs 7 or 8 I/O pins as far as I know. So is the UNO enough? Whats the best way to connect all these things to it? I'm very new to the connecting/ wiring part, programming the UNO won't be as much as a problem for me.

More details to the later Function of this setup:

over the keypad I want to set the speed and the number of rotations of one stepper which will be displayed on the LCD ( beside some more information, like how many rotations left to do) and I want to start and stop the setup with the keypad, too. The second stepper will run in relation to the other, for example per 10 rotation of the first one, the second one does 1 rotation.

If anyone knows a little more then I do, would be awesome. I can use any help regarding the connecting part.


Uno should have enough pins for the peripherals mentioned. For instance, pins 2-9 (8 pins) for the keypad, 10 - 13 for the step and dir pins of the stepper drivers and since you say 2 pins for the (I2C?) LCD, pins A4 and A5. That leaves pins A0 - A3 for other purposes as necessary. The analog inputs can be used as digital pins, if needed (stepper driver enable or microstep inputs, if required).

Perfect, thank you! I wasn’t sure if I can use the analog pins for that purpose. I guess I can start building!