@@ -119,15 +119,15 @@ void LiquidCrystal::begin(uint8_t cols, uint8_t lines, uint8_t dotsize) {
119119
120120    //  we start in 8bit mode, try to set 4 bit mode
121121    write4bits (0x03 );
122-     delayMicroseconds (4500 ); //  wait min 4.1ms
122+     delayMicroseconds (4400 ); //  wait min 4.1ms
123123
124124    //  second try
125125    write4bits (0x03 );
126-     delayMicroseconds (4500 ); //  wait min 4.1ms
126+     delayMicroseconds (4400 ); //  wait min 4.1ms
127127
128128    //  third go!
129129    write4bits (0x03 ); 
130-     delayMicroseconds (150 );
130+     delayMicroseconds (150 );  //  wait min 100μs 
131131
132132    //  finally, set to 4-bit interface
133133    write4bits (0x02 ); 
@@ -137,11 +137,11 @@ void LiquidCrystal::begin(uint8_t cols, uint8_t lines, uint8_t dotsize) {
137137
138138    //  Send function set command sequence
139139    command (LCD_FUNCTIONSET | _displayfunction);
140-     delayMicroseconds (4500 );  //  wait more than 4.1 ms 
140+     delayMicroseconds (4400 );  //  wait min 4.1ms 
141141
142142    //  second try
143143    command (LCD_FUNCTIONSET | _displayfunction);
144-     delayMicroseconds (150 );
144+     delayMicroseconds (150 );   //  wait min 100μs 
145145
146146    //  third go
147147    command (LCD_FUNCTIONSET | _displayfunction);
@@ -176,13 +176,13 @@ void LiquidCrystal::setRowOffsets(int row0, int row1, int row2, int row3)
176176void  LiquidCrystal::clear ()
177177{
178178  command (LCD_CLEARDISPLAY);  //  clear display, set cursor position to zero
179-   delayMicroseconds (2000 );  //  this command takes a long time! 
179+   delayMicroseconds (1800 );  //  wait min 1.52ms 
180180}
181181
182182void  LiquidCrystal::home ()
183183{
184184  command (LCD_RETURNHOME);  //  set cursor position to zero
185-   delayMicroseconds (2000 );  //  this command takes a long time! 
185+   delayMicroseconds (1800 );  //  wait min 1.52ms 
186186}
187187
188188void  LiquidCrystal::setCursor (uint8_t  col, uint8_t  row)
0 commit comments