20x4 LCD and 4x3 Keypad Problems


I need your help guys I’m kinda new in this kind of stuffs.
I’m using an Arduino Mega2560
with an LCD 20x4 with I2C
and a 4x3 Keypad.

I’m making a cocktail menu out of it.
but it happen to be kind of complicated to me.

I already attached my current work
and the thing I want to achieve is on the picture.
flow of what I want it to be, hope someone can help.

I’ll be in touch.


nid_update_2.ino (4.42 KB)

You can do this with nested case statements or you can look into an actual LCD menu system like this one. Menu

if (int(key) == ‘1’) { Why make it an int? single quotes dictates a char, so key == ‘1’ will work just fine



if (int(key) == ‘2’) {


Say I am in your GlassSizeMenu() function, what is keeping me in this menu to collect the choices?

sorry wrong sketch.
that was the old one,
I already updated the sketch
please take a look.

I’m really new to this stuff.
can you help me divide this into separate groups
like those in the diagram

from Main Menu
Glass Menu
Cocktail Menu

I really don’t know how to do that.

Sure, I'll be home in 20 minutes.

What are the possible choices, can you write them out?

Premix → Size → …
Modified → Size → …

Here is some of the code done for you, you should be able to learn from it and finish it.

DrinkMix.ino (5.26 KB)

Thanks for the help. . would be posting updates soon, will sleep now thanks again. .

Thanks a lot have finished editing it by
following your format

I’ve already done a 1 cycle on premix,
hope I can start soon on modified.
thanks for the help, I’ll be starting the next part tomorrow.
will sleep now.