I gave up .... after 3 days of trying to get the monkey out of the hat with all my knowledge
Until now, I was very happy to use a VM816C50A evaluation board with TFT IPS 5" 800x480. All worked fine...animation, images, all stored in flash. All assets created with old EAB v2.1.0. Perfect with ESP32 and Teensy 4.0 boards.
3 days ago I got a Riverdi RVT70HSBNWC00-B, 7.0" IPS 1024x600 with BT817.
So, I update my library to work with new BT817/8 (I sped up thanks to Rudolph's library. Thanks Rudolph! I'm old school. I use the basic Arduino IDE, No VS IDE, No PlatformIO).
After reading this thread, I initialize the registers of BT817 board in the library with the Riverdi datasheet:
REG_HSIZE 1024
REG_VSIZE 600
REG_HCYCLE 1344
REG_HOFFSET 160
REG_HSYNC0 0
REG_HSYNC1 70
REG_VCYCLE 635
REG_VOFFSET 23
REG_VSYNC0 0
REG_VSYNC1 10
REG_PCLK 1
REG_SWIZZLE 0
REG_PCLK_POL 1
REG_CSPREAD 0
REG_DITHER 0
REG_PCLK_FREQ 0xD12 // 51 MHz
REG_PCLK_2X 0
See attached Riverdi TFT RGB timing characteristics.
No SPI communication problems with ESP32 and Teensy 4.0 cards.
The BT817 responds well. Problem-free initialization.
Set Flash mode in full speed OK.
set REG_FREQUENCY = 72MHz.
I directly set REG_PCLK_FREQ as suggest here instead of use cmd_pclkfreq. The data read was the same as the set.
The problems start now:
***** with REG_PCLK_FREQ =
0xD12 (51 MHz) (Riverdi setting) ********
1. Primitives and Widgets work correctly...OK
2. cmd_testcard() show the testcard graphic but with flickering
3. Images and animations from Flash....NOTHING (when try image I see white screen instead with animation black screen)
***** with REG_PCLK_FREQ =
0x451 (30 MHz) ********
1. Primitives and Widgets work correctly...OK
2. cmd_testcard() show the testcard graphic but with flickering
3. Images and animations from Flash...I can see single small images, if more then two / three, it makes a mess up with flickering, same for the animation. Only small animation (size 150x150 px). otherwise it make a mess up.
***** with REG_PCLK_FREQ =
0x883 (16 MHz)
This one is the least worst ********
1. Primitives and Widgets work correctly... but with flickering
2. cmd_testcard() show the testcard graphic but with flickering
3. Images and animations from Flash....same as 0x451 (30 MHz) but I can distinguish something with wrong colors.
***** with REG_PCLK_FREQ =
0x891 (54 MHz) ********
1. Primitives and Widgets work correctly...OK
2. cmd_testcard() show the testcard graphic but with flickering
3. Images and animations from Flash....I can see small images sometimes but animation nothing, only many horizontal lines moving downwards
***** with REG_PCLK_FREQ =
0x891 (60 MHz) default setting ********
1. Primitives and Widgets work correctly...OK
2. cmd_testcard() show the testcard graphic but with flickering
3. Images and animations from Flash....white screen with flickering
***** with REG_PCLK_FREQ =
0x8C1 (72 MHz) default setting ********
1. Primitives and Widgets work correctly...OK
2. cmd_testcard() show the testcard graphic but with flickering
3. Images and animations from Flash....white screen with flickering
I don't know what other tests I can do anymore