Thursday, March 24, 2011
I2C LCD performance
I am a bit disappointed in the performance of the Arduino LCD driver, especially with the I2C interface enabled. I am not sure how much time I want to spend optimizing the standard Arduino libraries, especially since a beacon in operation really doesn't need a display. Realistically, it is just convenient for me while developing this project. I think what I will do is just optimize the display usage to only update what actually changes rather than repainting everything whenever anything changes. If that is insufficient, I will turn off the frequently updated portions of the LCD when doing time critical operations such as when transmitting signals with critical timing criteria such as WSPR.
Subscribe to:
Post Comments (Atom)
Which lib are you using? I have a New Haven LCD and was using the LCDi2cNHD library and it was very slow until I tweaked the g_cmdDelay variable in the *.cpp file.
ReplyDeleteThe performance of the i2c driver on the AdaFruit site is poor. However, there is one that is much improved. Check out the work by falconfour on this link:
ReplyDeletehttp://forums.adafruit.com/viewtopic.php?f=19&t=21586&p=113177
falconfour's code has a bug on reset, but there is code in the thread to fix it. Performance is so good you can do animations using this driver.