Giter VIP home page Giter VIP logo

lcdmenulib's People

Contributors

jomelo avatar mscosti avatar per1234 avatar rudelm avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

lcdmenulib's Issues

I2C alterable address

Hello,
Actually, we define the I2C address with the _LCDML_DISP_addr value .
Is it possible to have an fonction that change this value ?
My goal is to read the address from the EEPROM !!!

Thanks for your job !!!

Jumping to lcd and backend functions form menu item

I have a doubt about, what if i have a backend and display functions and i jump on menu to that display function also it jumps to the backend function or I need to call it on display function?

Regards and congrats by your new version

Change parameter at menu item

How do I change parameter directly on any menu item

like
Main
feature1 (here to enable or disable directly without jumping at submenu, just left or right)
feature2 (here change value without jump to another submenu just left or right)

And so on
picture 2017-08-29 16_23_27
picture 2017-08-29 16_24_30

Suggestion: highlight select row instead of having cursor (u8g2)

Hope it helps..
First of all, thank you for your library 👍

I was working on the example for u8G2, I found a quick way to highlight instead of having cursor at the beginning of the row, and I'd like to share it

in LCDML_DISPLAY, under //set cursor use

u8g2.setFontMode(1); u8g2.setDrawColor(2); u8g2.drawBox ((_LCDML_DISP_box_x0+_LCDML_DISP_cur_space_before),(_LCDML_DISP_box_y0 + ( _LCDML_DISP_font_h * (n + 1)-(_LCDML_DISP_font_h)+2)),( _LCDML_DISP_box_x1-_LCDML_DISP_scrollbar_w-3),( _LCDML_DISP_font_h) );

instead of

//u8g2.drawStr( _LCDML_DISP_box_x0+_LCDML_DISP_cur_space_before, _LCDML_DISP_box_y0 + _LCDML_DISP_font_h * (n + 1), _LCDML_DISP_cursor_char);

Version V2 beta 2 wire.h issue

With the version V2 beta 2, the example LCDML_example_1_easy.ino return me always

C:\tmp\Arduino Compilateur\arduino-1.6.4\libraries\New_LiquidCrystal_V1.3.0\I2CIO.cpp:35:26: fatal error: ../Wire/Wire.h: No such file or directory
#include <../Wire/Wire.h>

I use the last New_LiquidCrystal_V1.3.0

Jump between disp functions

it's possible to jump between display functions, becase I tried and don't get expected results.

Per example I'm in a custom display function and with a user input control I want to jump to another display function and it doesn't do that (except by init screen to another disp func but not viceversa).

I used similar commands like:


LCDML_DISP_funcend();
LCDML_DISP_jumpToFunc(LCDML_FUNC_initscreen);

or viceversa (it doesn't work as is).

Help please

Question by definition #define LCDML_DISP_addMenu

In definition

define LCDML_DISP_addMenu(name, disp, item_parent, item_child, content)\

...
void function ## _loop_setup();
void function ## _loop();
void function ## _loop_end(); \

at the same time, it is not defined "function".

Please explain how it works or it is a bug and instead of a "function" it should be "LCDML_FUNC" ?
(Sorry for bad English)

Millis() rollover handling

This library has support to handling of millis() rollover or needs to be modified to do that?

If not has to be updated by modifing the cpp file and sketches also?

Regards

Rotary encoder setup

Best,

I'm currently using this library's example to create a menu, but unfortunately can't get my rotary encoder to work with it.

My two questions about it are:

  1. Which way should the Rot.Encoder be wired up? Currently i'm using pin 10,11,12 as I think I've seen this in the code, is this correct? (10 as pin A, 11 as pin B, 12 for the switch output, switch is connected to 5V, common pin connected to ground.)

  2. What do i have to edit/adjust in order to be able to use the rotary encoder with this library?
    Looking forward to your reply.

A.

Also crossposted on:
https://forum.arduino.cc/index.php?topic=519339.0

Add menu items with function?

Hello, I was curious if it is possible to create menu items programmatically by using a function. One section of my menu I want to be the names of files on an SD card (which will be limited), which I only know at runtime. This is something that would only happen once in the program's lifetime.

SD card reader

It's possible to add suport to list or even better handling sd card files on this lib and display it on lcd screen?

Regards

Use Joystick control

// *********************************************************************
// *************** (5) CONTROL OVER JOYSTICK *********************
// *********************************************************************
#elif(_LCDML_CONTROL_cfg == 5)
// settings
#define _LCDML_CONTROL_analog_pinx A0
#define _LCDML_CONTROL_analog_piny A1
#define _LCDML_CONTROL_digitalread 33 //don't work with u8glib

// when you did not use a button set the value to zero
// #define _LCDML_CONTROL_analog_enter_min 612 // Button Enter
// #define _LCDML_CONTROL_analog_enter_max 1023
#define _LCDML_CONTROL_analog_up_min 612 // Button Up
#define _LCDML_CONTROL_analog_up_max 1023
#define _LCDML_CONTROL_analog_down_min 0 // Button Down
#define _LCDML_CONTROL_analog_down_max 412
// #define _LCDML_CONTROL_analog_back_min 0 // Button Back
// #define _LCDML_CONTROL_analog_back_max 412
#define _LCDML_CONTROL_analog_left_min 612 // Button Left
#define _LCDML_CONTROL_analog_left_max 1023
#define _LCDML_CONTROL_analog_right_min 0 // Button Right
#define _LCDML_CONTROL_analog_right_max 412
// *********************************************************************
// setup
void LCDML_CONTROL_setup()
{
// Serial.begin(9600);
pinMode (_LCDML_CONTROL_digitalread, INPUT);
}
// *********************************************************************
// loop
void LCDML_CONTROL_loop()
{
// check debounce timer
if((millis() - g_LCDML_DISP_press_time) >= _LCDML_DISP_cfg_button_press_time) {
g_LCDML_DISP_press_time = millis(); // reset debounce timer

uint16_t valuex = analogRead(_LCDML_CONTROL_analog_pinx);  // analogpinx
uint16_t valuey = analogRead(_LCDML_CONTROL_analog_piny);  // analogpinx
uint16_t valuee = digitalRead (_LCDML_CONTROL_digitalread);  //digitalpinenter

// if (valuee == HIGH) { LCDML_BUTTON_enter(); } //HIGH with pull up resistor
if (valuey >= _LCDML_CONTROL_analog_up_min && valuey <= _LCDML_CONTROL_analog_up_max) { LCDML_BUTTON_up(); }
if (valuey >= _LCDML_CONTROL_analog_down_min && valuey <= _LCDML_CONTROL_analog_down_max) { LCDML_BUTTON_down(); }
if (valuex >= _LCDML_CONTROL_analog_left_min && valuex <= _LCDML_CONTROL_analog_left_max) { LCDML_BUTTON_quit(); } //_left
if (valuex >= _LCDML_CONTROL_analog_right_min && valuex <= _LCDML_CONTROL_analog_right_max) { LCDML_BUTTON_enter(); } //LCDML_BUTTON_right();
// if (valuex >= _LCDML_CONTROL_analog_back_min && valuex <= _LCDML_CONTROL_analog_back_max) { LCDML_BUTTON_quit(); }

}
}
// *********************************************************************
// ******************************* END *********************************
// *********************************************************************

Time in menu

Hello everybody,

Very nice job with this library.
I would like to insert date and time as a menu title... can we do that and how ?

Thx for help !

LcdMenuLib dont Work along TimeAlams Lib.

Hi, and thanks for the incredible library, it makes a breeze to make menus and configurations for this.

I have n extensive program, save data on SD read DHT22, turn on and off some reles.
I make it in two separated programs, the first was the lcd menu and configurations, using LcdMenuLib 1.0 and works like a charm.

The second, has the use of TimeAlarms for repeat each action each number of seconds, and save a lot of trouble of make soft delays on it.

The problem came ant the joint of the two mayor components, after a while of been discarding possibilities, ended up with the problem; Some sort of incompatibility between lcdMenuLib and TimeAlarms.

I open the example of intScreen, adapt to encoder, set my ic2 screen and tests it, all good so far, so.
Add a single example of Time Alarms, and the trouble began:

Rotate the lcd dont change the behavior of the lcd, some times it detects the change but is, super slow, its like the main loop has a hard delay(500), or something.

If I comment out;
void loop(){
Alarm.delay(1000); // wait one second between clock display

}

The program runs as expected, but remove this line, will ended up in none of the timeLib functions will be executed.

Will try to make a couple of videos and upload for extensive explanation.
Thanks a lot.
-Alex.

Two controls at once

It's possible to use enconder (for menu browsing and setting) and keypad controls at once but keypad 4x4 for a security system for input passwords (0-9 keys and ABCD) and so on?

Debounce encoder with software

Hi,
I would like to debounce the encoder because now I have to be really carefull with the rotary. It doesn't do what I want it to do, and i think it's because it isn't debounced.
I would like to do the debouncing with software, because i've already made an PCB (maybe too early...)
What would your recommendations be to debounce a rotary encoder on the LCDML_CONTROL page.
I've worked with delays, but that didn't do much...

Kind regard!

StafWars

Difference between LCDML and LCDML2

Hello,
first of all thank you for your work.

What is the difference between LCDML and LCDML2?
my underlying question is to be able to set parameters directly from the menus with the right and left buttons :)
Thank you

AccelStepper library

I am using AccelStepper library and have a function in LCDML_FUNC_DISP that calls for run stepper motor but it runs very slowly and i see it it Serial Monitor updating date 1 second a second
Does void LCDML_DISP_loop updates 1 second at a time?

Issue with library name

Hi @Jomelo

we have detected a discrepancy in the library name written inside library.properties
LCDMenuLib
and the library name written inside inside the library manager index:
LCDMenu

I think this is due to an error on our side when the library was registered in the library manager index (at the times this process was mostly manual).

Now we are about to introduce a change in the library manager that forbids the situation described above and the releases whose name differs from the name registered in the library index are ignored.

Is it ok for you to use the name LCDMenuLib? If yes, the library will be re-published with the name LCDMenuLib and the old LCDMenu will be removed from the index, in this case no action is needed on your side. In absence of an answer from you we will proceed with this proposal next week.

Thanks

See also: arduino/Arduino#7127

JOB 631 - 2018/01/15 15:43:25 Checking out tag: v2.3.2
JOB 631 - 2018/01/15 15:43:25 Release LCDMenuLib:2.3.2 has wrong library name, should be LCDMenu
JOB 631 - 2018/01/15 15:43:25 Checking out tag: v2.3.3
JOB 631 - 2018/01/15 15:43:25 Release LCDMenuLib:2.3.3 has wrong library name, should be LCDMenu
JOB 631 - 2018/01/15 15:43:25 Checking out tag: v2.3.4
JOB 631 - 2018/01/15 15:43:25 Release LCDMenuLib:2.3.4 has wrong library name, should be LCDMenu

goBack() and goRoot()

Hello
I try to run the function goBack () and every time I call it I get an empty screen. Ditto for the goRoot () function.

I suspect I'm not doing something, but what? ;-)

Here is the definition of the menu of the example:

#define _LCDML_DISP_cnt 12

// LCDML_root => layer 0
// LCDML_root_X => layer 1
// LCDML_root_X_X => layer 2
// LCDML_root_X_X_X => layer 3
// LCDML_root_... => layer ...

// LCDMenuLib_add(id, group, prev_layer_element, new_element_num, lang_char_array, callback_function)
LCDML_DISP_init(_LCDML_DISP_cnt);
LCDML_DISP_add (0 , _LCDML_G1 , LCDML_root , 1 , "Information" , LCDML_FUNC_information);
LCDML_DISP_add (1 , _LCDML_G1 , LCDML_root , 2 , "Time info" , LCDML_FUNC_timer_info);
LCDML_DISP_add (2 , _LCDML_G1 , LCDML_root , 3 , "Settings" , LCDML_FUNC);
LCDML_DISP_add (3 , _LCDML_G1 , LCDML_root_3 , 1 , "Change value" , LCDML_FUNC);
LCDML_DISP_add (4 , _LCDML_G1 , LCDML_root_3 , 2 , "Something" , LCDML_FUNC);
LCDML_DISP_add (5 , _LCDML_G1 , LCDML_root , 4 , "Program" , LCDML_FUNC);
LCDML_DISP_add (6 , _LCDML_G1 , LCDML_root_4 , 1 , "Program 1" , LCDML_FUNC);
LCDML_DISP_add (7 , _LCDML_G1 , LCDML_root_4_1 , 1 , "P1 start" , LCDML_FUNC);
LCDML_DISP_add (8 , _LCDML_G1 , LCDML_root_4_1 , 2 , "Settings" , LCDML_FUNC);
LCDML_DISP_add (9 , _LCDML_G1 , LCDML_root_4_1_2 , 1 , "Retour..." , LCDML_FUNC_Retour);
LCDML_DISP_add (10 , _LCDML_G1 , LCDML_root_4_1_2 , 2 , "Long" , LCDML_FUNC);
LCDML_DISP_add (11 , _LCDML_G1 , LCDML_root_4 , 2 , "Program 2" , LCDML_FUNC_p2);
LCDML_DISP_add (12 , _LCDML_G7 , LCDML_root , 5 , "Program 2" , LCDML_FUNC_initscreen); // in g7 => hidden
LCDML_DISP_createMenu(_LCDML_DISP_cnt);
.
.
.
.
.
.
.
I create the 3 functions LCDML_FUNC_Retour

// *********************************************************************
void LCDML_DISP_setup(LCDML_FUNC_Retour)
// *********************************************************************
{
// setup function

}

void LCDML_DISP_loop(LCDML_FUNC_Retour)
{
// loop function, can be run in a loop when LCDML_DISP_triggerMenu(xx) is set
// the quit button works in every DISP function without any checks; it starts the loop_end function

if (LCDML_BUTTON_checkAny()) // check if any button is pressed (enter, up, down, left, right)
{
// LCDML_BUTTON_resetAll();

        LCDML_DISP_funcend(); 
       }

// end function for callback

}

void LCDML_DISP_loop_end(LCDML_FUNC_Retour)
{
// this functions is ever called when a DISP function is quit
// you can here reset some global vars or do nothing
//LCDML.goBack();
//LCDML_BUTTON_down();
LCDML.goRoot();

//LCDML_DISP_update();
}

If I make a click on the button or a rotation of the encoder, the display does this.

So at first it would be necessary that the "refresh" of the display is done after the function goBack () or goRoot (), or simulate an event on the rotator but how?

But as nobody reported this problem I conclude that I do not do something correctly but what? ;-(

Thank you for your help
Best regard

PS: Sorry for my poor english

Add info about relation to LCDMenuLib2

It would be helpful to those researching libraries and trying to decide on one if you could provide a short sentence in the README that says something like "for stability, use this, if you want new features use LCDMenuLib2" or similar.

Execute display and backend functions parallel

Is it possible to run backend and display functions (in my case dinamic menu item text) ??, I need to run a backend function that run a code but this stops the display functions, is there any way to run them in parallel.

Regards

Encoder Esc-button

Hi, me again,
I'm fairly new to arduino, and would like to add an escape-button to the encoder-control when double-clicking the encoder. How could i implement that in the LCDML_control doc?

LiquidCrstal I2C examples LCDML and LCDML2

Habs zum laufen bekommen und möchte dir eine Rückmeldung geben. Und zwar benutzt das Beispiel die liquidCrystal_I2C library falsch - das ist alles

Bei Nutzung der aktuellen liquidCrystal_I2C library (v1.1.2) muss der Konstruktor wie folgt aufgerufen werden:
Code: [Select]
LiquidCrystal_I2C lcd(0x27,_LCDML_DISP_cols,_LCDML_DISP_rows);

In der Setup dann nicht lcd.begin(_LCDML_DISP_cols,_LCDML_DISP_rows), sondern:
Code: [Select]
// LCD Init
lcd.init();
lcd.backlight();

Vielleicht möchtest du dies bei dem nnächsten Update mit einpflegen.

Problem with relay in looping

Hai..i'm from Indonesia
i'm newbie.i need learn to you
i try to modif your library with keypad 4x4 and i want put condition when the relay can start looping and stop looping. i have problem about the relay, please help me.
thank you..

Menu_Aquarium.zip

Dynamic menu with u8glib - scrooll bar issue

Hello Again!
Now I am trying to convert the liquidcrystal example you did for dynamic menu into u8glib. It's almost working. The only problem is the scroll bar. I couldn't adapt what you did for liquidcrystal (with uint8_t) into u8glib. Could you post the part of the library that we could use inside dynamic menu to make that nice looking scrooll bar? Thank you a lot!

Empty Receiving Serial Buffer in LCDML_FUNC_DISP

Dear Nils,

I'm currently using your LCDM library and I'm very impressed with your work.

However after quite some programming effort I've run to a brick wall, where I would have to change
everything unless I find a workaroud. Maybe you can help. The issue is as follows:

I'm currently using the multiple hardware Serials of the Arduino to communicate over bluetooth
with another Arduino. Sending my data works just fine, as well as receiving, however the LCDML_FUNC
structure seems to prohibit the emptying of the receiving Serial buffer. This means that with each read
out of a String terminated by '/n' I receive the same string and am thus only able to send one string per
function call. When ending the function and restarting the buffer is emptyed.

Is there any workaround (hopefully without the implementation of backend functions) for emptying
the Serial buffer inside one LCDML-FUNC call?

Thanks in advance,

Leo

How to put names in menu

You did a great job with that library. I spent this week understanding it because the documentation is in German. Now that I figured it out, I just need to do one thing that I didn't understand the best way to do it. I need to do a menu that is not exactly dynamic as in your example. In your dynamic menu example you basically make a menu inside the last screen of you normal static menu. What I need is to use specific words in the main menu so I can acess info regarding that menu. Just for example imagine I have 6 people using my arduino to mesure their weight and save it. Each person has a name that could be added to that menu. So the menu would be the name of each person. I will save it in the EEPROM. Everyday the people will measure their weight and save it at the eeprom ( for 10 days). So at the main menu it will be the name of the people. The sub-menu of each person will be to change their name, to show their average weight in the last 10 days, and so, and I can do all that. I just don't know how to show some eeprom string (that could be even some normal string to make your example easier) at the menu. It is not a dynamic menu, otherwise I would need to make the whole menu dynamic and it is no point to do so if I can use the power of your menu ( by far the best menu library I found)!

error in v2.0 version

Hello,
I try for the first time your menu lib . I have an I2C Sainsmart 40x2 LCD screen

Your v2.0 version return error !

lcdml_i2c.ino:40:16: error: expected constructor, destructor, or type conversion before '(' token
lcdml_i2c.ino:49:15: error: expected constructor, destructor, or type conversion before '(' token
lcdml_i2c.ino:50:15: error: expected constructor, destructor, or type conversion before '(' token
lcdml_i2c.ino:51:15: error: expected constructor, destructor, or type conversion before '(' token
lcdml_i2c.ino:52:15: error: expected constructor, destructor, or type conversion before '(' token
lcdml_i2c.ino:53:15: error: expected constructor, destructor, or type conversion before '(' token
lcdml_i2c.ino:54:15: error: expected constructor, destructor, or type conversion before '(' token
lcdml_i2c.ino:55:15: error: expected constructor, destructor, or type conversion before '(' token
lcdml_i2c.ino:56:15: error: expected constructor, destructor, or type conversion before '(' token
lcdml_i2c.ino:57:15: error: expected constructor, destructor, or type conversion before '(' token
lcdml_i2c.ino:58:15: error: expected constructor, destructor, or type conversion before '(' token
lcdml_i2c.ino:59:15: error: expected constructor, destructor, or type conversion before '(' token
lcdml_i2c.ino:60:15: error: expected constructor, destructor, or type conversion before '(' token
lcdml_i2c.ino:61:15: error: expected constructor, destructor, or type conversion before '(' token
lcdml_i2c.ino:62:15: error: expected constructor, destructor, or type conversion before '(' token
lcdml_i2c.ino:63:15: error: expected constructor, destructor, or type conversion before '(' token
lcdml_i2c.ino:64:15: error: expected constructor, destructor, or type conversion before '(' token
lcdml_i2c.ino:65:15: error: expected constructor, destructor, or type conversion before '(' token
lcdml_i2c.ino:66:15: error: expected constructor, destructor, or type conversion before '(' token
lcdml_i2c.ino:67:22: error: expected constructor, destructor, or type conversion before '(' token
lcdml_i2c.ino: In function 'void setup()':
lcdml_i2c.ino:72:35: error: 'LCDMenuLib_setup' was not declared in this scope
lcdml_i2c.ino: In function 'void loop()':
lcdml_i2c.ino:81:19: error: 'LCDMenuLib_loop' was not declared in this scope
LCDML_control.ino: In function 'void LCDMenuLib_control_analog()':
LCDML_control.ino:32:6: error: 'LCDML' was not declared in this scope
LCDML_control.ino:32:18: error: 'g_LCDMenuLib_press_time' was not declared in this scope
LCDML_control.ino:37:39: error: '_LCDMenuLib_button_up' was not declared in this scope
LCDML_control.ino:40:39: error: '_LCDMenuLib_button_down' was not declared in this scope
LCDML_control.ino:43:39: error: '_LCDMenuLib_button_left' was not declared in this scope
LCDML_control.ino:46:39: error: '_LCDMenuLib_button_right' was not declared in this scope
LCDML_control.ino: In function 'void LCDMenuLib_control_digital()':
LCDML_control.ino:72:9: error: 'LCDML' was not declared in this scope
LCDML_control.ino:72:21: error: 'g_LCDMenuLib_press_time' was not declared in this scope
LCDML_control.ino:75:83: error: '_LCDMenuLib_button_up' was not declared in this scope
LCDML_control.ino:76:85: error: '_LCDMenuLib_button_down' was not declared in this scope
LCDML_control.ino:78:119: error: '_LCDMenuLib_button_left' was not declared in this scope
LCDML_control.ino:79:120: error: '_LCDMenuLib_button_right' was not declared in this scope
LCDML_control.ino: In function 'void LCDMenuLib_control_serial()':
LCDML_control.ino:89:8: error: 'LCDML' was not declared in this scope
LCDML_control.ino:89:20: error: 'g_LCDMenuLib_press_time' was not declared in this scope
LCDML_control.ino:92:51: error: '_LCDMenuLib_button_up' was not declared in this scope
LCDML_control.ino:93:51: error: '_LCDMenuLib_button_down' was not declared in this scope
LCDML_control.ino:94:51: error: '_LCDMenuLib_button_left' was not declared in this scope
LCDML_control.ino:95:51: error: '_LCDMenuLib_button_right' was not declared in this scope
LCDML_function.ino: In function 'void FUNC_init_screen()':
LCDML_function.ino:9:7: error: 'LCDML' was not declared in this scope
LCDML_function.ino:11:5: error: 'lcd' was not declared in this scope
LCDML_function.ino:27:6: error: 'LCDML' was not declared in this scope
LCDML_function.ino: In function 'void FUNC_information()':
LCDML_function.ino:37:7: error: 'LCDML' was not declared in this scope
LCDML_function.ino:40:5: error: 'lcd' was not declared in this scope
LCDML_function.ino:62:6: error: 'LCDML' was not declared in this scope
LCDML_function.ino: In function 'void FUNC_timer_info()':
LCDML_function.ino:79:7: error: 'LCDML' was not declared in this scope
LCDML_function.ino:82:5: error: 'lcd' was not declared in this scope

I use the the new LiquidCrystal_V1.2.1 version

I init my LCD like that!

include <Wire.h>

include <LiquidCrystal_I2C.h>

include <LCDMenuLib.h>

/* settings for lcd */

define _LCDMenuLib_LCD_cols 20

define _LCDMenuLib_LCD_rows 4

/* i2c address */

define _LCDMenuLib_LCD_addr 0x27

define _LCDMenuLib_LCD_e 2

define _LCDMenuLib_LCD_rw 1

define _LCDMenuLib_LCD_rs 0

define _LCDMenuLib_LCD_dat4 4

define _LCDMenuLib_LCD_dat5 5

define _LCDMenuLib_LCD_dat6 6

define _LCDMenuLib_LCD_dat7 7

define _LCDMenuLib_LCD_backlight 3

define _LCDMenuLib_LCD_backlight_pol POSITIVE // NEGATIVE

...
Thanks for your help !

current menu item

Is there a way to get the menu ID or name of the current menu so i can display the menu item as an "header"? Like on the photo's attached.
2017-11-22 13 41 04
2017-11-22 13 41 12

Issue with ATmega644P

Hi
I have problem with Optiboot -- https://github.com/MCUdude/MightyCore -- ATmega644P

In file included from /Users/omegapro/Documents/Arduino/libraries/libraries/LCDMenuLib2/src/LCDMenuLib2.h:142:0,
from /Users/omegapro/Google Drive/Elettronica/ASKO/Software/prova menu/LCDML_031_i2c_display_20x4/LCDML_031_i2c_display_20x4.ino:6:
/Users/omegapro/Documents/Arduino/libraries/libraries/LCDMenuLib2/src/LCDMenuLib2_macros.h:101:88: error: invalid conversion from 'void ()()' to 'LCDML_FuncPtr_pu8 {aka void ()(unsigned char)}' [-fpermissive]
LCDMenuLib2_menu parent ## _ ## child(id, param, settings, callback, condition );
^

                                                                               ^

/Users/omegapro/Documents/Arduino/libraries/libraries/LCDMenuLib2/src/LCDMenuLib2_macros.h:107:9: note: in expansion of macro 'LCDML_addAdvanced'
LCDML_addAdvanced(id, parent, child, NULL, content, callback, 0, _LCDML_TYPE_default)
^
/Users/omegapro/Google Drive/Elettronica/ASKO/Software/prova menu/LCDML_031_i2c_display_20x4/LCDML_031_i2c_display_20x4.ino:77:3: note: in expansion of macro 'LCDML_add'
LCDML_add (8 , LCDML_0_1 , 5 , "Imp. Caldaia" , temp_caldaia);
^
In file included from /Users/omegapro/Documents/Arduino/libraries/libraries/LCDMenuLib2/src/LCDMenuLib2.h:121:0,
from /Users/omegapro/Google Drive/Elettronica/ASKO/Software/prova menu/LCDML_031_i2c_display_20x4/LCDML_031_i2c_display_20x4.ino:6:
/Users/omegapro/Documents/Arduino/libraries/libraries/LCDMenuLib2/src/LCDMenuLib2_menu.h:73:13: error: initializing argument 4 of 'LCDMenuLib2_menu::LCDMenuLib2_menu(uint8_t, uint8_t, uint8_t, LCDML_FuncPtr_pu8, LCDML_FuncPtr_rb)' [-fpermissive]
LCDMenuLib2_menu(uint8_t p_id, uint8_t p_param, uint8_t p_configuration, LCDML_FuncPtr_pu8 p_callback_function, LCDML_FuncPtr_rb p_condition_function);
^

THANKS in advance for your help !!!!
Cristian

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.