Greetings all,I'm using an old vanilla HD44780-style LCD screen, and for the first time, I'm using 8-bit mode. Every piece of example code I've shows setting 8-bit interface mode by writing 0x30 three times, with varying delays between writes. The hex value makes perfect sense, I won't argue with a method that's known to work, but why do you write it three times?

Sometimes the repeated function set command is needed to essentially "wake up" the controller. It may or may not be necessary in all applications, but I suppose at the very least it makes for a more robust initialization.