News:

Let's find out together what makes a PIC Tick!

Main Menu

www.picgraphic.com

Started by trastikata, Nov 12, 2024, 10:44 PM

Previous topic - Next topic

trastikata

Hello all,

check this new site www.picgraphic.com  - some useful tools and libraries.

- Graphic screen libraries with many options and tools, with lots of examples.

- Complete overhaul of the FAT32, now full support for 8-bit and 16b PICs, with some new commands

- Some other useful things

Hope it would be of help

=================================== UPDATE - Sep 13, 2026 - ===================================

TFT & EPD Graphic Library 2 has been updated to v2.04

=================================== UPDATE - Sep 10, 2026 - ===================================

I'm pleased to announce that TFT Graphic Library 2 has been updated to v2.03 — and with this release, it's now called TFT & EPD Graphic Library 2!

Here are the highlights of what's changed:

  • Hardware support — Added hardware SPI support for newer PIC18-Q/K MCUs, which use a different hardware register set than earlier parts.

  • Performance — Speed optimizations in several places; touch now use fixed-point Q16.16 math instead of floating point.

  • EPD support — E-paper displays work quite differently from TFTs, so if you're new to EPDs, I'd strongly recommend reading through all the posted documentation before diving in.

  • SD Card — significant rework:
    • Fixed a major bug in FAT_TraverseClusters() that could corrupt a file when it was closed and reopened
    • Fat.inc now supports disk partitioning and partition addressing
    • File_Init() now correctly detects a missing card and returns an error within 2–3 seconds, instead of hanging for minutes
    • Added a number of new commands

  • 5. Shapes — Added a few new shape-drawing functions.

As always, I test as much as time allows, but like any hobby project, bugs are possible. If you find or suspect an anomaly, let me know here. I have a display on hand for every model I've posted support for, so I can test against real hardware — I just can't promise any particular timeframe.

Best regards,
D

david

What an incredible piece of work, both in technical content and overall presentation.  A great salute to Les's compiler also.
Take a bow.

David

Maxi

You are wonderful trastikata

top204

That is beautiful!

I cannot think of any other words to state how wonderful that it. :-)

Best regards
Les

Dompie

Wow, that is a great piece of work and with very extensive documentation (and that is a lot of work).
AWESOME!!!

Johan

JonW

Nice work buddy, that must have taken you a looong time!
Ill have to give it a go now

midali

Wow...Amazing !

John Lawton

Wow, a fantastic resource, thank you for putting it all together. It looks like I'll have to explore graphic displays now you've done the hard work!

John
-----------------------------------------------------------------------------------------
Amicus 8 and 16A/16B dev boards
Especially created for Positron development
https://www.easy-driver.co.uk/Amicus

diebobo

Looks awesome !

pjdenyer

Had a llok at this last night, what a job you have done, great

charliecoutas

Amazing, very good work.

magic_gun

only one word " AMAZING " .. specless

Oskar-svr

Very interesting friend and you can see the effort and time you have invested to achieve this, congratulations, you are incredible, greetings

atomix

You are very talented! Excellent job!

SCV

Great work and a big thank you for sharing with the community.

Tim.

Wimax

It's a great work, simply amazing !

normnet

Awesome!  What size SD cards are supported?  Have you considered developing the 4 bit parallel SD card interface for speed?  I had trouble porting the CRC calculation in C to basic.

trastikata

#17
Quote from: normnet on Nov 16, 2024, 01:54 PMAwesome!  What size SD cards are supported?  Have you considered developing the 4 bit parallel SD card interface for speed?  I had trouble porting the CRC calculation in C to basic. 

Hello normet,

theoretical maximum card size is 2TB (2^32) sectors. I've tested it with up to 64GB only. I think there might a problem with small 128MB cards and FAT32 (Edit: I forgot I fixed that) but there are many combinations I still have to test and try.

From a hardware standpoint I don't see how a 4-bit SQI interface can be more efficiently applied on a PIC than the HW SPI? I think calculations show that a software based 4-bit mode solution will always be slower than HW SPI mode for the same MCU. If you have any ideas how to efficiently apply it, I am up for trying it.

Unlike the SD mode, in SPI mode the CRC is only required at the beginning for CMD8, after that you send a dummy CRC.

I think the benefits of the SD mode can be realized only with  a specialized hardware or FPGA with HW SQI and CRC.

normnet

Quote from: trastikata on Nov 16, 2024, 02:16 PMHello normet,

theoretical maximum card size is 2TB (2^32) sectors. I've tested it with up to 64GB only. I think there might a problem with small 128MB cards and FAT32 (Edit: I forgot I fixed that) but there are many combinations I still have to test and try.

From a hardware standpoint I don't see how a 4-bit SQI interface can be more efficiently applied on a PIC than the HW SPI? I think calculations show that a software based 4-bit mode solution will always be slower than HW SPI mode for the same MCU. If you have any ideas how to efficiently apply it, I am up for trying it.

Unlike the SD mode, in SPI mode the CRC is only required at the beginning for CMD8, after that you send a dummy CRC.

I think the benefits of the SD mode can be realized only with  a specialized hardware or FPGA with HW SQI and CRC.

The 4 bit mode was just something I was going to test.  Have you by chance tried a 200Mhz dsPIC33CK?  More speed for quicker screen loads. 

Great contribution!

trastikata

Quote from: normnet on Nov 16, 2024, 05:49 PMHave you by chance tried a 200Mhz dsPIC33CK?  More speed for quicker screen loads. 

Check at the end of this page: https://www.picgraphic.com/Howtostart1.html