UTFT_GHL now shipping from CTE!!

Alright, give this a whirl.....

Does the image converter work ok? I appreciate it is obvious to me, since I wrote it, never thought I might need to give instructions.... oops... :stuck_out_tongue:

G

Edit: Attachment removed 3rd April 2016

Hi Jim,

Try imageconverter v1.2.....

Regards,

Graham

I think fairly well bomb proof now, but there is another issue I just found..... If you select a picture as the font ic file, it will trash your picture........... Need to guard against that I think!!!

Edit: Attachment removed 3rd April 2016

Ok, will do. The new version of Convert_CTE_to_GHL from Latest Efforts does not find the Font IC (message in serial monitor).

Did you change chip select pin to 45? Currently 52....

G

Duh...let's see if that helps...

:stuck_out_tongue: Who is tired from shovelling snow? :wink:

Still waiting to get some in the Boston area.

Ran but produced zero byte MEGAGHL.bin file...

Currently uploading .bin extracted with old version of CTE_to_GHL; Image Converter ran ok; next have to upload that modified .bin to see if it worked to add an image...

I have had zero byte files a few times, the solution I found was leave serial monitor open, just unplug mega usb lead....

G

Any feedback?

Ok, good news -- starting with the base CTE image, can extract it from IC to .bin, add images using Image Converter, reload to IC, and use GHL_Demo for images/fonts to display.

bad news:

  1. starting with base CTE image, can add 5 images to it using existing CTE Image Loader, can extract IC image (plus 5) to .bin (output below has correct count):
    .....
    CTE Image No 281 = Address 0x1f9000 (w)62x(h)62 GHL Image No 241
    CTE Image No 283 = Address 0x1fb000 (w)62x(h)62 GHL Image No 242
    CTE Image No 285 = Address 0x1fd000 (w)62x(h)62 GHL Image No 243
    CTE Image No 475 = Address 0x2bb000 (w)800x(h)480 GHL Image No 244
    CTE Image No 663 = Address 0x377000 (w)800x(h)480 GHL Image No 245
    CTE Image No 851 = Address 0x433000 (w)603x(h)480 GHL Image No 246
    CTE Image No 993 = Address 0x4c1000 (w)800x(h)480 GHL Image No 247
    CTE Image No 1181 = Address 0x57d000 (w)545x(h)480 GHL Image No 248
    Total images found 248
    CTE Font BVS_13 Address =0xa000 Font Height =13 GHL Image No 249
    CTE Font BVS_15 Address =0xc000 Font Height =15 GHL Image No 250
    CTE Font BVS_19 Address =0xe000 Font Height =19 GHL Image No 251
    CTE Font BVS_22 Address =0x12000 Font Height =22 GHL Image No 252
    CTE Font BVS_28 Address =0x16000 Font Height =28 GHL Image No 253
    CTE Font BVS_34 Address =0x1c000 Font Height =34 GHL Image No 254
    CTE Font BVS_43 Address =0x26000 Font Height =43 GHL Image No 255
    CTE Font BVS_56 Address =0x35000 Font Height =56 GHL Image No 256
    CTE Font BVS_74 Address =0x4e000 Font Height =74 GHL Image No 257
    CTE Font BVS_112 Address =0x7a000 Font Height =112 GHL Image No 258
    Current file position = 0x4f79a
    Current items on chip = 258
    Time taken after file creation = 104063ms

Image Converter appears to add image (calls it out as 259) but Flash Uploader in Processing aborts with array out of bounds error:
0043D800
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at processing.core.PApplet.selectCallback(PApplet.java:6443)
at processing.core.PApplet.access$0(PApplet.java:6436)
at processing.core.PApplet$3.run(PApplet.java:6348)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:756)
at java.awt.EventQueue.access$500(EventQueue.java:97)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.awt.EventQueue$3.run(EventQueue.java:703)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:75)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:726)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
Caused by: java.lang.ArrayIndexOutOfBoundsException: 4446612
at Flash_Uploader.fileSelected(Flash_Uploader.java:116)
... 21 more

Happens in same place multiple times (after refresh/etc). Interesting part -- after the abort, running demos to see what is on the IC, the initial 30 or so icons are corrupted, the middle icons through the first 3 added images are ok, then no 4th or 5th image. Attached .bin's as produced by CTE_to_GHL and as produced from Image Converter.

  1. In the GHL_Demo_Fonts, the landscape fonts are ok but the portrait fonts are not rotated (although sized correctly). Portrait fonts also appear to be generally in the right place but not sure if correct.

  2. Minor user interface tweaks:
    a) could use a prompt when the converter finishes that tells the user it's done/successful
    b) in the converter, how would you override the image number without knowing existing image sizes in the .bin and the size of the new one you want to add? For example, using the CTE image converter, you decide on the position so you can put the image where you want (being careful to manage space so no overlaps occur). It means I can replace 1 image but leave everything else intact (e.g., an updated icon/frame). How would/will this work for your image converter (if supported)?

Otherwise, it looks like you have made some major progress! Congratulations!!

MEGAGHL (Plus 6).bin.zip (341 KB)

MEGAGHL (Plus 5).bin.zip (524 KB)

Ok, the bad news is not caused by me....... The CTE image uploader is faulty, I am already aware of that! The reason it fails in processing is because the resultant file size is incorrect.

So, can you try this please?

FontIC.zip is a CTE format font image, with extra pictures and fonts..... The CTE_to_GHL_Converter will only pull the images and BVS fonts....

The end of which should look like this :-

CTE Image No 287 = Address 0x1ff000 (w)800x(h)480 GHL Image No 244
CTE Image No 475 = Address 0x2bb000 (w)240x(h)160 GHL Image No 245
CTE Image No 494 = Address 0x2ce000 (w)400x(h)240 GHL Image No 246
Total images found 246
CTE Font BVS_13 Address =0xa000 Font Height =13 GHL Image No 247
CTE Font BVS_15 Address =0xc000 Font Height =15 GHL Image No 248
CTE Font BVS_19 Address =0xe000 Font Height =19 GHL Image No 249
CTE Font BVS_22 Address =0x12000 Font Height =22 GHL Image No 250
CTE Font BVS_28 Address =0x16000 Font Height =28 GHL Image No 251
CTE Font BVS_34 Address =0x1c000 Font Height =34 GHL Image No 252
CTE Font BVS_43 Address =0x26000 Font Height =43 GHL Image No 253
CTE Font BVS_56 Address =0x35000 Font Height =56 GHL Image No 254
CTE Font BVS_74 Address =0x4e000 Font Height =74 GHL Image No 255
CTE Font BVS_112 Address =0x7a000 Font Height =112 GHL Image No 256
Current file position = 0x24a25e
Current items on chip = 256
Time taken after file creation = 105009ms

Then using my converter add as many images as you like........... it SHOULD work flawlessly...

The modified CTE_to_GHL_Converter is included which stops the zero byte problem...

A modified ImageConverter which should make it apparent when it is finished (and no more flicker!).

Currently there is no way to 'tell it' what slot to add to, it will just keep adding to the end.

Long term plan? A windows 'File manager' kind of thing that will display the contents and or delete stuff which will then internally reorganise accordingly, 'you' are never going to decide where anything goes ;).

Portrait fonts..... disclaimer in the library....

  Tried and tested, guaranteed all features work as claimed excluding PORTRAIT text.
  4. CTE 5"   LCD Module w/Font IC 800x480 (CTE50)

G

PS... As a first time Windows programmer, there are 2 small 'gremlins'... when you drag the window around the screen there is a horrible flicker of any loaded picture, and also if you minimise then restore, there is no picture until you move the window or click the restore button.... I am aware of those issues..... feel free to report anything else.. (FIXED! :smiley: :wink: )

Edit: Attachment removed 3rd April 2016

Hi Graham,

Using the FONTIC.zip as the starting point, it works ok (load to IC, extract into GHL format, add images using converter, reload, run UTFT_GHL-based demo). That's cool -- works just like when using the CTE base image.

I am confused though -- the net takeaway from your reply is that if someone has images loaded on their IC using the CTE Importer, the process (extract/then optional add/then reload as GHL) ain't gonna work.

What are the alternative means of loading images such that they would have other images (than CTE-provided) that CTE_to_GHL is trying to extract? Are these images put there by Henning's SPI Flash system?

Even if there is some other library, it seems that they will have to have either just the base CTE image or this other CTE image that you sent loaded on their IC, then convert to GHL, and then add their images using the GHL converter in order for this to work...can you clarify? thanks!

Finally stop snowing....digging out tomorrow...

No, they were put there manually by me using Hexedit using the calculated address that the CTE uploader SHOULD have used........

I was just trying to calculate an example, but struggling.......... I know previously I did some image adding and the slot it told me was the next free slot was not actually free, and also I saw so many people complaining about the CTE Image converter that I never bothered using it.... I use the GUI to do the conversion, then paste the raw data in 0.cte to the correct address that it was supposed to be, and never had any problems.

I cannot promise that is the case for everyone, but I know from my own experience the CTE image converter is not exactly right.

One of the many reasons to dump it and use my awesome amazing fantastic replacement!! :wink: :stuck_out_tongue: :smiley: Which works as it should...

Comments on my new ImageConverter? More like you had in mind?

Cheers,

G

Getting PORTRAIT text is turning out to be a ****ing ball ache..............

But anyway, on the case...........

Goodnight, that's me done for today.

G

I appreciate swearing is not good karma on the forums, but on some occasions the only word that sums up the strength of feeling about a given situation is a harsh word! So apologies in advance..... thank fu*k for that!! PORTRAIT text on the SSD1963 display is working!!! :smiley: :wink:

That really IS it for tonight. Goodnight all.

Regards,

Graham

Hi Graham,

I've been reading a lot of your posts on UTFT over the weekend and I have to say I admire your effects and dedication on projects like this even though it is not the most popular thing in Arduino world. Thank you for your hard works!

I have project coming up and been contemplating on getting a Arduino DUE and 7" TFT MS070SD setup. I am still in the R&D phase but I've gotten a pretty good idea on what my project is going need as far as the software libraries and hardwares. That's being said, I haven't actually gotten my hands on a TFT LCD yet and am still puzzling on few questions. I've reached out to Coldtears but haven't gotten answers back yet. I am hoping you can answer my questions before I purchase the parts. I found this thread to be most relevant to my questions.

I am aware that MS070SD TFT doesn't come with a Font IC and I don't really want to add on a Font IC and flash it. What I really need is the rendering speed of the bitmaps and pages. I need 3 font types the most and a few icons for my project. Is there a way to load fonts and icons from SD card(I am pretty sure I can load icon as bitmap from SD)? From what I read, seems like I can convert a font to .c file and load it from the library, is it true? How is the performance compare to SSD1963 TFT with a Font IC? Am I am making the right choice on MS070SD over SSD1963.

Regards,

Alan

Hello Alan,

Disappointingly Coldtears are not the best at customer support or service, so I wouldn't hold your breath waiting for them!

I have both CPLD and SSD1963 5" displays, and neither of them has a font ic, my font ic is soldered onto the TFT shield.

The point about performance is two-fold. With a DUE and CTE TFT shield, performance is pretty impressive drawing from either SD card or font ic. The deciding factor whether to go for CPLD or SSD1963 depends on how many unique screens you envisage your sketch to have. If you will have less than 8 screens, then the CPLD display can be used to display them instantly with no delay using the internal buffer memory. This is particularly beneficial on a slow device like the Mega. Other than that, there is not really much difference between CPLD or SSD1963.

Hope this helps.

Regards,

Graham

Graham,

Thanks. That helped. I ordered a 7" CPLD TFT today from Coldtears. I did more reading tonight and found tools to covert fonts and icons to .c files. What are the advantages or disadvantages of loading fonts and icons as .c files versus loading them from Font IC?

Another question aside from UTFT is that if the onboard power supply(powered by USB) is sufficient for 7" TFT? What I heard is not. I have an external 9v power supply for DUE, does that work?

Thanks again!

Alan