JumperT16Doom icon indicating copy to clipboard operation
JumperT16Doom copied to clipboard

Jumper T16 display exhibits extreme vertical jitter only when running T16Doom

Open jclecak opened this issue 3 years ago • 13 comments

I'm seeing extreme display jitter on the vertical axis The display is stable when running OpenTX, however when running T16Doom the image shakes up and down wildly any ideas? IMG_1234

jclecak avatar Dec 16 '21 23:12 jclecak

hmmmm do you have a newer radio than me

rocketstrong600 avatar Dec 21 '21 05:12 rocketstrong600

because the display may have changed

rocketstrong600 avatar Dec 21 '21 05:12 rocketstrong600

This problem occurs on Jumper T16 S/N: PHO18764 Please let me know if you'd like me to take it apart and see if I can find identifying information on the display, or anything else for that matter.

jclecak avatar Dec 21 '21 16:12 jclecak

can someone please tell me which display this is currently configured for and/or where this is done in the code? I found the part where the display resolution is configured but have not located a display driver yet. I would love to get this working properly on my T16. Any tips would be greatly appreciated, please and thank you.

jclecak avatar Dec 22 '21 19:12 jclecak

now looking at ltdc.c, wondering if perhaps I need to adjust GPIO_SPEED_FREQ_LOW or HAL_Delay values. Rocketstrong, did you adjust any of these values? or can you offer any shot in the dark suggestions of changes I might try for my display?

jclecak avatar Dec 22 '21 19:12 jclecak

...now wondering if my display is a different resolution than the author's and if this could be the cause of the jittering. I also suspect that the following parameters may be relevant in sorting this out. I searched for hltdc.init.VerticalSync and didn't immediately find anything useful. Can anyone point me in the right direction, please?

hltdc.Init.HorizontalSync = 2; hltdc.Init.VerticalSync = 10; hltdc.Init.AccumulatedHBP = 42; hltdc.Init.AccumulatedVBP = 12; hltdc.Init.AccumulatedActiveW = 522; hltdc.Init.AccumulatedActiveH = 284; hltdc.Init.TotalWidth = 525; hltdc.Init.TotalHeigh = 286;

jclecak avatar Dec 22 '21 21:12 jclecak

Still thinking about this here. I'm wondering if this could somehow be due to the "bad connectors" problems that the t16 is known for. However, since there is no video problem on my unit under OpenTX, I don't see how that could be related. That leads me to the question, if there are different types of displays in the T16, does OpenTX detect and configure for the type of display at runtime? Trying to come up with a reason why this Doom build would exhibit problems on my radio while OpenTX does not. If it's a configuration issue, I'd like to patch the Doom build so it "just works" on any T16 like OpenTX. I have little hope of doing this without a little direction from someone more familiar with the codebase. Little help, anyone?

jclecak avatar Dec 22 '21 21:12 jclecak

there are pins used to tell the revision number

rocketstrong600 avatar Dec 24 '21 11:12 rocketstrong600

the LCD code is in ltdc.c

rocketstrong600 avatar Dec 24 '21 11:12 rocketstrong600

looking through the opentx code the timing does not change for the t16

rocketstrong600 avatar Dec 24 '21 11:12 rocketstrong600

the pixel clock could be two high there's lots of poisible issues. I will look at the opentx code again.

rocketstrong600 avatar Dec 24 '21 11:12 rocketstrong600

OK i made changed the LCD Timing to better match OPENTX code still works on my radio with the new timing. i will close the issue if you test it and it works.

rocketstrong600 avatar Dec 24 '21 12:12 rocketstrong600

I just tried the 0.1.2 build and I don't see any improvement, or any visible change for that matter. Your efforts are definitely appreciated, though - thank you very much! I do wonder if anyone else is experiencing this problem. Let me know if there's anything I can do to help, thanks.

jclecak avatar Dec 25 '21 07:12 jclecak