New Menu Library

I just finished making a new Library and I would like to know what you think about it.
It only requires the menu to be described using a String. The Library does the rest.
You can acces it Via Arduino Playground/Libraries/Menu.
I named it Menu in a String.
Realy anxious to have your Feedback.

Quicker link for those interested

Thanks, I did not know how to do that. Much more effective.

I'd recommend putting the example from your tutorial in a sketch in the examples folder. This will make it that much easier for the users than copying it from the PDF. Note that the official Arduino library specification states:

the examples folder must be written exactly like that (with lower case letters)

. I remember Examples worked on my system(Windows 7) a while back but it's never a good idea to ignore the specification, especially when there's no benefit in doing so.

I'm not crazy about the idea of including the library zip file in the repository, though there are probably some good arguments for doing so. GitHub provides an automatically generated zip file at The only problem with that is the downloaded file name is instead of the expected Usually this doesn't cause any problems if the user doesn't rename the folder(like when they install via Sketch > Include Library > Add .ZIP library) but it's possible if there are multiple Menu.h files present on the user's system that it could cause the wrong file to be included or maybe very old IDE versions don't like the '-'. Another option is to attach a file to each GitHub release.

Hi pert,

Thank for your insight.

I changed "Examples" for "examples" in the zip file. I included it because of Arduino's (Sketch > Include Library > Add .ZIP Library). When I download a library, I am always glad to find the zip file, because I know how to make it work.

Thanks again for your help.


I have just upgraded my menuing system. Now it is able to display itself on an LCD and it can read digital (one pin per switch) or analog (one analog pin for the four switches) keypad.

Of course, you can still use your own display device and/or keypad.

See it here: On Github