Powertip PG12864 and Mega 2560

Hello I have been searching for information regarding pin connection from the Powertip PG12864-F to the Arduino Mega. So far, no success. The Powertip is driven by the Toshiba T6963C . Most information, such as it is is based on a much larger panel and not using the T6963C as the driver.

If there is somewhere that I haven't found yet could you let me know or somebody in the forum can help directly I would be most grateful.

I should add the my knowledge about things electronic is somewhat sketchy but I am trying to learn.


The Powertip PG12864 indeed uses the T6963 controller. There is a library mentioned on the Playground. Pin connections are here: http://code.google.com/p/arduino-t6963c/wiki/T6963c


Hello Oliver Thanks for the help!

I have downloaded the Arduino T6963 library and opened one of the examples - the panel is 240X64 :roll_eyes: mine is the Powertip PF12864F (128x64) I did notice that the sketch was a thorough demo for the panel it was written for but, again no pinouts are mentioned.

I suppose it's a question of comparing the panel's data sheet and the document you suggested to work out what goes where.

I think if I have some success with this panel I will make plenty of notes and post it on the forum in case there are other unfortunates in the same position as myself. I'll certainly let you know how I get on.

Thanks a million


Hi again

Oliver I downloaded the link that you sent. Using the data I transposed the pins from the display in the document to the Arduino Mega. I even colour coded everything so I wouldn't get lost. I opened the example in the T6963c Library altering the panel dimensions to those of the PG12864-F and where necessary changed the screen figures as well, ie. where 240 change to 128 and 128 to 64 (not sure if that is causing problems ). It compiled fine and uploaded but not a dicky bird from the screen. It doesn't even flicker although it is on (I've checked the contrast).

If I can't get a demo to run, when everything in the sketch is presumably correct I don't see me succeeding in creating my own as I don't understand the code used. It is looks very different to the Arduino Uno code, which is unexpected. I don't see any initialisation of pins taking place nor any other familiar coding.

I would appreciate your input again and also the input from anybody else who can help me. The frustration levels are very high and if I don't get it sorted sometime soon I can see the panel metamorphosing into a "frizzbee"

Help Please, somebody.


Hi Danny

The link from above was the only information I had (except data sheets). In fact I can only share my frustration with you. I have a T6963 240x128 Display at home and it so far it does not display anything.


Hi Oliver
Seems we are both in the same boat.
I shall continue my efforts and keep you you in the loop.


Problem solved :grin:

This LCD Panel will be changing into a FRIZZBEE pretty soon.

Information re connecting to an Arduino is simply not out there and trying to use it is becoming a nightmare. As far as I'm concerned it's a case of smart description, smart price, but stupid shopper. =( Too bad really I had high hopes.


Hi, had also several problems to get my 240x64 lcd with t6963 to run. I made several mistakes (bloody beginner with arduino). May be I can help by showing my way to get it running: 1. I used any of the several connection tables I found, most in glcd libraries for the ks0108 chip. But it has nothing to do with t6963, so that was useless. When I changed to http://code.google.com/p/arduino-t6963c/ under 'Wiki' and 'T6963' and used that connections, I still didnt see anything (but it was first time the correct connecting). 2. My lcd needs a negative voltage for contrast adjusting (about -7 to -8 V). So all tries with usual +5V couldnt help. So be sure to use the right polarity and get the information from datasheet or dealer. I dont know if a wrong polarity or to high voltage can damage the lcd, so be careful! Sometimes when I cant get infos, I try with a very 'weak' voltage (have a power supply with adjustable voltage and current) or I use a serial 5-10k resistor to limit the current. But better get the correct info. You should be able to set all pixel dark when adjusting the voltage at contrast pin, otherwise you cant be sure that you see nothing only by to low contrast. 3. Ok, demo startet then and I was happy. But not for long. The library is very changed, commands you find at examples you cant use. The autor has created commands, but who knows them? So look into his t6963.h file. The example shows many things with text and graphic, but at many points I dont know how to go on. I miss to many commands and as beginner i am not experienced enough to change libs or add new commands. Hope still to find any hints how to add the lots of commands I see in every example for using them. Up to now its a like a golden cage.

Would like to hear if you got any progress with your questions.

I made some progress, my display requires -15V, which was one of the main reasons, why the screen did not show anything. Thanks for your support.


Hi, np, but now the real adventure begins... Trying to program whatever leads quickly to the specialities of the t6963 libs. Am missing several commands, that we find in the lot of examples, so they cant be used. Also its not easy for me as beginner to understand the changed commands, as they are in the libs...

Again, thanks for supporting me. I was about to give up with the display. But now... its working.

The next release for u8glib will support this display.


Edit: @Dannyr: I could provide a prerelease of u8glib supporting your 128x64 T6963 display...

Hi, you will put the t6963 driver into u8glib?! That would be really helpful for many fans, that have their lcd only lying around or simply running the nice demo:-). Up to now I didnt use the u8glib, but I am sure, it will be easier to work with it, will soon look at it now... bye

A prerelease is now available for download: http://code.google.com/p/u8glib/downloads/list

I have implemented the following constructors, but i have only tested the 240x128 variant:

U8GLIB_T6963_128X64(d0, d1, d2, d3, d4, d5, d6, d7, cs, a0, wr, rd [, reset]) U8GLIB_T6963_240X64(d0, d1, d2, d3, d4, d5, d6, d7, cs, a0, wr, rd [, reset]) U8GLIB_T6963_240X128(d0, d1, d2, d3, d4, d5, d6, d7, cs, a0, wr, rd [, reset])

There are no restrictions on the pin numbers for the above arguments. Feedback on the 128x64 and 240x64 variants is highly wellcome. Are any other display sizes required?


Hi oli,
hm… as I am said, I am a beginner with arduino. So how are the pins to be connected? Read your wiki, but couldnt find the version for 8bit parallel. Am I right, D0-D7 gets connected to 8,9,10,11 and 4,5,6,7 and then I dont know what to do. How to connect ‘18, U8G_PIN_NONE, U8G_PIN_NONE, 17, 16’? Which connections I should do with RD,WR,CE,CD? Up to now I used the connection table from
E:\Arduino an Pc_k\LCD\240x64_6963C\T6963_Lib\T6963c - arduino-t6963c - T6963C Arduino Librarie - Google Project Hosting.mht
where this pins get connected to A0-A3. But where can I find 18, U8G_PIN_NONE,17 and 16? Or do you use a Mega?


U8glib is flexible. You can use any available digital pin from an Arduino board.

Now a T6963 display has the following pins: d0, d1, d2, d3, d4, d5, d6, d7, cs (=ce), a0 (=cd), wr, rd, reset

Assume you have connected d0 from the display port to pin 8 of your arduino board, then put pin number 8 as first argument of the constructor: U8GLIB_T6963_240X128(8, Now if you connected the d1 pin of the display with pin 3 of your board, the put number 3 as second argument: U8GLIB_T6963_240X128(8,3, Continue, until you reached the reset pin.

Maybe you can post the datasheet of your display, then we can discuss the wiring together.


Hi Oliver, at the pic from your 240x128 lcd it looks as if you were using the same connections as on E:\Arduino an Pc_k\LCD\240x64_6963C\T6963_Lib\T6963c - arduino-t6963c - T6963C Arduino Librarie - Google Project Hosting.mht with D0-D7/lcd to D2-D9/Arduino and WR, RD, CE and CD/lcd to A0-A3/Arduino. Am I right? With this connections I get this demo from the above site running. But when I start to compile an u8glib example, I get an error

U8glib\U8glib.cpp.o: In function U8GLIB::initSPI(_u8g_dev_t*, unsigned char, unsigned char, unsigned char, unsigned char, unsigned char)': E:\Arduino an Pc_k\arduino-1.0.3-windows\arduino-1.0.3\libraries\U8glib/U8glib.cpp:42: multiple definition ofU8GLIB::initSPI(_u8g_dev_t*, unsigned char, unsigned char, unsigned char, unsigned char, unsigned char)' U8glib.cpp.o:C:\DOKUME~1\ef\LOKALE~1\Temp\build2633422020823526563.tmp/U8glib.cpp:42: first defined here

I extracted the u8glib_Arduino zip to the libraries folder of the arduino program and can open the examples by going into examples menu. Then I am erasing the quotes of the U8GLIB_T6963_240X128 and set the parameters to 2,3,... as I told you above. But am not sure how to handle the U8G_PIN_NONE and 14 to 17. My Uno doesnt have pins above D13 at B. Up to now I have all connected as told above, using A0-A3 for RD,WR and so on. Sag mal, bist Du auch Deutscher? Dann brauchen wir uns nicht mit meinem simplen Schulenglisch herumzuplagen:-)

here a similar datasheet. May be the same as yours?

w240-6.pdf (418 KB)

PM send


Hi Oliver, i am trying to get working LCD Powertip PG-12864f with no success. I tried my Teensy++ 2.0 board and Mega 2560 both with no difference. When arduino is booting there is one horizontal line on display, then it dissapear and nothing else is shown. I tried different library, different pins on Mega, but nothing changed..

My LCD have only 4kB RAM, somewhere i read information about positioning in RAM. Could be this some issue?

Do you have some idea what i am doing wrong?

Thank for help Jan

Hi Jan

What is your setup? What lib do you use? U8glib? What is your contructor call for u8glib?
How did you connect your display?

It also might be a contrast issue: How do you control the contrast of the display? Is there a negative voltage converter included?