Closed davigre closed 6 years ago
Can I undefine 'ULTIPANEL' and define 'ULTRA_LCD' in 'Conditionals_LCD.h' and define LCD_WIDTH 20 and LCD_HEIGHT 4 in 'Configuration.h'?
/**
* I2C PANELS
*/
#if ENABLED(LCD_I2C_SAINSMART_YWROBOT)
// Note: This controller requires F.Malpartida's LiquidCrystal_I2C library
// https://bitbucket.org/fmalpartida/new-liquidcrystal/wiki/Home
#define LCD_I2C_TYPE_PCF8575
#define LCD_I2C_ADDRESS 0x27 // I2C Address of the port expander
//#define ULTIPANEL
#define ULTRA_LCD
#elif ENABLED(LCD_I2C_PANELOLU2)
Configuration.h:
//
// Sainsmart YW Robot (LCM1602) LCD Display
//
// Note: This controller requires F.Malpartida's LiquidCrystal_I2C library
// https://bitbucket.org/fmalpartida/new-liquidcrystal/wiki/Home
//
#define LCD_I2C_SAINSMART_YWROBOT
#define LCD_WIDTH 20
#define LCD_HEIGHT 4
It compiles now.
Thanks for pointing this one out. We've been trying to do some cleanup of the LCD options and conditionals to make it possible to use displays without a controller, but there's a lot of mixup in the code as to which of the conditions and lcd options refer to a display, which refer to a controller, and which refer to capabilities. This is just one of those things we haven't fully sorted out. Your solution is essentially correct. I'll make sure to patch this today.
This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.
src.zip
I want to use ONLY 20x4 LCD with YwRobot IIC encoder ( NO Click Encoder )
So I enabled LCD_I2C_SAINSMART_YWROBOT option in 'Configuration.h':
in file 'Conditionals_LCD.h' I found this:
As I don't have a Click Encoder I disabled NEWPANEL in 'Conditionals_LCD.h' file:
When I compile I get an error:
`#error "ULTIPANEL requires some kind of encoder."``
As you can see I don't have an ULTIPANEL.
Thank's