Go Down

Topic: GLCD library version 3 (end of life - no longer supported) (Read 96175 times) previous topic - next topic


The library includes a diagnostic sketch and documentation to help diagnose issues like this.
Have a look at the included HTML documentation as well as the library wiki.
Here is a link to the library wiki:

--- bill


I can not display the degree symbol using GLCD.print (char (value))
I can create? Using examples of the library LiquidCrystal not work.
Any idea?
Thanks and sorry for my bad English


Many hd44780 displays have a degree symbol in character position 0xdf or 223 decimal.
The glcd library uses fonts that are different from a hd44780 display.
To display a degree symbol as a character, you will need a font that contains
a degree symbol character.
I went and looked at all the fonts that are included with the library and none
of them have a degree symbol.
If you are using the System5x7 font and would like to add a degree symbol,
it is fairly easy.
You can add a degree symbol to System5x7 font table.

Here is the definition for the degree symbol:
Code: [Select]
0x00, 0x06, 0x09, 0x09, 0x06 // degree symbol

This can be added to the table by either replacing a character that you don't want/need
or it can be added to the back end of the table.
If this is added to the backend of the font table, you also have to bump
the character count from at the top of the table from 0x60 to 0x61.
If you add to the back end of the table you will use 0x80 or 128 decimal to print the character.

Attached is a SystemFont5x7.h header file that has the degree symbol added to the back end
of the font table.

Just keep in mind that if you use a modified version of the font, that your code will
only work properly with that modified font file. So that means that if you want/need
others to able to build your code you will need to also supply them with the modified
font file.

--- bill


Hello Bill
I followed your instructions and .... Already!!
Thank you very much for your time.

Hi, i am a arduino - newbie and posted a thread in the german Forum-  area (with Images and Serial output): http://arduino.cc/forum/index.php/topic,160271.0.html

I´ve got a Display with 1x HD44105 and 2x HD44102 , resolution 100x32. I wired the Display to an arduino UNO in 8bit mode via KS0108 wiring. The Images in the german thread represent my Problems, the GLCDdiags works fine in Serial LOG , but on Display it is wrong.

These are my changes in "..Panel.h":
Code: [Select]
/*  Configuration for LCD panel specific configuration   */
#define DISPLAY_WIDTH 100

// panel controller chips
#define CHIP_WIDTH 50 // pixels per chip
#define CHIP_HEIGHT 32 // pixels per chip

And These in "...Device.h":
Code: [Select]
* LCD commands -------------------------------------------------------------

#define LCD_ON 0x39
#define LCD_OFF 0x38
#define LCD_SET_ADD 0x40
#define LCD_DISP_START 0x3E   // Display start page 0 -->3E
#define LCD_SET_PAGE 0xB8

In glcd_config.h i use this Option : #define GLCD_READ_CACHE - whitout this, sie Serial Log Fails !

I hope it was somewhat understandable and you can help me.


I kind of started work on the 44102 but it was never really implemented.
It's been so long I had forgotten about it.
The 44102 is pretty close to the ks0108 but has some differences like
the addressing to set column and page is a single command vs two individual commands.
I just looked at the datasheet and the code and it will require code changes to the
device layer code.
There needs to be a proper 44102 panel file created then there will need to be changes
to the device layer code in glcd_Device.cpp
I don't have a 44102 device so I can't test the code.
If you want, I can work with you directly to see if we can get something up and going.
pm me your email address and we'll continue discussions through email.

--- bill

sure,  :D  tell me, how to Support . GLCDdiags should be the right way to fix it. What info you Need ?


Again, the update for this requires modifying and creating header files as well as code changes.
I'll be happy to work with you to get hd44102 support added.
I don't have a hd44102 module, so I can't test any of changes I provide to you.

PM me your email address so we can continue discussions through email.


Apr 15, 2013, 09:21 am Last Edit: Apr 15, 2013, 11:16 am by Pedro147 Reason: 1
Hello bperrybap.
Firstly thankyou for all the support that you obviously give to forum members using these GLCD's. If you can suggest what type of display. I have purchased from Ebay and point me to any relevant information I would be grateful. Here is the link to the item.


As I am as yet not getting too much help from the Ebay seller in regard to a data sheet etc. Here is the pinout if that might help.
1.   VSS
2.   VDD
3.   VO
4.   RS
5.   R/W
6.   E
7.   DB0
8.   DB1
9.   DB2
10.   DB3
11.   DB4
12.   DB5
13.   DB6
14.   DB7
15.   PSB
16.   NC
17.   RST
18.   VOUT
19.   BLA
20.   BLK

Hoping that you might be able to help, but if not thanks for reading this anyway Pedro.

Edit - The display has a sticker with this on it 12864ZW and Googling it revealed




That display uses a st7920. The pins on it look similar to a ks0108 but it works quite differently.
You can recognize it by the sequence of pins around pin 15 (PSB, NC, RST)
A ks0108 would have CS1, CS2, RST for those pins.
The st7920 is starting to show up more and more. So it is fairly common.
Unfortunately at this point in time the glcd library does not support this display.
If you google around you can find a few libraries that do support that module.
Here is one that is pretty nice:

--- bill


Thank you for that information Bill. You have a good day Pedro.


I was able to get a 192x64 display working with your code that you do not have listed in the docs.  What is the best way for me to send you the setup info so it can get added into the documentation?


I presume that you are not directing this to me Tudeski? Does  your display sound anything like what I have and if so, can you offer me any advice as to how to use it. Thanks Pedro.


No sorry Pedro.  This has to do with the global GLCD forum.  Just trying to add some documentation.

Go Up

Please enter a valid email to subscribe

Confirm your email address

We need to confirm your email address.
To complete the subscription, please click the link in the email we just sent you.

Thank you for subscribing!

via Egeo 16
Torino, 10131