Messages in this thread | | | Date | Thu, 6 Jul 2023 15:49:37 -0400 | From | Hugo Villeneuve <> | Subject | Re: [PATCH] auxdisplay: hd44780: move cursor home after clear display command |
| |
On Thu, 6 Jul 2023 21:33:05 +0200 Miguel Ojeda <miguel.ojeda.sandonis@gmail.com> wrote:
> On Thu, Jul 6, 2023 at 8:51 PM Hugo Villeneuve <hugo@hugovil.com> wrote: > > > > The "clear display" command on the NewHaven NHD-0220DZW-AG5 display > > does NOT change the DDRAM address to 00h (home position) like the > > standard Hitachi HD44780 controller. As a consequence, the starting > > position of the initial string LCD_INIT_TEXT is not guaranteed to be > > at 0,0 depending on where the cursor was before the clear display > > command. > > > > Extract of CLEAR_DISPLAY command from datasheets of: > > > > Hitachi HD44780: > > ... It then sets DDRAM address 0 into the address counter... > > > > NewHaven NHD-0220DZW-AG5 datasheet: > > ... This instruction does not change the DDRAM Address > > > > Move the cursor home after sending clear display command to support > > non-standard LCDs. > > > > Signed-off-by: Hugo Villeneuve <hvilleneuve@dimonoff.com> > > Thanks! Sounds good to me, as long the extra command does not > introduce some issue with the actual HD44780 -- can we double-check > the HD44780 still works as expected? > > Cc'ing Lars and Geert since they may be able to give it a quick test.
Hi Miguel, I do not have a standard Hitachi controller to test it on, so lets wait for feedback from Lars and Geert or others.
> > + /* > > + * Some LCDs (ex: NewHaven) do not reset the DDRAM address when > > + * executing the CLEAR_DISPLAY command. Explicitely move cursor > > + * to home position to account for these non-standard LCDs: > > + */ > > + return hd44780_common_home(lcd); > > Few nits: > > - Explicitely -> Explicitly. > - Isn't the command `DISPLAY_CLEAR` instead of `CLEAR_DISPLAY`? (at > least the identifier above is `LCD_CMD_DISPLAY_CLEAR`).
Yes, I have also modified the commit log message to be consistent with the code.
> - `:` -> `.`. > What about something like: > > The Hitachi HD44780 controller (and compatible ones) reset the > DDRAM address when executing the `DISPLAY_CLEAR` command, thus the > following call is not required. However, other controllers do not > (e.g. NewHaven NHD-0220DZW-AG5), thus move the cursor to home > unconditionally to support both.
Ok, changed comments to that.
Thank you, Hugo.
| |