Sparkfun's Serial Graphic LCD 128x64 - Firmware

I have recently bought Sparkfun’s Serial Graphic LCD 128x64 (

Accrding to it’s documentation it only has a buffer of 416 bytes so it is quite easy to overflow the buffer and get garbage printed on the screen. The firmware does not make provision for any flow control to overcome this problem so you have to build in all kinds of delays to prevent this from happening.

Furthermore some of the functionsare relatively slow, there’s no provision for an extra font or use of pictures / sprites.

I have however found “new” firmware here:

It elliminates the above problems and short-comings amongst other fixes / additions.

A write-up about it can be found here:

My PROBLEM is that I do not know how or have the tools to compile the firmware and to flash the backpack. :-[

Is there anyone here who would be able to help with compiling it and perhaps even write a little “flash” app for Windows?

Have you tried to contact the author of the library? You can also ask somebody in the comments section on Sparkfun site. I think there should be somebody who has already done it. I am not promising anything but will take a look at that display over the weekend.

I see there is a hex file in the distro so all you have to do is get this on the backpack.

It all depends on the micro used on the backpack. It is probably a PIC or AVR. Have a look on the chip and let me know. Either way you’ll need an in circuit programmer and software. Both are pretty easy to get hold of.

I actually went through all the comments again and found some more info.

I was able to make an adapter from the ISP connector holes on the backpack to an parallel port plug as per

Then I downloaded WinAVR and compiled the code and flashed the backpack with it.

I’ll write up detailed instructions on how I did it as there were one or two missing/incorrect instructions and I also took a pic or two of the cable connections.

Now I need to modify the driver library for the new firmware and get it all going again.

With new library I also need to figure out how to implement Xon/Xoff reliably to keep one from overflowing the buffer of the backpack. This is one of the most important new features for me.

I must admit this was slightly scary stuff as it’s quite new to me.