UTFT_GHL now shipping from CTE!!

In the absence of any form of reply from avr_fred, I would appreciate an answer from anybody that has a coldtears display with font IC please?

I need an image copy of the IC chip to populate my recently fitted blank chip.

Many thanks for any offers of help I might receive.

Regards,

Graham

Sorry, I've been disconnected from the world for a while and I forget to check messages. Image is attached, it will be exactly 4mb when unzipped.

If you want the internal structure, let me know, I have it documented somewhere...

image.zip (432 KB)

Hi Fred!! :smiley: :smiley:

Thankyou so much!! I literally scoured everywhere thinking it would not be too difficult to find it somewhere, alas no.

If it is not too much of a nuisance, the structure would be useful too.

Best wishes,

Graham

Hi,
Thanks for making this available that's a great help. My spi flash chip arrived today but I fear I've made a blunder if I'm to use this image. I ordered the largest that Farnell do which was 16mbit. For this image I think I need 32mbit or 4mByte. Am I correct and can either of you kind chaps recommend a source.

Thanks

Chris

Tornado,

Are you UK based?

And do you like trains? :wink:

Tornado650:
I ordered the largest that Farnell do which was 16mbit.

You didn't look very hard I am guessing? :confused:

Regards,

Graham

Hi Graham,
Not sure i understand. Yup, i'm in the uk and no expert i just need to get this display working like you. If you want to know about panel wiring or mechanical engineering i'm your man but for help with arduino i come on here to ask you experts. I'm restricted to suppliers at work if you're wondering why i mention Farnell. What does knowing someone called Farnell used to make toy trains say abt us?

Will you help?

Thanks

Chris

Sorry pal,

If you were a train fan, you would know Tornado was a brand new built steam engine.....

Yes I will help you!!!

Regards,

Graham

Hi Graham,
Thanks for your reply that I thought this forum was going the way of the rest of the internet for a while.

Ah Pete Waterman's Tornado, I see. No, in my case a heroic failure of an Italian motorcycle from 1969 sold by Cosmopolitan motors in the US as a Benelli. The vibration from the short stroke engine will make your fillings fall out if you ever top 80mph. My bike is a euro spec Motobi

http://auldkawasanstuff.blogspot.co.uk/2011_12_01_archive.html

Some questions:

  1. I can find all sorts of SPI flash memory available but which is most likely to work with Fred's Coldtears image. I'm worried about buying the wrong thing again. The current Coldtears screens are shipping with a 64mbit Winbond chip but that might be incompatible with Fred's image or the imaging software might not cope sending a small image to a large chip. My best guess would be the 32mbit W25Q32BVSIG Winbond chip sold by Coldtears on fleabay USA.

  2. Is there an alternative supplier for this chip?

I have the unmentionable Sainsmart SSD1963 5" screen, it works fine as long as it gets external power but I need to write plenty of text in big fronts to the screen.

I now know I should have popped into Glasgow home of FTDI and picked up an FT800 screen for not much more money. Hindsight sigh.....

Chris

I am going stick my neck out and say I have been in dialogue with Coldtears to see if they would supply the sketch to place the image on the chip. The response was, It is ILLEGAL to copy the Font IC.. So that didn't help.

Has anyone got a sketch that runs on the DUE to do this?

Hennings Spi-Flash util can't do it.

Thanks,

Graham

So since my last post, I have cobbled together something that works on a MEGA2560, and even though my SPI Flash chip (Winbond W25Q128FV) is soldered to a Coldtears DUE TFT shield, I have dupont connected it to the MEGA and performed a successful write ( I THINK ).

I have today written a routine on the Arduino to dump the contents to serial monitor, and had a bit of a random scan through. All the bytes I checked were correct, the next plan is, to write an actual verification routine to check the contents against the source.

If anyone else is following this thread, feel free to say hi, or that you have already done some of this work yourself, or even that you would be interested in what I have so far....

Regards,

Graham

Edit: The routine now writes a page, then verifies it after writing, and the process seems to be successful!! :sunglasses: :grin:

Just an update for anyone still watching. I now have a routine which is capable of producing a verifiable FontIC. And a modified version of UTFT_CTE that works with CPLD displays!!

Regards,

Graham

CPLD+FontIC.mpg (1.21 MB)

Excellent news. Well done!

I'm just a few weeks in to Arduinos and currently having a pig of a job trying to get a Coldtears 320x240 with its shield to display bitmaps from the FontIC (colours inverted).
This should help.

Cheers,

John

Welcome to the forums John :grinning:

Are you familiar with my library, UTFT_SdRaw? If the images you are trying to display were created by Henning's tool, the colour will be inverted, if created by some plug in for your image tool, the colour is correct....... I made a flag in my library to swapping colour is easy. The same principle can be applied to the font IC.

Once you become familiar with how these things work, it is not so hard to invert it yourself.

	for (x_1 = 0; x_1<w ; x_1++)
		for (y_1 = 0; y_1<h ; y_1++)
			_UTFT->LCD_Writ_Bus(_SPIread(),_SPIread(),16);

You can do something like this.

		for (y_1 = 0; y_1<h ; y_1++)
		byte one = _SPIread();
		byte two = _SPIread();
			_UTFT->LCD_Writ_Bus(two, one,16);

Good Luck!

Regards,

Graham

PS. About line 162 ish in UTFT_CTE.cpp

Thanks for the welcome!

Simply I'm running the example in UTFT_CTE which is the library that Coldtears use for their displays (obviously you know this ... :slight_smile: ). So I think it's an image they know to be good, and I've either made a newb error or the chip is non-trivially screwed.

There exist three problems with the example, as I run it on a mega2560:

  • The flame-like Coldtears pic displays with inverted colours
  • The icon display (with all the national flags etc) displays with inverted colours
  • The font display doesn't run at all, and halts the program

Colours otherwise display normally --- font colours etc. Also an initial font display which demonstrates the bitstream font in different sizes and colours displays normally (which shows that fonts are recoverable from the winbond chip) but the subsequent section doesn't. It's not helpful that i don't understand the code (yet!) --lots of stuff about 'buf'.

Coldtears thought that the chip might be corrupt and are sending another. We shall see.

Apols for the hijack; however when I saw the thread title I couldn't resist!

It's funny, while I was modifying the UTFT_CTE library, I found it necessary to use Serial.print commands...... and then when I changed DEMO program, that I had failed to add Serial.begin........... The icons were not displaying and the program appeared to 'hang'.... out of interest...... in setup().... try adding Serial.begin(115200); and try that...

I am using a DUE currently but all of the UTFT stuff is quite well interchangable....

What image number is the flame picture you are talking about? I will report back to you, as I have no idea what is actually ON the font ic....

Regards,

Graham

For anybody else wondering what the IC contains, 236 icons 4242 pixels, the Coldtears Coloured smoke image, 320240 pixels, 6 animated Monsters Inc images 62*62 pixels.

Image number and size allocation thus :-

Image Number : 	 1 w :  42 	: h :  42
Image Number : 	 2 w :  42 	: h :  42
Image Number : 	 3 w :  42 	: h :  42
  
   		 INCLUSIVE	 		   
  
Image Number : 234 w :  42 	: h :  42
Image Number : 235 w :  42 	: h :  42
Image Number : 236 w :  42 	: h :  42
Image Number : 237 w : 320 	: h : 240
Image Number : 275 w :  62 	: h :  62
Image Number : 277 w :  62 	: h :  62
Image Number : 279 w :  62 	: h :  62
Image Number : 281 w :  62 	: h :  62
Image Number : 283 w :  62 	: h :  62
Image Number : 285 w :  62 	: h :  62

Regards,

Graham

Good work on finding that! Noted :slight_smile:

ghlawrence2000:
try adding Serial.begin(115200); and try that...

Capricious as these things are, it was definitely worth the punt, but no luck. At ~8 seconds into this video the two things that don't work for me are shown, fortuitously, together on the two displays:

It's the screen of accented characters that halt the program.

Coldtears did offer the suggestion that ' u might forgot to pull up the fontIC CS pin, and random data in the spi bus made the data in the fontIC corrupted'. I haven't altered the example program and can't see any means of affecting the CS pin otherwise, so the suggestion was of, er, limited use. Don't even know what it means ...

PS If you'd rather I moved this to its own thread, please say.

JohnPrime:
Coldtears did offer the suggestion that ' u might forgot to pull up the fontIC CS pin, and random data in the spi bus made the data in the fontIC corrupted'. I haven't altered the example program and can't see any means of affecting the CS pin otherwise, so the suggestion was of, er, limited use. Don't even know what it means ...

PS If you'd rather I moved this to its own thread, please say.

Coldtears I have wholeheartedly been recommending on these forums for months now, given the quantity of Sainsmart related problems we see on these forums, and how many of those problems are fixed by Coldtears hardware. However, I recently had cause to request assistance from Coldtears, unrelated to the font ic, and to be honest, was severely unimpressed at being told they don't support Sainsmart, as the only reason that word was mentioned........... was because on this occasion, the Sainsmart hardware worked faultlessly, it was the Coldtears hardware with the problem, but they stalled as soon as the word Sainsmart was mentioned..... I accused them of money grabbing and poor customer service.... And doubled my efforts to implement their font ic...........

I appreciate this off topic, but it is MY thread so I don't feel guilty :grin: :stuck_out_tongue: this is an email sent to them this evening....

Hello again,

Considering how unhelpful you were when I approached you for help recently, I have no other motivation to tell you the outcome of mine and David's efforts to resolve the Touch problems, other than I would like to think you will consider assisting other customers in future if anybody asks you about similar problems to the ones David experienced!!

To remind you, (I promise not to mention Sainsmart because you appear to forget how to read when you see that word!!!), David had a genuine CTE TFT Mega shield, and Genuine CTE 7" CPLD display, and touch functionality stopped working if the Serial monitor was opened. Well, he tried 2 different external power supplies, both exhibited the same symptoms. So imagine our surprise to find the problem fixed, if NO additional power supply was used.

To reiterate, when used with extra power, touch stops working when serial monitor is opened, BUT if no additional power is used, there are NO problems at all. Hope this helps somebody else.

There is no need to make a new thread, I think it is long overdue we have a central location to discuss font ic related issues.

Have you tried editing the program yourself? Do NORMAL characters print ok? eg "ABCDEFGabcdefg" or "12345" ? Is it localised to 1 Font, or do ALL fonts exhibit the same problems?

Just so you know what I am working on now I have a working font ic....... If you have played with UTFT and UTFT fonts at all, you will know there is the ability to print a string CENTERed.... I am trying to implement that for the BVS fonts, which you may or maynot know, are proportional eg W is 10 pixels wide, whereas I is 2 pixels....

By the way, I just noticed there is an error in the sketch I am using, they used image 287 after the color bars, of course it should be 237!!

I don't know how far you have gone to try to rectify this??

What model CTE display are you using?

Include your sketch that is not working.......

Simple proposal, try something like this.....

void setup()
{
  Serial.begin(115200);
  delay(1000);
  myGLCD.InitLCD();
  myGLCD.setFont(SmallFont);
  myGLCD.setBackColor(VGA_BLACK);
  CTE_LCD.SPI_Flash_init(FLASH_CS_PIN);
}

void loop()
{
  CTE_LCD.show_color_bar();
  delay(1000);
  myGLCD.clrScr();
  CTE_LCD.Load_image(0,0,237);
  myGLCD.setColor(255, 222, 111);  //Set font color
  myGLCD.setBackColor(0, 0, 0);  //Set background color
  CTE_LCD.Set_character_spacing(1); 
  CTE_LCD.Put_Text("Coldtears electronics",5,180,BVS_34);
  CTE_LCD.Put_Text("TFT LCD w/Font IC Demo",5,220,BVS_34);
  delay(1000);
  myGLCD.clrScr();
  CTE_LCD.Put_Text(" ",0,0,BVS_13);
  CTE_LCD.Put_Text("A",0,0,BVS_13);
  CTE_LCD.Put_Text("B",0,0,BVS_13);
  CTE_LCD.Put_Text("C",0,0,BVS_13);
  CTE_LCD.Put_Text("D",0,0,BVS_13);
  CTE_LCD.Put_Text("E",0,0,BVS_13);
  CTE_LCD.Put_Text("F",0,0,BVS_13);
  CTE_LCD.Put_Text("G",0,0,BVS_13);
  CTE_LCD.Put_Text("H",0,0,BVS_13);
  CTE_LCD.Put_Text("I",0,0,BVS_13);
  CTE_LCD.Put_Text("J",0,0,BVS_13);
  CTE_LCD.Put_Text("K",0,0,BVS_13);
  CTE_LCD.Put_Text("L",0,0,BVS_13);
  CTE_LCD.Put_Text("M",0,0,BVS_13);
  CTE_LCD.Put_Text("N",0,0,BVS_13);
  CTE_LCD.Put_Text("O",0,0,BVS_13);
  CTE_LCD.Put_Text("P",0,0,BVS_13);
  CTE_LCD.Put_Text("Q",0,0,BVS_13);
  CTE_LCD.Put_Text("R",0,0,BVS_13);
  CTE_LCD.Put_Text("S",0,0,BVS_13);
  CTE_LCD.Put_Text("T",0,0,BVS_13);
  CTE_LCD.Put_Text("U",0,0,BVS_13);
  CTE_LCD.Put_Text("V",0,0,BVS_13);
  CTE_LCD.Put_Text("W",0,0,BVS_13);
  CTE_LCD.Put_Text("X",0,0,BVS_13);
  CTE_LCD.Put_Text("Y",0,0,BVS_13);
  CTE_LCD.Put_Text("Z",0,0,BVS_13);
  
  while(1);
}

You will notice the coordinates are all 0,0 so will overprint, I couldn't be bothered to edit them for you....... you should be able to figure it out yourself.....

Regards,

Graham

ghlawrence2000:
I appreciate this off topic, but it is MY thread so I don't feel guilty :grin: :stuck_out_tongue:

I agree that it's a salient place for a fontIC related problem but didn't want to derail the whole thread into another newb-rescuing exercise. Much appreciated :slight_smile:

[quote author=ghlawrence2000 link=msg=2146489 date=1426713749 ]Have you tried editing the program yourself?
Do NORMAL characters print ok? eg "ABCDEFGabcdefg" or "12345" ?
Is it localised to 1 Font, or do ALL fonts exhibit the same problems?[/quote]

I had managed to use the flash fonts in all sizes and several colours.
Your sketch worked apart from the image which didn't show at all, even inverted. It's only the font display from the 'while' loop that doesn't work.
I've tried changing the fonts in the sketch to other sizes with no effect.

Excellent news. We'll wait for full disclosure with bated breath :slight_smile:

The display is a 320x240 with touchscreen and a fontIC shield on a mega 2560. I've attached the full example sketch from Coldtears with added comments pointing to which bits work and which don't.

Incidentally, the .raw images in UTFT_SdRaw display correctly.

Again, thanks for your advice. I'm guessing the flashIC's poorly ...

CTE32_320x240.ino (10.3 KB)

So, lets try this from another angle........

Use the image uploader and send the coldtears smoke image to another location if everything else is working?

The way I figured out the image numbers was :

for(int location = 0; x<300; x++) {
myGLCD.clrScr();
CTE_LCD.Load_image(0,0,location);
delay(2000);
Serial.print("Image number ");
Serial.println(location);
}

try something like that???

G