Hi, I'm currently working with a 2x16 display and I have opted to not read the display and simply wait the maximum time (The application is not time critical, so I save one IO). But just to check: You should not read the busy flag between the two 4 bit operations, it is only valid after the whole operation is completed. I have the Hitachi LCD display modules data book here with me and it sucks!! The translation is deplorable plus its full of errors. They should really consider a better translator. Niki