LCD timings with Waveshare 5.5 AMOLED and XU4Q

4d617474
Posts: 31
Joined: Fri May 24, 2019 4:36 am
languages_spoken: english
ODROIDs: XU4Q
Has thanked: 1 time
Been thanked: 2 times
Contact:

LCD timings with Waveshare 5.5 AMOLED and XU4Q

Unread post by 4d617474 » Fri May 24, 2019 4:43 am

Hello,
I am using XU4Q with ubuntu image from your repo.
It works fine, connected to TV there is no issue. I have ordered the screen as above, this one:
https://www.waveshare.com/w/upload/b/be ... ual_EN.pdf
https://www.waveshare.com/wiki/5.5inch_HDMI_AMOLED

My issue is that the provide only timings to set on Raspbian under config script of Raspberry....
I tried setting different options in boot.init, I might test out the last one that is 1920x1080 at 60Hz, but the other three either give no image or yield image but with artifacts.
There is a connection, but I don't know how to provide the correct timings:

"hdmi_timings=1080 1 26 4 50 1920 1 8 2 6 0 0 0 60 0 135580000 3"

They seem to go in this exact order:
"#h_active_pixels = 400
#h_sync_polarity = 0
#h_front_porch = 8
#h_sync_pulse = 9
#h_back_porch = 90
# * = is 507 pixels per line
#v_active_lines = 240
#v_sync_polarity = 0
#v_front_porch = 2
#v_sync_pulse = 20
#v_back_porch = 10
# * = is 272 lines per frame
#v_sync_offset_a = 0
#v_sync_offset_b = 0
#pixel_rep = 0
#frame_rate = 60
#interlaces = 0
#pixel_freq = 8274240
#aspect_ratio = 6"

with of course different values... I am however not sure, but it seems so?
I have never set timings before. My idea was to go where the script points at and manually edit the corresponding file, but I dont have linux on PC at the moment.

Anyway, the question is how to configure this display so it works properly. The touch should do fine, the thing is these timings...
There is image, but it isnt properly sent onto the screen. I havent had a Raspberry (aka found your device better and wanted to lay out more cash and have something better with usb 3.0...),
but they seem to allow custom timings in config file. Is this possible with XU4Q?

I really don't want to "send back" (like it was possible lel) that screen back to China.
It's really nice, this is the only thing that the most likely prevents me from getting what I want.

joy
Posts: 902
Joined: Fri Oct 02, 2015 1:44 pm
languages_spoken: english
ODROIDs: ODROID-C1+, XU4, X
Has thanked: 15 times
Been thanked: 51 times
Contact:

Re: LCD timings with Waveshare 5.5 AMOLED and XU4Q

Unread post by joy » Fri May 24, 2019 10:16 am

Hi 4d617474,

The waveshare monitor's native resolution is 1080x1920.
I think that's why it doesn't work with your monitor even as 1920x1080.
And on hdmi phy driver of xu4 latest kernel, there is no 135.58MHz pixel clock.

I think we can try custom edid approach through drm helper. ;)

[ step 1 ]
I will make a custom edid binary for your monitor by adjust timings a bit to fit one of available pixel clock list.

Code: Select all

"hdmi_timings=1080 1 26 4 50 1920 1 8 2 6 0 0 0 60 0 135580000 3"
[ step 2 ]
It's available to load the edid using this method.
https://wiki.odroid.com/odroid-xu4/appl ... ustom_edid
If it works normally, you will have 1080x1920 portrait display in this step.

[ step 3 ]
Then, you can get landscape display by rotating display on lightdm using this method.
viewtopic.php?f=136&t=34097&p=248459&hilit=ccw#p248459

I will be available to work it early next week, so can you wait for several days?
Once I'm done, I will share the edid with you and ask you to test it.

4d617474
Posts: 31
Joined: Fri May 24, 2019 4:36 am
languages_spoken: english
ODROIDs: XU4Q
Has thanked: 1 time
Been thanked: 2 times
Contact:

Re: LCD timings with Waveshare 5.5 AMOLED and XU4Q

Unread post by 4d617474 » Fri May 24, 2019 5:55 pm

Yes, of course.
Thank you very much, this is the first time of mine with any ARM computer and I didn't realize that there could be such issues.
What you said makes some sense. I have never operated on timings before and looking at that code...
it turns out to be the issue like you said? I think that I agree with you.

If that isn't a problem to you, I will wait and be very happy to use your solution.
Thank you very much. I actually thought of something that you want to do, but I didn't know that EID is a binary file:/
I can assume that they must use their own compiler/encoding template and... I dont even have a clue.

joy
Posts: 902
Joined: Fri Oct 02, 2015 1:44 pm
languages_spoken: english
ODROIDs: ODROID-C1+, XU4, X
Has thanked: 15 times
Been thanked: 51 times
Contact:

Re: LCD timings with Waveshare 5.5 AMOLED and XU4Q

Unread post by joy » Mon May 27, 2019 4:08 pm

Hi 4d617474,

I made a test custom EDID binary for you.

The original hdmi timing of your waveshare monitor is...

Code: Select all

Detailed mode: Clock 135.580 MHz, 281 mm x 500 mm
               1080 1106 1110 1160 hborder 0
               1920 1928 1930 1936 vborder 0
               +hsync +vsync 
and I've adjusted some parts of timing to use pixel clock 146.250 MHz that is one of available pixel clocks from exynos5422.

Code: Select all

Detailed mode: Clock 146.250 MHz, 281 mm x 500 mm
               1080 1106 1110 1180 hborder 0
               1920 1928 1930 2060 vborder 0
               +hsync +vsync 
Serial number: Linux
Monitor ranges (GTF): 59-61Hz V, 122-124kHz H, max dotclock 150MHz
Please find the attachment, "1080x1920_60_waveshare.bin.zip",
and follow this instructions.
( related wiki page : https://wiki.odroid.com/odroid-xu4/appl ... ustom_edid )

1. unzip the attachment

2. copy "1080x1920_60_waveshare.bin" into " /lib/firmware/ " of your XU4 card

Code: Select all

$ ls /lib/firmware/1080x1920_waveshare.bin 
/lib/firmware/1080x1920_waveshare.bin
3. modify /media/boot/boot.ini

Code: Select all

.......
.......
# -----------------------------------------------
# 480x800 without monitor data using generic information
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/480x800.bin"
# -----------------------------------------------
# 480x320 without monitor data using generic information
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/480x320.bin"

### Add this line
setenv videoconfig "drm_kms_helper.edid_firmware=1080x1920_waveshare.bin

### Change HPD value to "false"
#------------------------------------------------------------------------------
#
# HDMI Hot Plug detection
#
#------------------------------------------------------------------------------
# setenv HPD "true"
setenv HPD "false"
4. system reboot

Code: Select all

$ sudo reboot
After reboot please check if display is shown on your waveshare monitor.

I don't have a 1080x1920 monitor, so with my monitors, I couldn't test this custom edid.
So could you check it with your monitor, then share test result?
If it works normally, you will have portrait display of ( width 1080 ) x ( height 1920 ).
Attachments
1080x1920_60_waveshare.bin.zip
(301 Bytes) Downloaded 40 times

4d617474
Posts: 31
Joined: Fri May 24, 2019 4:36 am
languages_spoken: english
ODROIDs: XU4Q
Has thanked: 1 time
Been thanked: 2 times
Contact:

Re: LCD timings with Waveshare 5.5 AMOLED and XU4Q

Unread post by 4d617474 » Wed May 29, 2019 1:18 am

Okay, I am going to give it a try.
I am not sure whether I can access Ubuntu files through Windows Linux Subsystem, but if not
I will try launching some distro live and replacing these.

Update: Doesn't work.
Update2: Fixed the command, but doesn't work.

Well, you said to turn hotplug to false, but I want to test it on true.
Now the filesystem wont let me change permissions over the boot for some bizzare reason.
I managed to change those in rootfs....

Update3:
I have installed Ubuntu again, put the .bin file into the firmware library, copied its name and provided the path in ini file.
I tried both with hotplug and without it. The only thing I haven't done is "rebooting", how?
How am I supposed to reboot a device that has timings not used by the most of screens? I have done all of that through the USB adapter.

The screen blinks once (not the image, just the light) and doesn't show anything.

joy
Posts: 902
Joined: Fri Oct 02, 2015 1:44 pm
languages_spoken: english
ODROIDs: ODROID-C1+, XU4, X
Has thanked: 15 times
Been thanked: 51 times
Contact:

Re: LCD timings with Waveshare 5.5 AMOLED and XU4Q

Unread post by joy » Wed May 29, 2019 8:48 am

4d617474 wrote:
Wed May 29, 2019 1:18 am
I tried both with hotplug and without it. The only thing I haven't done is "rebooting", how?
You can access XU4 using ssh.
Then, use sudo reboot command on ssh.
4d617474 wrote:
Wed May 29, 2019 1:18 am
The screen blinks once (not the image, just the light) and doesn't show anything.
It looks it doesn't work with your monitor.
Can you share these information?

1. boot.ini file
2. dmesg log
3. kernel information

Code: Select all

root@odroid:~# uname -a
Linux odroid 4.14.120-160 #1 SMP PREEMPT Fri May 17 01:18:14 -03 2019 armv7l armv7l armv7l GNU/Linux
If your version is not the latest one as mine, please update all packages first.

Code: Select all

$ sudo apt-get update -y && sudo apt-get upgrade -y && sudo apt-get dist-upgrade -y
$ sudo reboot

joy
Posts: 902
Joined: Fri Oct 02, 2015 1:44 pm
languages_spoken: english
ODROIDs: ODROID-C1+, XU4, X
Has thanked: 15 times
Been thanked: 51 times
Contact:

Re: LCD timings with Waveshare 5.5 AMOLED and XU4Q

Unread post by joy » Thu May 30, 2019 5:57 pm

Hi 4d617474,

To check various pixel clocks, I made three more edid test files.
So can you check them?

1. 1080x1920_waveshare_125590.bin
2. 1080x1920_waveshare_148500.bin
3. 1080x1920_waveshare.bin


Test instruction is same as before but just you need to modify boot.ini for each case.

Copy them into /lib/firmware/* first.
And replace the following line for each test case.

1. 1080x1920_waveshare_125590.bin

Code: Select all

setenv videoconfig "drm_kms_helper.edid_firmware=1080x1920_waveshare_125590.bin
2. 1080x1920_waveshare_148500.bin

Code: Select all

setenv videoconfig "drm_kms_helper.edid_firmware=1080x1920_waveshare_148500.bin
3. 1080x1920_waveshare.bin

Code: Select all

setenv videoconfig "drm_kms_helper.edid_firmware=1080x1920_waveshare.bin
Please check them and if it doesn't work, share debug information as following.

For more information, please share whole booting log (using dmesg), too.

1. boot.ini file
2. dmesg log
3. kernel information
Attachments
1080x1920_waveshare.tar.gz
(351 Bytes) Downloaded 36 times
These users thanked the author joy for the post:
4d617474 (Sat Jun 29, 2019 2:10 am)

4d617474
Posts: 31
Joined: Fri May 24, 2019 4:36 am
languages_spoken: english
ODROIDs: XU4Q
Has thanked: 1 time
Been thanked: 2 times
Contact:

Re: LCD timings with Waveshare 5.5 AMOLED and XU4Q

Unread post by 4d617474 » Fri May 31, 2019 10:58 pm

Yes, thank you.
I didn't mean to ignore this thread, but I have been busy and have been awaiting for a few packages.
I tried understanding that SSH thing, and I believe that I would need first to connect my odroid to the local WIFI network and then use net scanner on virtual linux to pick up its IP address.
Perhaps then I could install some SSH client and reboot it through the network. I simply didn't have a keyboard and a mouse at hand (kind of have it by now).

I will try out those new files and see whether it helps. I also found some sort of application for making custom EDID, but am not sure yet whether I could use it.
I will check those files right now.

OFFTOPIC/EDIT:
Sorry again. I have just spent 3-4 hours wondering what the fuck is wrong with UBUNTU, because their team is obviously not smart enough to provide correct dependancies and install scripts for XRDP?
I had to install 19.02 and reinstall the packages for the 5-th time, because 18.04.02 (18.04 should but isnt available, BECAUSE WHY WOULD SOMEBODY PROVIDE PREVIOUS VERSIONS IN THEIR OWN OFFICIAL REPOS HUH? THAT'S SO DUMB TO DO THAT HUH?)
and the stupid enhanced session FINALLY works, so I can now not reboot my stupid PC everytime I want to change anything under EXT4 filesystem, because Microsoft for X years hasn't been "kind" (or smart?) enough to provide any sort of official or unofficial support for EXT4 filesystems just for purpose of reading or editting small files...

Damn it... Maybe you will understand what took me so long. This is just a fraction of my OS not operating as I desired it to.
I of course referenced to this manual https://github.com/Microsoft/linux-vm-t ... ng:-Ubuntu, because I couldn't find any official manuals out there.
If there is an already pre-configured version meant for windows store (that I can't use because I have WS19) then why isn't it available for EVERYONE, so instead of learning about that XRDP and what dependancies it could need they could just ... install a preconfigured iso that already works?

I will attach my memory card and use enhanced session for reading files from my WS19 into EXT4 on that card and will see whether it works now.
Sorry that it took me so long, but it's just painful...

EDIT2:
Now the Windows can't see the Ubuntu root partition of odroid..
Kill me...

4d617474
Posts: 31
Joined: Fri May 24, 2019 4:36 am
languages_spoken: english
ODROIDs: XU4Q
Has thanked: 1 time
Been thanked: 2 times
Contact:

Re: LCD timings with Waveshare 5.5 AMOLED and XU4Q

Unread post by 4d617474 » Sun Jun 02, 2019 12:42 am

I have configured SSH and tried all of the setups that you provided.
(Thank you for mentioning it, it was VERY useful, because using shitty live CDs was a painful task)

1 - no image
2 - artifacts all over
3 - artifacts all over

default - some sort of quite "good" image, but with artifacts

The logs are below:
Boot.ini - https://pastebin.com/J4dBpQQ0
Kernel info - ""Linux odroid 3.10.105-141 #1 SMP PREEMPT Thu Jul 27 04:03:10 UTC 2017 armv7l armv7l armv7l GNU/Linux""
it's Ubuntu 16.04 from HK website.

Dmesg - https://pastebin.com/7pL356jV

Sorry that it took me so long, but from now on I can do things in just minutes.
I had to setup filezilla, ssh, ubuntu with XRDP, set up permissions, look up nmap, look up all of that stuff. I have used half of it for the first time...

PS: I will try checking what exact "default" configuration gives me the best quality.
Maybe by looking up that file (is this possible? no?) one could see what the clocks etc. are?
It would then take only changing the default resolution, I guess?


PS: Somebody pointed out that I accidently downloaded the old kernel version of Ubuntu (all are from 2 years ago...)
I will try changing the OS and checking the resolutions again (Honestly, I doubt that it will help anything, but who knows)

4d617474
Posts: 31
Joined: Fri May 24, 2019 4:36 am
languages_spoken: english
ODROIDs: XU4Q
Has thanked: 1 time
Been thanked: 2 times
Contact:

Re: LCD timings with Waveshare 5.5 AMOLED and XU4Q

Unread post by 4d617474 » Sun Jun 02, 2019 5:56 pm

Android - android-4.4.4-alpha-6.6-emmc_installer-odroidxu4-20181105

#test
setenv fb_x_res "1080"
setenv fb_y_res "1920"
setenv hdmi_phy_res "1080p60hz"

Kind of works, the image appears vertically.
It has artifacts, the screen "seems" an android screen, but it's still messed up.

joy
Posts: 902
Joined: Fri Oct 02, 2015 1:44 pm
languages_spoken: english
ODROIDs: ODROID-C1+, XU4, X
Has thanked: 15 times
Been thanked: 51 times
Contact:

Re: LCD timings with Waveshare 5.5 AMOLED and XU4Q

Unread post by joy » Mon Jun 03, 2019 11:01 am

4d617474 wrote:
Sun Jun 02, 2019 12:42 am
1 - no image
2 - artifacts all over
3 - artifacts all over

default - some sort of quite "good" image, but with artifacts
Hi 4d617474,
Thank you for sharing the detailed information.
I don't understand the exact meaning artifacts all over. Sorry. :(
Could you take pictures of your monitor and share it with me?
4d617474 wrote:
Sun Jun 02, 2019 12:42 am
The logs are below:
Boot.ini - https://pastebin.com/J4dBpQQ0
Kernel info - ""Linux odroid 3.10.105-141 #1 SMP PREEMPT Thu Jul 27 04:03:10 UTC 2017 armv7l armv7l armv7l GNU/Linux""
it's Ubuntu 16.04 from HK website.

Dmesg - https://pastebin.com/7pL356jV
And could you try the latest version of Ubuntu 18.04 image?
https://wiki.odroid.com/odroid-xu4/os_i ... 1_20181203
The test image that you're using is very old one. :(

4d617474
Posts: 31
Joined: Fri May 24, 2019 4:36 am
languages_spoken: english
ODROIDs: XU4Q
Has thanked: 1 time
Been thanked: 2 times
Contact:

Re: LCD timings with Waveshare 5.5 AMOLED and XU4Q

Unread post by 4d617474 » Tue Jun 04, 2019 12:57 pm

Sure. I will try taking pictures.
I have tried Ubuntu "ubuntu-18.04.1-4.14-mate-odroid-xu4-20181203.img"
The kernel is not mounting my partition and gets stuck...

I am not a kernel specialist tbh. Android however booted for me.
An artifact is commonly used in software to describe a bugged rendering/display effect:
https://en.wikipedia.org/wiki/Digital_artifact

joy
Posts: 902
Joined: Fri Oct 02, 2015 1:44 pm
languages_spoken: english
ODROIDs: ODROID-C1+, XU4, X
Has thanked: 15 times
Been thanked: 51 times
Contact:

Re: LCD timings with Waveshare 5.5 AMOLED and XU4Q

Unread post by joy » Tue Jun 04, 2019 5:31 pm

4d617474 wrote:
Tue Jun 04, 2019 12:57 pm
I am not a kernel specialist tbh. Android however booted for me.
Hi @4d617474,

The HDMI timing configuration, "1080p60hz" of Android is same with the following videoconfig from Ubuntu image.
Could you try this video configuration in boot.ini?
https://github.com/mdrjr/5422_bootini/b ... ot.ini#L36

Code: Select all

# 1920x1080 (1080P) without monitor data using generic information (1080p-noedid)
### uncomment only this line and block the other videoconfig-related lines
setenv videoconfig "drm_kms_helper.edid_firmware=edid/1920x1080.bin"
4d617474 wrote:
Tue Jun 04, 2019 12:57 pm
Sure. I will try taking pictures.

An artifact is commonly used in software to describe a bugged rendering/display effect:
https://en.wikipedia.org/wiki/Digital_artifact
Thanks for sharing the link! Now I got the meaning roughly. ;)
But if you're available, please share some pictures. I will be very helpful to figure out current issue.
4d617474 wrote:
Tue Jun 04, 2019 12:57 pm
I have tried Ubuntu "ubuntu-18.04.1-4.14-mate-odroid-xu4-20181203.img"
The kernel is not mounting my partition and gets stuck...
Do you mean XU4 doesn't boot up with Ubuntu 18.04 image card?
or during booting, it suddenly stopped?

Please check md5sum value of the image file that you've downloaded,
and could you try to write the image on your card again?
https://wiki.odroid.com/troubleshooting ... h#flashing

4d617474
Posts: 31
Joined: Fri May 24, 2019 4:36 am
languages_spoken: english
ODROIDs: XU4Q
Has thanked: 1 time
Been thanked: 2 times
Contact:

Re: LCD timings with Waveshare 5.5 AMOLED and XU4Q

Unread post by 4d617474 » Thu Jun 06, 2019 6:35 am

Yes. I believe that I tried all four of those.
I will try your EDID on a newer kernel (I doubt that it will help, but well...)

This time I installed my Ubuntu properly and my WiFi also works...

4d617474
Posts: 31
Joined: Fri May 24, 2019 4:36 am
languages_spoken: english
ODROIDs: XU4Q
Has thanked: 1 time
Been thanked: 2 times
Contact:

Re: LCD timings with Waveshare 5.5 AMOLED and XU4Q

Unread post by 4d617474 » Thu Jun 06, 2019 7:28 am

AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
it works!

"# Custom 1
# setenv videoconfig "drm_kms_helper.edid_firmware=1080x1920_waveshare_125590.bin""

There is only one issue!
The screen is...
Uhm, lmao...
It might be ubuntu's issue. It isn't rotated as the OS isn't adapted to the screen.
I will give you a picture, it's hard to describe, look.

http://i66.tinypic.com/v591r5.jpg

It's like the OS itself wasn't rotated lmao.

PS: a funny fact:
My TV works better with "# setenv videoconfig "drm_kms_helper.edid_firmware=1080x1920_waveshare.bin"
Lol. The screen itself doesn't work with the other two EDIDs (other than setenv videoconfig "drm_kms_helper.edid_firmware=1080x1920_waveshare_125590.bin) , they all give incorrectly rendered image.

It's "funny" because my TV shows the image horizontally (Ubuntu is set to "normal" in display"), but on the screen it appears horizontally but vertically as shown in that picture.

PS2:

So, yeah. I can't "open device" with xrandr.
https://ubuntuforums.org/showthread.php?t=1947733
Perhaps this could help me?

PS3:

I just realized. Isn't the Ubuntu's screen normally green?
Lol. I think that the 125590 EDID is correct but the colours might be messed up.


Update:
I just opened your bin file and it seems easy? lol
I might try experimenting with that EDID on my own too, everything got loaded.
The clock you set is 125.59 in this one. Honestly. I never tried that before, but I will look into specification of that screen and try finding some things out maybe.

It is possible that I will also rescue one of my old screens;D
Using this EDID tool, since you gave me some idea about how it works.

joy
Posts: 902
Joined: Fri Oct 02, 2015 1:44 pm
languages_spoken: english
ODROIDs: ODROID-C1+, XU4, X
Has thanked: 15 times
Been thanked: 51 times
Contact:

Re: LCD timings with Waveshare 5.5 AMOLED and XU4Q

Unread post by joy » Fri Jun 07, 2019 3:29 pm

Hi~ @4d617474,
4d617474 wrote:
Thu Jun 06, 2019 7:28 am
PS2:

So, yeah. I can't "open device" with xrandr.
https://ubuntuforums.org/showthread.php?t=1947733
Perhaps this could help me?
You'd better to use display console using like "Mate terminal".
But, it must be very annoying because now you only have rotated screen. :(
Well, let's look for another solution setting by init or x11 conf.
4d617474 wrote:
Thu Jun 06, 2019 7:28 am
PS3:

I just realized. Isn't the Ubuntu's screen normally green?
Lol. I think that the 125590 EDID is correct but the colours might be messed up.


Update:
I just opened your bin file and it seems easy? lol
I might try experimenting with that EDID on my own too, everything got loaded.
The clock you set is 125.59 in this one. Honestly. I never tried that before, but I will look into specification of that screen and try finding some things out maybe.

It is possible that I will also rescue one of my old screens;D
Using this EDID tool, since you gave me some idea about how it works.
Ubuntu screen background color is Green.
So you mean still you don't have a normal display with waveshare 5.5 MLOLED even using one of the test edid files, right?

I thought it would work normally with 1080x1920_waveshare_148500.bin file because you said you got rotated but normal display using 1080p60hz on Android.
The edid file is configured by same display timing.

To make sure, can you confirm it for me?
Just a bit confused. ;)
4d617474 wrote:
Thu Jun 06, 2019 7:28 am
PS: a funny fact:
My TV works better with "# setenv videoconfig "drm_kms_helper.edid_firmware=1080x1920_waveshare.bin"
Lol. The screen itself doesn't work with the other two EDIDs (other than setenv videoconfig "drm_kms_helper.edid_firmware=1080x1920_waveshare_125590.bin) , they all give incorrectly rendered image.


1. 1080x1920_waveshare.bin
- most similar pixel clock with the spec of your monitor

Code: Select all

Detailed mode: Clock 146.250 MHz, 281 mm x 500 mm
               1080 1106 1110 1180 hborder 0
               1920 1928 1930 2060 vborder 0
               +hsync +vsync 
2. 1080x1920_waveshare_125590.bin
- lower pixel clock case

Code: Select all

Detailed mode: Clock 125.590 MHz, 281 mm x 500 mm
               1080 1088 1092 1102 hborder 0
               1920 1926 1928 1932 vborder 0
               +hsync +vsync 
3. 1080x1920_waveshare_148500.bin
- same timing with Android 1080p60hz case

Code: Select all

Detailed mode: Clock 148.500 MHz, 281 mm x 500 mm
               1080 1084 1089 1125 hborder 0
               1920 1930 1942 2200 vborder 0
               +hsync +vsync 

4d617474
Posts: 31
Joined: Fri May 24, 2019 4:36 am
languages_spoken: english
ODROIDs: XU4Q
Has thanked: 1 time
Been thanked: 2 times
Contact:

Re: LCD timings with Waveshare 5.5 AMOLED and XU4Q

Unread post by 4d617474 » Sat Jun 08, 2019 3:44 am

It didn't work on android on default settings (1080p EDID, but with framebuffer rotated)
it appeared (possibly?) in the good direction, but the image was incorrect.

The timings that worked for me are 1080x1920_waveshare_125590.bin
with the issue that the image is pink/red and not green (like in the picture).

I will boot it up and check the boot.ini again, but im nearly 100% sure that it was 125590
the other ones didn't work, they appeared in the same direction I believe, but were incorrect, with artifacts etc.

To the TV. I meant that the TV worked with 125590 with just a little bit stretched image and a collapsed end part of the image window.
With the .bin it worked really great lol.

On the android however, when rotating the framebuffer, yeah?
I then used 1080p default EDID with frambuffer reversed AND my TV showed vertical image normally, but the waveshare screen still had artifacts.
it is possible that I could rotate screen on android perhaps and use your EDID, but then
I still have the pinkish colour instead of green, and I also dont really want to use Android but rather Ubuntu or distros alike...


Oh yeah, this might be important, yeah?
My TV with 125590 AND .bin was showing stretched vertical image
HOWEVER, with android rotated framebuffer it was showing vertical image but not stretched, rather utilizing like 1/3? of the screen.


Honestly, it's weird to me lol, this one above. Like... In your custom EDID option it should render 1080 pixels vertically and 1920 horizontally...
Perhaps my TV automatically stretches out the pixels... With that frambuffer rotated, it didn't do that... This is weird...
It likely detected 1080p EDID and what? Why did it display it properly horizontally (1080pixels I believe?...), but like... decreased the image size vertically so it fitted 1080 pixels vertically also (it wasnt cut as it was 1920 vertically but not filling into the screen, but rather scaled that 1920 down?)

That's weird.

joy
Posts: 902
Joined: Fri Oct 02, 2015 1:44 pm
languages_spoken: english
ODROIDs: ODROID-C1+, XU4, X
Has thanked: 15 times
Been thanked: 51 times
Contact:

Re: LCD timings with Waveshare 5.5 AMOLED and XU4Q

Unread post by joy » Tue Jun 11, 2019 4:31 pm

Hi @4d617474,
Really sorry for late response. :(

Based on the LCD's specification, its native resolution is width 1080 by height 1920.
https://www.waveshare.com/w/upload/b/be ... ual_EN.pdf
The guide targeting to Rpi board also describes its configuration is width 1080 by height 1920.
So I made the test binaries using 1080x1920.

I think that's the reason you got normal display when you tried 1080p60hz on Android with rotated framebuffer option.
And I guess the weird color issue with 1080x1920_wavesahre_122500.bin seems to be lower pixel clock.

Could you check the following two things?
I wanna check 148.5MHz pixel clock (higher one and same as Android 1080p60hz).
I've asked you to check it, but I couldn't find test results from you here.

1. 1920x1080p60hz with pixel clock 148.5MHz
I've asked you to check 1080p60hz on Ubuntu before.
Have you tried 1080p60hz (1920x1080p60hz) option on Ubuntu?
It's same timing as Android 1080p60hz.
Could you check it and share the result?
And if you get weird display again, please share the picture.
joy wrote: The HDMI timing configuration, "1080p60hz" of Android is same with the following videoconfig from Ubuntu image.
Could you try this video configuration in boot.ini?
https://github.com/mdrjr/5422_bootini/b ... ot.ini#L36

Code: Select all

# 1920x1080 (1080P) without monitor data using generic information (1080p-noedid)
### uncomment only this line and block the other videoconfig-related lines
setenv videoconfig "drm_kms_helper.edid_firmware=edid/1920x1080.bin"
Full boot.ini sample can be as following.

Code: Select all

ODROIDXU-UBOOT-CONFIG

# U-Boot Parameters
setenv initrd_high "0xffffffff"
setenv fdt_high "0xffffffff"

# Mac address configuration
setenv macaddr "00:1e:06:61:7a:39"

#------------------------------------------------------------------------------------------------------
# Basic Ubuntu Setup. Don't touch unless you know what you are doing.
# --------------------------------
setenv bootrootfs "console=tty1 console=ttySAC2,115200n8 root=UUID=e139ce78-9841-40fe-8823-96a304a09859 rootwait ro fsck.repair=yes net.ifnames=0"

# --- Screen Configuration for HDMI --- # 
# ---------------------------------------
# Uncomment only ONE line! Leave all commented for automatic selection.
# Uncomment only the setenv line!
# ---------------------------------------
# ODROID-VU forced resolution
# setenv videoconfig "video=HDMI-A-1:1280x800@60"
# -----------------------------------------------
# ODROID-VU forced EDID
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1280x800.bin"
# -----------------------------------------------
# 1920x1200 60hz without monitor data using generic information
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1920x1200_60hz.bin"
# -----------------------------------------------
# 1920x1200 30hz without monitor data using generic information
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1920x1200_30hz.bin"
# -----------------------------------------------
# 1920x1080 (1080P) with monitor provided EDID information. (1080p-edid)
# setenv videoconfig "video=HDMI-A-1:1920x1080@60"
# -----------------------------------------------
# 1920x1080 (1080P) without monitor data using generic information (1080p-noedid)
setenv videoconfig "drm_kms_helper.edid_firmware=edid/1920x1080.bin"
# -----------------------------------------------
# 1920x1080 50hz (1080P) with monitor provided EDID information. (1080p 50hz-edid)
# setenv videoconfig "video=HDMI-A-1:1920x1080@50"
# -----------------------------------------------
# 1920x1080 50hz (1080P) without monitor data using generic information (1080p 50hz-noedid)
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1920x1080_50hz.bin"
# -----------------------------------------------
# 1680x1050 without monitor data using generic information 
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1680x1050.bin"
# -----------------------------------------------
# 1600x1200 without monitor data using generic information 
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1600x1200.bin"
# -----------------------------------------------
# 1600x900 without monitor data using generic information 
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1600x900.bin"
# -----------------------------------------------
# 1440x900 with monitor provided EDID information.
# setenv videoconfig "video=HDMI-A-1:1440x900@60"
# -----------------------------------------------
# 1440x900 without monitor data using generic information 
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1440x900.bin"
# -----------------------------------------------
# 1366x768 without monitor data using generic information 
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1366x768.bin"
# -----------------------------------------------
# 1360x768 without monitor data using generic information 
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1360x768.bin"
# -----------------------------------------------
# 1280x1024 without monitor data using generic information
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1280x1024.bin"
# -----------------------------------------------
# 1280x720 (720P) with monitor provided EDID information. (720p-edid)
# setenv videoconfig "video=HDMI-A-1:1280x720@60"
# -----------------------------------------------
# 1280x720 (720P) without monitor data using generic information (720p-noedid)
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1280x720.bin"
# -----------------------------------------------
# 1024x768 without monitor data using generic information
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1024x768.bin"
# -----------------------------------------------
# 1024x600 without monitor data using generic information (ODROID VU7+)
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1024x600.bin"
# -----------------------------------------------
# 800x600 without monitor data using generic information 
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/800x600.bin"
# -----------------------------------------------
# 800x480 without monitor data using generic information (ODROID 7")
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/800x480.bin"
# -----------------------------------------------
# 720x576 without monitor data using generic information 
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/720x576.bin"
# -----------------------------------------------
# 720x480 without monitor data using generic information 
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/720x480.bin"
# -----------------------------------------------
# 640x480 without monitor data using generic information
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/640x480.bin"
# -----------------------------------------------
# 480x800 without monitor data using generic information
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/480x800.bin"
# -----------------------------------------------
# 480x320 without monitor data using generic information
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/480x320.bin"


# --- HDMI / DVI Mode Selection ---
# ------------------------------------------
# - HDMI Mode
setenv vout "hdmi"
# - DVI Mode (disables sound over HDMI as per DVI compat)
# setenv vout "dvi"


# --- HDMI CEC Configuration ---
# ------------------------------------------
setenv cecenable "false" # false or true
# set to true to enable HDMI CEC


# --- CPU Governor Setup ---
# Uncomment only one line. New governor is set after 90secs after boot.
# ------------------------------------------
# - Performance (Keep all the CPU's at Maximum frequency)
setenv governor "performance"
# ------------------------------------------
# - Ondemand
# setenv governor "ondemand"
# ------------------------------------------
# - Interactive (Pretty much just like ondemand with more possible customization via sysfs.)
# setenv governor "interactive"
# ------------------------------------------
# - Conservative (Like ondemand, but do the frequency transitions more slowly, great for battery powered applications)
# setenv governor "conservative"
# ------------------------------------------
# - Powersave (Keeps the CPU's to the lowest possible temps)
# setenv governor "powersave"

# Enable/Disable ODROID-VU7 Touchsreen
setenv disable_vu7 "false" # false


#------------------------------------------------------------------------------
#
# HDMI-PHY Parameter Control
#
#------------------------------------------------------------------------------
#------------------------------------------------------------------------------
#
# HDMI Hot Plug detection
#
#------------------------------------------------------------------------------
#
# Forces the HDMI subsystem to ignore the check if the cable is connected or 
# not.
# false : disable the detection and force it as connected.
# true : let cable, board and monitor decide the connection status.
# 
# default: true
# 
#------------------------------------------------------------------------------
setenv HPD "true"

#------------------------------------------------------------------------------
#
#  TMDS data amplitude control.
#
#------------------------------------------------------------------------------
#
#  1LSB corresponds to 20 mVdiff amplitude level.
#  tx_amp_lvl : 0 = 760 mVdiff(Min), 31 = 1380 mVdiff(Max)
#
#  Hardkernel default hdmi_tx_amp_lvl = 31(1380 mVdiff);
#------------------------------------------------------------------------------
setenv hdmi_tx_amp_lvl  "31"

#------------------------------------------------------------------------------
#
#  TMDS data amplitude fine control for each channel.
#
#------------------------------------------------------------------------------
#
#  1LSB corresponds to 20 mVdiff amplitude level.
#  tx_lvl : 0 = 0 mVdiff(Min), 3 = 60 mVdiff(Max)
#
#  Hardkernel default
#      hdmi_tx_lvl_ch0 = 3, hdmi_tx_lvl_ch1 = 3, hdmi_tx_lvl_ch2 = 3,
#------------------------------------------------------------------------------
setenv hdmi_tx_lvl_ch0      "3"
setenv hdmi_tx_lvl_ch1      "3"
setenv hdmi_tx_lvl_ch2      "3"

#------------------------------------------------------------------------------
#
#  TMDS data pre-emphasis level control.
#
#------------------------------------------------------------------------------
#
#  1LSB corresponds to -0.45dB emphasis level except for 1
#  tx_emp_lvl : 0 = 0 db(Min), 1 = -0.25 db, 2 = 0.7 db, 15 = -7.45 db(Max)
#
#  Hardkernel default hdmi_tx_emp_lvl = 6 (-2.50 db);
#------------------------------------------------------------------------------
setenv hdmi_tx_emp_lvl      "6"

#------------------------------------------------------------------------------
#
#  TMDS clock amplitude control.
#
#------------------------------------------------------------------------------
#
#  1LSB corresponds to 20 mVdiff amplitude level.
#  clk_amp_lvl : 0 = 790 mVdiff(Min), 31 = 1410 mVdiff(Max)
#
#  Hardkernel default hdmi_clk_amp_lvl = 31 (1410 mVdiff)
#------------------------------------------------------------------------------
setenv hdmi_clk_amp_lvl     "31"

#------------------------------------------------------------------------------
#
#  TMDS data source termination resistor control.
#
#------------------------------------------------------------------------------
#
#  tx_res :
#      0 = Source Termination OFF(Min), 1 = 200 ohm, 2 = 300 ohm, 3 = 120 ohm(Max)
#
#  Hardkernrel default hdmi_tx_res = 0 (Source Termination OFF)
#------------------------------------------------------------------------------
setenv hdmi_tx_res      "0"

#------------------------------------------------------------------------------

setenv hdmi_phy_control "hdmi_tx_amp_lvl=${hdmi_tx_amp_lvl} hdmi_tx_lvl_ch0=${hdmi_tx_lvl_ch0} hdmi_tx_lvl_ch1=${hdmi_tx_lvl_ch1} hdmi_tx_lvl_ch2=${hdmi_tx_lvl_ch2} hdmi_tx_emp_lvl=${hdmi_tx_emp_lvl} hdmi_clk_amp_lvl=${hdmi_clk_amp_lvl} hdmi_tx_res=${hdmi_tx_res} HPD=${HPD} vout=${vout}"


# Load kernel, initrd and dtb in that sequence
fatload mmc 0:1 0x40008000 zImage
fatload mmc 0:1 0x42000000 uInitrd
fatload mmc 0:1 0x44000000 exynos5422-odroidxu3.dtb

# set FDT address
fdt addr 0x44000000

if test "${cecenable}" = "false"; then fdt rm /cec@101B0000; fi
if test "${disable_vu7}" = "false"; then setenv hid_quirks "usbhid.quirks=0x0eef:0x0005:0x0004"; fi

# final boot args
setenv bootargs "${bootrootfs} ${videoconfig} smsc95xx.macaddr=${macaddr} governor=${governor} ${hdmi_phy_control} ${hid_quirks}"

# Boot the board
bootz 0x40008000 0x42000000 0x44000000
2. 1080x1920p60hz with pixel clock 148.5MHz : 1080x1920_waveshare_148500.bin
Have you checked this firmware, 1080x1920_waveshare_148500.bin?
I think you get a display (even weird one...) with the other firmwares, result with pixel clock 148.5Mhz can be better than others.
Could you check this, too?

4d617474
Posts: 31
Joined: Fri May 24, 2019 4:36 am
languages_spoken: english
ODROIDs: XU4Q
Has thanked: 1 time
Been thanked: 2 times
Contact:

Re: LCD timings with Waveshare 5.5 AMOLED and XU4Q

Unread post by 4d617474 » Sun Jun 16, 2019 3:31 am

I didn't mean to ignore you.
I haven't seen the reply. I have been busy.
Will test it out in the following week I guess.

If this EDID doesn't work then I will try making my own too.
It didn't work on android (clock issues?), but seemed to display properly (as vertically, hard to say).

This topic isn't dead yet, but I am simply a little bit busy with college and stuff.
I won't just give up on that screen yet lmao.


Perhaps my English isn't perfect, but as I said.
I had tried ALL of your timings about 2 weeks ago and just one worked "good" enough to be recognizable as a desktop image.
The colours however were messed up and the screen was displayed vertically but rotated horizontally (hard to describe).

NONE worked good enough to be classified as "good" ones. Unless you changed the other options there is no possibility that those three timings give me any different results, unless (for some weird reason) there was a software update that perhaps changed the display driver way of working(?).

As said. Old kernel - no image. New kernel - one out of three gives good screen, but with messed up colours.
It was the 125590 I believe. I don't have the time to experiment with clocks right now. I will do that later.

"I've asked you to check 1080p60hz on Ubuntu before.
Have you tried 1080p60hz (1920x1080p60hz) option on Ubuntu?
It's same timing as Android 1080p60hz."

Unless you changed them, I have tried all three of those long time ago and I also tried default 1080p one on Android that gave me screen with artifacts, however it perhaps was displayed vertically and the screen buffer could be also displayed vertically.

I believe that right now the 125590 timings give vertically displayed screen (1080x1920), however the screen buffer itself isn't rotated.
The kernel renders image horizontally but the device is displaying it vertically, that is my issue. The other issue are the pink colours instead of green.


In my opinion it is possible that the new kernel has had something changed, like drivers or perhaps some system functions responsible for driving peripheral devices.
It could explain why the same timings didn't provide ANY image at all, but the new OS kernel provides image on all of them, but the clock and framebuffer are wrong.
I don't know what might be causing the pink colour, because I have never been researching display devices before, but from what I believe the screen is first rendered by odroid and kept in memory to then be sent to the device.
If the screen is rendered in 1920x1080 and the device tries displaying it 1080x1920 as driven by the EDID, then the horizontal axis is messed up and the vertical one perhaps is modified.
I dont know, this happened on my TV for example. When restricting the buffer to 1080x1920 on a 1080p layout the TV with 1920x1080 pixels was displaying a vertical image but scaled down?
It seemed to be scaled down. Perhaps the same happens with a 1080p rendered image that is displayed on a 1080x1920 device. It might be scaled down on the sides and scaled up vertically.
That would perhaps explain the messed up Ubuntu menu that is like, cut in half... on both sides of the screen of something like that.

I have got no idea. I would need to run some tests with various clocks and perhaps try that one working EDID on android with framebuffer rotated.
The thing is that, even if that worked, I don't like Android. I want to install Ubuntu/something else and use it for my projects...

So there is a little bit of research to be done. I am having exams in these two incoming weeks, hence my absence.

joy
Posts: 902
Joined: Fri Oct 02, 2015 1:44 pm
languages_spoken: english
ODROIDs: ODROID-C1+, XU4, X
Has thanked: 15 times
Been thanked: 51 times
Contact:

Re: LCD timings with Waveshare 5.5 AMOLED and XU4Q

Unread post by joy » Fri Jun 21, 2019 9:13 am

Hi 4d617474,

I'm always here, so take your time.
I hope you will achieve good results on exams. :)

Just I feel sorry that I still can't give you a good solution to use your monitor. :(
And I'm checking how to rotate display permanently without buggy instructions on runtime
and trying to figure out the root cause and better approaches.

If you need to build your own edid binary, please refer to this program.
https://github.com/JeonghwaCho/edid-generator
I make edid-generator to build edid binary for XU4.

And please note that there are limited hdmi phy timings on exynos5422 kernel driver.
Before making hdmi timing, you should check the available pixel clocks first.
If you use an unsupported pixel_clock from hdmiphy_5420_configs, you will only have 1080p60hz default display automatically.
So check this kernel driver.
https://github.com/hardkernel/linux/blo ... dmi.c#L402

1085243
Posts: 16
Joined: Mon Jun 03, 2019 2:22 am
languages_spoken: english
ODROIDs: C0
Has thanked: 11 times
Been thanked: 0
Contact:

Re: LCD timings with Waveshare 5.5 AMOLED and XU4Q

Unread post by 1085243 » Thu Jun 27, 2019 8:12 pm

Hello Joy, I had also bought this Waveshare 5.5 amoled display, and cannot get it to display properly with neither the C0 or XU4. Ideally, I'd like to use the display with the C0 since it's got the right mounting ports and formfactor, and I'd like to use the display in landscape mode. The ideal was to use it for a DIY handheld for retro gaming emulation. When I follow the startup guide for using it on the Raspberry Pi, with RetroPie rotating the screen by 90 degrees introduced a negative performance penalty, so it is less than suitable even for a Pi. Their customer support was not willing or able to help me find a solution to the bad performance problem.

I would rather use the display with a Odroid C0 anyhow. But the problem I'm having is like the other one with numerical name; there is glitching/artifacts on the screen because of the display timings not being compatible with any device out of the box, so it defaults to a portrait mode configuration, whether or not the output device sends out the image in with the 1080x1920 portrait dimension. When plugged into my Windows 10 machine, it actually displays a tiny portrait image, but it's incorrectly formatted. So the display was poorly reverse engineered from a phone display, albeit a very high quality display. Is there anyway you could help me get the display running in landscape mode on the C0? It's basically compatible with the C1/C1+.

4d617474
Posts: 31
Joined: Fri May 24, 2019 4:36 am
languages_spoken: english
ODROIDs: XU4Q
Has thanked: 1 time
Been thanked: 2 times
Contact:

Re: LCD timings with Waveshare 5.5 AMOLED and XU4Q

Unread post by 4d617474 » Fri Jun 28, 2019 7:22 am

Hey.
I totally agree, it is high quality itself, but chinese morons have the most likely stolen the design without properly researching the timings.
I happen to have Pi4 now and with the provided clock the screen works nearly perfectly, with the issue of having lines/pixels that are in artifacts.

I tried researching manual timings a little bit, but according to Fujitsu's pdf there are some variables that are hardware-dependant and set from equations that (I believe) require physical testing.
Not knowing some of those frequencies I just couldn't see a way of calculating the optimal clock or pixel porch etc. I am a big noob at this.

I believe that something must be messed up in the EDID file that both Pi4 and Odroid use, because it isn't possible that the screen can't be driven xD
The clock might be set up correctly, but what if some other options like (maybe vertical/horizontal refreshing?) is set wrong. I dont know, there are many LCD-related variables in those timings.

I have been trying to manipulate clocks on Pi4 a little bit (they have a software that "injects" I believe some variables into the graphics driver and can manipulate some of the timings on the fly).
It did bring some weird results, but in the end the desktop screen is still the same what makes me believe that perhaps static screen is poorly refreshed (single red, blue and green pixels, obviously poor synchronization to me).

It's awful because the screen has a good touch (capacitive) and obviously has good resolution, but the timings are just entirely screwed up.
I am wondering at this point if to try creating EDID with that software and run it with odroid through sftp to check whether it helped, or what?


Both the editor and Pi's config script don't include advanced timing options.
Like:

0 < HDB ≤HDP < HSP < HSP+ HSW + 1 < HTP
0 < VDP < VSP < VSP+ VSW + 1 < VTR

these for example? The VSP, VSW, HSP etc..

For example that AW Edid editor has got something called "blank" area.
Fujitus calls it vertical blanking term. I cant see any formula for it. For example clock freq formula is.
Fclk = Fvertical*VTR+HTP...

How am I supposed to even calculate these.
Fvert is Freference/SC*VTR*HTP
yeah?

where SC is Fclk / Fref

Later Fpll(Fref) is equal to Fclk * N
What is N? Lol

I cant understand how to set reference clock, because if I had this then I could set the normal clock?
I also would need HTP and VTR
and for having that I need HSP, HSW, VSP, VSW

are they totally random or what?
it says > 0 ...

What chinese provided in their pseudo manual is enough to perhaps learn English A1 with a slight retardation certificate included but not enough to ever realize how to set their stupid screen -.^

I don't even know what should I try next...
Maybe I will try reading some timings manuals other than that one.
Any advice on this though?

PS: It does work on my PC with no issues.
Edit: Guys, can I just steal the EDID that my OS is using for driving this screen under Windows 10?
This would give us some information about the timings.

EDIT2:
I have connected the device, read what name it was given under Windows by it's graphic driver, then I used that AW Edid software for extracting EDID timings.
Let me save those. Attaching a screenshot for you to use (if you want)

As seen, the detected timings (set by Window's scripts?) are way different than those provided by chinese lol.
hdmi_timings=1080 1 26 4 50 1920 1 8 2 6 0 0 0 60 0 135580000 3

Let me try the settings from SS

PS2: I have saved the timings I believe(?)
Edit3: Didn't work for me really. I am trying to understand where the driver's EDID file exactly is so I can borrow it for myself tbh.

Edit4: I dont know tbh. I have used another software to extract the EDID that my OS had used before pulling out the screen, it is the same as the one I tested...
The one I tested failed, there were just artifacts. I dont get it.

Edit5:
Actually, meh. I might have not waited long enough.
It is messed up. The loading screen is entirely DUCKED, the desktop however looks the same as with chinese timings lmao.
Does it mean that not a single device can drive this screen or what? I will try the first timings version (I believe that the buffer's size is different, I cant read EDID really).

Edit6:
To me it seems that Pi4 is first using a predefined EDID, and then uses one of the modules to override that EDID with a new one.
Both tested "preffered" EDIDs saved with two different programs give the same results as the chinese timings.

I might try out it on Odroid tomorrow and see whether this EDID works on odroid tbh.
What I think is that Pi4 (maybe odroid too) has colour coding type issues. When using the screen, say, making a wide selection area yeah?
The white is perfect, like. It isnt an issue with the specific pixels and their physical refresh time, it seems to me. It perhaps is an issue with the colour format itself.
I am literally falling asleep and will try forcing specific colour-channel encodings tomorrow. If that works on Pi then I will grab odroid and try that EDID too.
Since it seems to act the same as pi's overriding script, it should do on odroid too I believe.

Again, I am a total noob, so don't take it too seriously. So, any updates from me are the soonest tomorrow.
Attachments
Waveshare5.5Amoled.zip
(237 Bytes) Downloaded 23 times
Waveshare5.5Amoled.png
Waveshare5.5Amoled.png (39.02 KiB) Viewed 3779 times
These users thanked the author 4d617474 for the post:
1085243 (Fri Jun 28, 2019 10:17 am)

1085243
Posts: 16
Joined: Mon Jun 03, 2019 2:22 am
languages_spoken: english
ODROIDs: C0
Has thanked: 11 times
Been thanked: 0
Contact:

Re: LCD timings with Waveshare 5.5 AMOLED and XU4Q

Unread post by 1085243 » Fri Jun 28, 2019 10:49 am

4d617474 thank you for sharing your tests with us. Well one thing is for sure: there are certain companies in Shenzhen or whatever it's called, that business district, which sell less than stellar devices, although I have found some good stuff from time to time. Certainly it isn't normal to be selling a screen at a such expensive cost which lacks any sort of real documentation, and which has known issues straight out of the box.

I know less about this sort of hacking than anyone, but from looking around I found this https://github.com/pysco68/waveshare-hid
and as a fellow newbie noobie noob, I can infer that Waveshare's brand of displays require some developmental knowledge using Linux that I am not educated on. I was even told by the RetroArch devs that I may need to do some magic involving recompiling the kernel on Debian (or Raspian) or whichever Linux based OS I was using, in order to get the Mali drivers to play nice with this display. Yikes!

In any case, I am cunning enough to have made a case against Waveshare via Ebay. They had agreed to accept the terms of my claims that the screen was defective and the ad was misleading, since it was shown in the thumbnails as being oriented towards the landscape ratio, rather than in a vertical portrait ratio. But alas, they were unable to send a shipping label for some bizarre reason, and Ebay had decided that I must receive a full refund; when after 3 days if they would not comply, I was allowed to keep the display. So with that refund I bought a 128gb MicroSD card and this 7" IPS display:
https://www.amazon.com/gp/product/B07S51QDTG
And they even have a mail in offer for a free HDMI to micro HDMI adapter. Would you believe that this display actually works for any HDMI device straight out of the box? No config.txt tomfoolery whatsoever. Works with Odroid, works with Rasp, heck, even works with Xbox and PlayStation. Only caveat though is that it's WAY thicker and much larger. Plus, it's not as high quality, but it does have less color shifting than a tft.

At any rate, I appreciate both of your insight and help. Sometimes the Chinese come up with some cool ideals, but people are lazy. Waveshare certainly lacks discipline, but I won't throw too many stones in my glass house. Regarding the 5.5 amoled, if we eventually find a way to get it to work, that's wonderful, and we can pass that along to anyone else who needs it, but DF Robot is working on their own version of this exact screen. I was talking with them over there as "NerdiousOfTechwood," and they say that they're working on a version that focuses on compatibility with the Pi4. I requested that they seek more compatibility with competing SBCs, but I have not heard back from their staff which intercedes for their engineers and planners.

EDIT:
I forgot to post the link to the DF Robot version that is suppose to be in the works:
https://www.dfrobot.com/product-1779.html

4d617474
Posts: 31
Joined: Fri May 24, 2019 4:36 am
languages_spoken: english
ODROIDs: XU4Q
Has thanked: 1 time
Been thanked: 2 times
Contact:

Re: LCD timings with Waveshare 5.5 AMOLED and XU4Q

Unread post by 4d617474 » Fri Jun 28, 2019 5:05 pm

Well, we have really much alike experience.
I won't give up tho. I need a small smartphone screen for my idiotic funny project.
If I come up with anything then I will share.

It is interesting that somebody is working on the same screen with a different driver.
The screen itself is really nice. Generally, it sucks that the most of DIY-promoted screens for microcomputers are either shitty tft with low reso or some sort of poorly documented hardware.

joy
Posts: 902
Joined: Fri Oct 02, 2015 1:44 pm
languages_spoken: english
ODROIDs: ODROID-C1+, XU4, X
Has thanked: 15 times
Been thanked: 51 times
Contact:

Re: LCD timings with Waveshare 5.5 AMOLED and XU4Q

Unread post by joy » Fri Jun 28, 2019 6:16 pm

I'm planning to buy the same model soon.

I've already checked several kinds of solutions but all didn't work and I couldn't reproduce the issue on my test monitors.


So I'd better get the one to synchronize test environment with you.
These users thanked the author joy for the post:
1085243 (Sat Jun 29, 2019 12:27 pm)

4d617474
Posts: 31
Joined: Fri May 24, 2019 4:36 am
languages_spoken: english
ODROIDs: XU4Q
Has thanked: 1 time
Been thanked: 2 times
Contact:

Re: LCD timings with Waveshare 5.5 AMOLED and XU4Q

Unread post by 4d617474 » Fri Jun 28, 2019 9:35 pm

I have tested different color encodings and so far RGB full worked the best to me.
I can't understand why the screen is perfect when connected to my R9 280 on PC, but then it connected on the same EDID file has got artifacts (discolored pixels, single green, blue or red pixels..)

I will try changing the clock a little bit perhaps. Maybe I connect the screen again and try reading more details about it.
Anyway, when selecting an area the discolored pixels become okay. The color in that area gets changed and they are all as they should be, for example white, with slight transparency, so the image underneath looks good?
When cancelling the screen selection they become again "blinking" with weird colors...

If you wish, you could buy this screen. It for sure has a great resolution and the touch has worked to me, so technically it is awesome.
In the software aspect it is messed up it seems.

1085243
Posts: 16
Joined: Mon Jun 03, 2019 2:22 am
languages_spoken: english
ODROIDs: C0
Has thanked: 11 times
Been thanked: 0
Contact:

Re: LCD timings with Waveshare 5.5 AMOLED and XU4Q

Unread post by 1085243 » Sat Jun 29, 2019 12:58 pm

Greetings Joy and 4d61.

It is a really nice screen. The one from DF Robot is actually called a "oled," but I think this amoled had slightly better quality than a regular oled, honestly. The one I have has a toshiba ic and a stm32 ic. These microcontrollers are organized as though the stm32 ic is driving the touch, while the toshiba ic is handling the led matrix. I couldn't even get their support line to tell me what that row of throughput holes are for, and they have no silkscreen labels. Might be a interface for UART or something, but I wouldn't really be able to find out, because I don't own an oscilloscope. Sadly, I'm not as tech savvy as some people, and this screen has perplexed me.

I have heard one person on libretro's discord say that they have figured out how to get the 5.5" amoled screen from Waveshare working with good performance on Odroid with Ubuntu, but I'm not sure if they were being serious, or what. I have flashed a stm32f103c microcontroller unit using a instructional guide I found online, but I wouldn't know where to begin on flashing this like some people have managed to do on Waveshare's 7" displays. However, their issues seemed to be more about the touch controls not working. I had a look at the scripts and all that this person made, and it looks all like Chinese to me! I have a little coding experience, but not much.

Joy and 4d61, if you would be so kind as to help me out on this, I could actually make that 3d printed DIY handheld I've been pining away months on end for. Plus it would be a better screen in general for anyone if there was finally some form of documentation that explained how to get this screen to display properly. I certainly appreciate all you two have done so far in investigating and testing things out. Ya'll have a much better understanding of this than I. It's an amazing screen for sure. Reminds me of the PS Vita's gorgeous display. It's very similar if it would just work properly.

4d617474
Posts: 31
Joined: Fri May 24, 2019 4:36 am
languages_spoken: english
ODROIDs: XU4Q
Has thanked: 1 time
Been thanked: 2 times
Contact:

Re: LCD timings with Waveshare 5.5 AMOLED and XU4Q

Unread post by 4d617474 » Sat Jun 29, 2019 3:57 pm

I also wanted to make a handheld device lol
Using woodworking tools.

I think that you know more than I. I haven't ever touched any timings before, nor I really know what sort of drivers are driving those screens.
It would be cool if they worked out in the end.

1085243
Posts: 16
Joined: Mon Jun 03, 2019 2:22 am
languages_spoken: english
ODROIDs: C0
Has thanked: 11 times
Been thanked: 0
Contact:

Re: LCD timings with Waveshare 5.5 AMOLED and XU4Q

Unread post by 1085243 » Sat Jun 29, 2019 6:32 pm

A wooden case with some good wood varnish would look awesome. I've seen on person's wooden handheld retro console, and it looks pretty sweet.

4d617474
Posts: 31
Joined: Fri May 24, 2019 4:36 am
languages_spoken: english
ODROIDs: XU4Q
Has thanked: 1 time
Been thanked: 2 times
Contact:

Re: LCD timings with Waveshare 5.5 AMOLED and XU4Q

Unread post by 4d617474 » Sun Jun 30, 2019 6:06 pm

"Yes, the framebuffer (but not video overlay) defaults to 16bit 5:6:5. "
This is what I found about Pi4, might be similar with Odroid though.

Below is another image of the screen's parameters. It might be possible that the colour encoding wasn't the issue, but the depth was.
I am not an expert, but I assume that colour depth is about the bits holding a specific pixel's value in RGB?
It might be that with 16 bits the value wouldn't be correctly rendered on a 8 bit screen.

Will check it out in a while.
For Pi it is framebuffer_depth=8, it seems at least.

On odroid I had a similar issue, but I believe that it could be improper colour formatting.
The screen on Ubuntu was purple/pink, the same happened to me on Pi 4 with improper colour encoding (the one for TVs, YCbCr?)
Anyway, they seemed similar. The Odroid also didn't have a rotated framebuffer I believe.

A few google queries about T779.
"Samsung Galaxy TAB 4 SM-T237P "
I think that this Amoled might be Samsung's, and they took some sort of smartphone screen and put a driver to it.
It doesn't mean that it is bad, it actually could explain why it isn't utter trash like the most of chinese screens (compared by hardware, colours etc)

Update2:
I don't understand? Why does it say 8 bit colour depth, if the "supported modes" are all 32 bit?
...
These are my graphic card's settings...
Other resolutions for that screen don't work.
Does it mean that the screen is driven on my PC with 32 bit-depth?
Why the other information in the display panel?

Update3:
I have tried 8 and 32 bits and it hasn't changed anything I believe.


Summing up:
HDMI colour encoding - no fix
Colour-depth - no fix
Some minor settings really, didn't help me either.

It must be timings then? How so? The screen does perfectly work on my PC and R9 280.
The image is great, not a single artifact, everything works, and the timings are the same or nearly the same, because the same EDID as on PC didn't give me any improvement?
Am I reading the EDID in a wrong way? I used two different programs.
Attachments
5.5.png
5.5.png (6.29 KiB) Viewed 3581 times
s-l640.jpg
s-l640.jpg (21.72 KiB) Viewed 3585 times
WaveShare5.5.png
WaveShare5.5.png (11.49 KiB) Viewed 3586 times

4d617474
Posts: 31
Joined: Fri May 24, 2019 4:36 am
languages_spoken: english
ODROIDs: XU4Q
Has thanked: 1 time
Been thanked: 2 times
Contact:

Re: LCD timings with Waveshare 5.5 AMOLED and XU4Q

Unread post by 4d617474 » Sun Jun 30, 2019 9:45 pm

I have got it working on raspberry pi 4 ;D
You were right about that clock.
Your EDID must have been right but the HDMI colour encoding could be perhaps wrong?
I must test it out on XU4Q.

Here are the data that I have got and may be useful?

max_framebuffer_height=1920
max_framebuffer_widtht=1080
max_usb_current=1
hdmi_group=2
hdmi_force_hotplug=1
hdmi_mode=87
config_hdmi_boost=5
hdmi_timings=1080 1 26 4 50 1920 1 8 2 6 0 0 0 60 0 125590000 3
#hdmi_timings=1080 1 26 4 50 1920 1 8 2 6 0 0 0 60 0 135580000 3
hdmi_pixel_encoding=2
framebuffer_depth=8
framebuffer_ignore_alpha=1
hdmi_blanking=1
hdmi_drive=2
#display_hdmi_rotate=1

so, as you can see.
I have simply used your clock frequency.
This is the code for Pi4 with the buffer-rendered image, you render 1080x1920 through some sort of EDID override?
I don't know how exactly it works, but those "max frambuffer" settings the most likely don't matter at all tbh.
The thing is that you can rotate the software-rendered image in here with hdmi_rotate.

So, todo:
1080 1 26 4 50 1920 1 8 2 6 0 0 0 60 0 125590000 3
These are the working timings. The thing is that I don't understand how they work, because things seem to be missing to me
(according to Fujitus etc. PDFs that show how to program LCDs...)

Anyway here is the manual to these:

dpi_timings=
<h_active_pixels> <h_sync_polarity> <h_front_porch> <h_sync_pulse> <h_back_porch> <v_active_lines> <v_sync_polarity> <v_front_porch> <v_sync_pulse> <v_back_porch> <v_sync_offset_a> <v_sync_offset_b> <pixel_rep> <frame_rate> <interlaced> <pixel_freq> <aspect_ratio>

aspect ratio 3 means 16:9

I will try making my own EDID based on this, but I am not fully sure if I can do that lmao.
Anyway, it might be helpful to you. I am not promoting the other microcomputer (I actually like it very much uhm), but editing EDID on the fly DOES come in handy.


PS: I dont know why or how, but is it possible that the same screen does work on device A, but doesn't work on device B with the same timings?...
Why? Is it possible that this screen could be working on Pi3 B with the "manufacturer's provided timings" (in the form of shit-tier PDF file with English at third grade level), but then it magically did stop working on the newer model?...

I mean, it turns out that at least in Pi's case the issue was too high frequency... It can support up to 4k, so bear that it should be able to drive some 1080p plebeian LCD yeah?
Either the above is possible (how, Idk really) or chinese lie/were that lazy that didn't even test it properly.

PS2: I must first "hack" my stupid Ubuntu VM, because I forgot the password so...
That won't be quick lmao.

UPDATE:
I have reset my Ubuntu passwd and will try doing something tomorrow with that EDID file.
I needed to take care of my OS.

joy
Posts: 902
Joined: Fri Oct 02, 2015 1:44 pm
languages_spoken: english
ODROIDs: ODROID-C1+, XU4, X
Has thanked: 15 times
Been thanked: 51 times
Contact:

Re: LCD timings with Waveshare 5.5 AMOLED and XU4Q

Unread post by joy » Mon Jul 01, 2019 7:24 am

1085243 wrote:
Sat Jun 29, 2019 12:58 pm
Greetings Joy and 4d61.

It is a really nice screen. The one from DF Robot is actually called a "oled," but I think this amoled had slightly better quality than a regular oled, honestly. The one I have has a toshiba ic and a stm32 ic. These microcontrollers are organized as though the stm32 ic is driving the touch, while the toshiba ic is handling the led matrix. I couldn't even get their support line to tell me what that row of throughput holes are for, and they have no silkscreen labels. Might be a interface for UART or something, but I wouldn't really be able to find out, because I don't own an oscilloscope. Sadly, I'm not as tech savvy as some people, and this screen has perplexed me.

I have heard one person on libretro's discord say that they have figured out how to get the 5.5" amoled screen from Waveshare working with good performance on Odroid with Ubuntu, but I'm not sure if they were being serious, or what. I have flashed a stm32f103c microcontroller unit using a instructional guide I found online, but I wouldn't know where to begin on flashing this like some people have managed to do on Waveshare's 7" displays. However, their issues seemed to be more about the touch controls not working. I had a look at the scripts and all that this person made, and it looks all like Chinese to me! I have a little coding experience, but not much.

Joy and 4d61, if you would be so kind as to help me out on this, I could actually make that 3d printed DIY handheld I've been pining away months on end for. Plus it would be a better screen in general for anyone if there was finally some form of documentation that explained how to get this screen to display properly. I certainly appreciate all you two have done so far in investigating and testing things out. Ya'll have a much better understanding of this than I. It's an amazing screen for sure. Reminds me of the PS Vita's gorgeous display. It's very similar if it would just work properly.
Hi @1085243 and @4d617474,
Yes.
It looks the monitor is widely used by many users of rpi and the other SBCs.
Many waveshare monitors are used with ODROIDs now and I've confirmed they work well
but I've never tested the 5.5 inch 1080x1920 monitor yet.
So, it must be worthy to check and implement display function with the monitor on ODROIDs.
I've already ordered the same one and will get it in this week.
Hopefully, I would be able to help a little.

1085243
Posts: 16
Joined: Mon Jun 03, 2019 2:22 am
languages_spoken: english
ODROIDs: C0
Has thanked: 11 times
Been thanked: 0
Contact:

Re: LCD timings with Waveshare 5.5 AMOLED and XU4Q

Unread post by 1085243 » Tue Jul 02, 2019 3:21 am

Cool. Yes, about the timings, I've played with the pixel frequency to no avail. I've tried reversing the "h active pixels" and "v active lines" values, and got garble artifacts. On Odroids you set hdmimode value, but that's about it. I'm not sure if there is a way to set the orientation of the image via the boot.ini. I have never messed with EDID's before, or modified them. TBH, I'm really not sure what a EDID is exactly, but apparently there have been some issues with that on this screen for some people. I can find people chatting about other Waveshare displays and having some success with them, but for this one (which seems to be the best quality screen out of their selection) there isn't much I can find with people reporting success with using it. In fact, besides this forum, there is a guy on reddit who is also having an issue with this screen not displaying properly, and a guy on YouTube who is complaining about it shutting off randomly, but I haven't found anyone else talking about this screen anywhere on the internet. I haven't tried the deep web yet, though. Maybe they're talking about it in some hidden 4chan on some seedy onion server somewhere, but I haven't found their hangout yet.

joy
Posts: 902
Joined: Fri Oct 02, 2015 1:44 pm
languages_spoken: english
ODROIDs: ODROID-C1+, XU4, X
Has thanked: 15 times
Been thanked: 51 times
Contact:

Re: LCD timings with Waveshare 5.5 AMOLED and XU4Q

Unread post by joy » Mon Jul 08, 2019 1:39 pm

Just to share my status...
I got the waveshare 5.5inch monitor today and will check display timing and try to work it with XU4 soon.
Sorry for the slow progress.
These users thanked the author joy for the post:
1085243 (Thu Jul 11, 2019 7:00 am)

joy
Posts: 902
Joined: Fri Oct 02, 2015 1:44 pm
languages_spoken: english
ODROIDs: ODROID-C1+, XU4, X
Has thanked: 15 times
Been thanked: 51 times
Contact:

Re: LCD timings with Waveshare 5.5 AMOLED and XU4Q

Unread post by joy » Mon Jul 08, 2019 2:36 pm

Hi @1085243 and @4d617474,
Now I can get 1080x1920 display using one of test edid binary, 1080x1920_waveshare_125590.bin
and reproduce the same display color issue that @4d617474 mentioned before.
The current background color is "Magenta", not the normal green ubuntu background.
I'm on the same stage with 4d617474. ;)

I tried to work this monitor with my C2 and get same color issue with 1080x1920 display.
And finally I found the color problem is related to colorspace.
This monitor only supports RGB 4:4:4, YCrCb 4:4:4.
RGB444 options is needed and now I get normal display on C2.

Code: Select all

root@odroid:~# cat /media/boot/edid.bin | edid-decode
Manufacturer: HLT Model 3433 Serial Number 2290649088
Made week 28 of 2018
EDID version: 1.3
Digital display
Image size is variable
Gamma: 2.20
Supported color formats: RGB 4:4:4, YCrCb 4:4:4
First detailed timing is preferred timing
Established timings supported:
Standard timings supported:
Detailed mode: Clock 137.520 MHz, 1920 mm x 1080 mm
               1080 1112 1144 1184 hborder 0
               1920 1928 1932 1936 vborder 0
               -hsync -vsync 
Detailed mode: Clock 137.520 MHz, 1920 mm x 1080 mm
               1080 1112 1144 1184 hborder 0
               1920 1928 1932 1936 vborder 0
               -hsync -vsync 
Monitor ranges (GTF): 20-120Hz V, 1-255kHz H, max dotclock 290MHz
Has 1 extension blocks
Checksum: 0x6f (valid)
.....
.....

Code: Select all

Supported color formats: RGB 4:4:4, YCrCb 4:4:4
Let me implement the colorspace option on XU4,
so please wait for a couple of days more.
These users thanked the author joy for the post:
1085243 (Thu Jul 11, 2019 7:00 am)

joy
Posts: 902
Joined: Fri Oct 02, 2015 1:44 pm
languages_spoken: english
ODROIDs: ODROID-C1+, XU4, X
Has thanked: 15 times
Been thanked: 51 times
Contact:

Re: LCD timings with Waveshare 5.5 AMOLED and XU4Q

Unread post by joy » Tue Jul 09, 2019 1:18 pm

Hi @1085243 and @4d617474,

Finally, I got a normal 1080x1920 display with waveshare 5.5 inch monitor on XU4.
But its refresh rate is 50Hz, not 60Hz.

It looks the root cause of weird display and color issue is incorrect hdmi pixel clock and timings, (not colorspace issue).
Current supported hdmi pixel clock sets are limited and there is no option of 137.52MHz that is the recommended one to support 1080x1920@"60Hz",
and actually it's NOT possible to make a new hdmi phy set by myself without samsung guys' help.

So I've changed my tactics and I'm trying other refresh rates with original modeline (h/v timings).

I made a new test edid file based on 1080x1920@50Hz with 115.500MHz that is included in exynos5422 hdmi driver.

Code: Select all

Detailed mode: Clock 115.500 MHz, 281 mm x 500 mm
               1080 1112 1144 1184 hborder 0
               1920 1928 1932 1936 vborder 0
               -hsync -vsync 
I attached a new edid binary so, please try it on your XU4 and confirm it works with your environments.
[ 1080x1920_50_waveshare_115500.bin.zip ]

Test instruction is same as before.
1. unzip the attachment and copy it into /lib/firmware/ of your card.
2. modify boot.ini

Code: Select all

setenv videoconfig "drm_kms_helper.edid_firmware=1080x1920_50_waveshare_115500.bin"
3. reboot your xu4

I will try some more to run higher refresh rate sets and try to devise better idea to support 60hz refresh rate fully.
and will share once I have any update.

Please check the attachment and give me any opinion.
xu4_waveshare_50hz_1.png
xu4_waveshare_50hz_1.png (3.48 MiB) Viewed 3284 times
xu4_waveshare_50hz_2.png
xu4_waveshare_50hz_2.png (4 MiB) Viewed 3284 times
Attachments
1080x1920_50_waveshare_115500.bin.zip
(314 Bytes) Downloaded 24 times
These users thanked the author joy for the post:
1085243 (Thu Jul 11, 2019 7:00 am)

joy
Posts: 902
Joined: Fri Oct 02, 2015 1:44 pm
languages_spoken: english
ODROIDs: ODROID-C1+, XU4, X
Has thanked: 15 times
Been thanked: 51 times
Contact:

Re: LCD timings with Waveshare 5.5 AMOLED and XU4Q

Unread post by joy » Tue Jul 09, 2019 5:07 pm

(UPDATED)

I've confirmed one higher refresh rate, 55Hz is available.
I've tried 63Hz and others, but all NG.

So now we have two options to run 1080x1920 display on XU4.
1. 1080x1920p50hz

Code: Select all

Detailed mode: Clock 115.500 MHz, 281 mm x 500 mm
               1080 1112 1144 1184 hborder 0
               1920 1928 1932 1936 vborder 0
               -hsync -vsync 
https://github.com/JeonghwaCho/edid-gen ... 0_115500.S

2. 1080x1920p55hz

Code: Select all

Detailed mode: Clock 125.590 MHz, 281 mm x 500 mm
               1080 1112 1144 1184 hborder 0
               1920 1928 1932 1936 vborder 0
               -hsync -vsync 
https://github.com/JeonghwaCho/edid-gen ... 5_125590.S

You can find two attachments.
Please check them.
Attachments
1080x1920_55_waveshare_125590.bin.zip
(314 Bytes) Downloaded 24 times
1080x1920_50_waveshare_115500.bin.zip
(314 Bytes) Downloaded 21 times
These users thanked the author joy for the post:
1085243 (Thu Jul 11, 2019 7:00 am)

4d617474
Posts: 31
Joined: Fri May 24, 2019 4:36 am
languages_spoken: english
ODROIDs: XU4Q
Has thanked: 1 time
Been thanked: 2 times
Contact:

Re: LCD timings with Waveshare 5.5 AMOLED and XU4Q

Unread post by 4d617474 » Thu Jul 11, 2019 4:02 am

Hello.
I am very sorry for late response, but I have been looking for a summer work to fund my projects etc. lol
Anyway, I have limited time, so I didn't experiment with this screen on xu4q yet.
Today I tried to run it on your EDID file but with 135.5Mhz clock and 60Hz (also modified blank area, etc.).
It resulted in artifacts uhm.

So it seems that it is Xu4q's hardware limitation yes?
It also seems that you used my PC's EDID timings and just decreased the clock to establish a lower Hz rate?
I will test the 55Hz now, this screen is capable of 60 Hz altough.

Update:
Idk. I made two typos previously, but am nearly sure that the third time the name was correct.
I am falling asleep, that 55Hz didn't work for me, but I better check it out tomorrow when I am slightly more alive...
These users thanked the author 4d617474 for the post:
1085243 (Thu Jul 11, 2019 7:19 am)

1085243
Posts: 16
Joined: Mon Jun 03, 2019 2:22 am
languages_spoken: english
ODROIDs: C0
Has thanked: 11 times
Been thanked: 0
Contact:

Re: LCD timings with Waveshare 5.5 AMOLED and XU4Q

Unread post by 1085243 » Thu Jul 11, 2019 7:17 am

I'm extra sorry for my late response, :P
Thanks Joy for your diligence in doing the detective work that I'm not sure how to do myself.
It will be my first time using a custom .bin file like this, but I'll try to go through the steps to load that up on the XU4. I'll need to use Ubuntu, correct? I think I have an old copy, but I just got some extra microSD cards in the mail for testing things out, so tonight I'll try to put Ubuntu on one of the new ones. On a side note, I've been testing out the Lakka dev build for the C0 and XU4, but since I have a handful of auxiliary MicroSD cards I can test 2 or more different images now with ease.

I'm getting a Pi4, but it's not coming for a while, even though I paid for the fast shipping. They're sold out everywhere I've looked. Can you imagine two of these bad boys running with a Pi4? Would be real slick if the Pi's performance was able to manage the double workload.

Update: the 55 hertz edid .bin didn't work for me. I tried using
ubuntu-16.04.2-mate-odroid-xu4-20170510

The 50h did work, however my version of Ubuntu is not able to rotate the desktop, so I cannot test it out in horizontal/landscape mode. This is nice though. It's able to finally display on the XU4 without artifacts for me. I will try this edid.bin out on the C0 and see if that works at all; I was planning on using the display with the Odroid C0, since it has decent enough performance for retro emulation gaming and Kodi, and is also very thin form factor. Unfortunately my XU4 doesn't fit the mounting m2.5 screw ports, but at least the display finally works on something other than a Pi, which is pretty cool if you ask me. Waveshare ought to hire you two to help them do R&D and to write up the user manuals on these screens before putting them out on the market.

1085243
Posts: 16
Joined: Mon Jun 03, 2019 2:22 am
languages_spoken: english
ODROIDs: C0
Has thanked: 11 times
Been thanked: 0
Contact:

Re: LCD timings with Waveshare 5.5 AMOLED and XU4Q

Unread post by 1085243 » Fri Jul 12, 2019 8:50 am

So I tried it with the C0 using
ubuntu-18.04-3.10-mate-odroid-c1-20180726
And I got some pretty strange results:
https://youtu.be/nGmXDQL-5Z4

joy
Posts: 902
Joined: Fri Oct 02, 2015 1:44 pm
languages_spoken: english
ODROIDs: ODROID-C1+, XU4, X
Has thanked: 15 times
Been thanked: 51 times
Contact:

Re: LCD timings with Waveshare 5.5 AMOLED and XU4Q

Unread post by joy » Fri Jul 12, 2019 9:35 am

1085243 wrote:
Thu Jul 11, 2019 7:17 am
I'm extra sorry for my late response, :P
Thanks Joy for your diligence in doing the detective work that I'm not sure how to do myself.
It will be my first time using a custom .bin file like this, but I'll try to go through the steps to load that up on the XU4. I'll need to use Ubuntu, correct? I think I have an old copy, but I just got some extra microSD cards in the mail for testing things out, so tonight I'll try to put Ubuntu on one of the new ones. On a side note, I've been testing out the Lakka dev build for the C0 and XU4, but since I have a handful of auxiliary MicroSD cards I can test 2 or more different images now with ease.

I'm getting a Pi4, but it's not coming for a while, even though I paid for the fast shipping. They're sold out everywhere I've looked. Can you imagine two of these bad boys running with a Pi4? Would be real slick if the Pi's performance was able to manage the double workload.

Update: the 55 hertz edid .bin didn't work for me. I tried using
ubuntu-16.04.2-mate-odroid-xu4-20170510

The 50h did work, however my version of Ubuntu is not able to rotate the desktop, so I cannot test it out in horizontal/landscape mode. This is nice though. It's able to finally display on the XU4 without artifacts for me. I will try this edid.bin out on the C0 and see if that works at all; I was planning on using the display with the Odroid C0, since it has decent enough performance for retro emulation gaming and Kodi, and is also very thin form factor. Unfortunately my XU4 doesn't fit the mounting m2.5 screw ports, but at least the display finally works on something other than a Pi, which is pretty cool if you ask me. Waveshare ought to hire you two to help them do R&D and to write up the user manuals on these screens before putting them out on the market.
Hi 1085243,
No problem! Don't be sorry. ;)

It looks we need to check and sync test environment.

1. OS and kernel version
To synchronize your and my test environment, please use XU4 Linux OS.
kernel 4.14.y and Ubuntu 18.04
https://wiki.odroid.com/odroid-xu4/os_i ... 4/20180501

2. Booting log
Could you share booting log using dmesg?

3. Test instruction for custom EDID
I didn't consider it's your first time to try cutom edid on XU4. I'm sorry. :(
Please refer to this thread.
viewtopic.php?f=97&t=35109#p257370

Or as a easier way, I can provide a test kernel image that includes the edid information patches internally.
Today I'm working away from the office,
so once I'm back to the office today night I will make it for you.

I think it should work with both of 50hz and 55hz if custom edid option works normally.
I fully understand the custom edid instruction is complicated and a bit annoying to test. ;)
Last edited by joy on Fri Jul 12, 2019 9:38 am, edited 1 time in total.
These users thanked the author joy for the post:
1085243 (Fri Jul 12, 2019 11:22 am)

joy
Posts: 902
Joined: Fri Oct 02, 2015 1:44 pm
languages_spoken: english
ODROIDs: ODROID-C1+, XU4, X
Has thanked: 15 times
Been thanked: 51 times
Contact:

Re: LCD timings with Waveshare 5.5 AMOLED and XU4Q

Unread post by joy » Fri Jul 12, 2019 9:37 am

1085243 wrote:
Fri Jul 12, 2019 8:50 am
So I tried it with the C0 using
ubuntu-18.04-3.10-mate-odroid-c1-20180726
And I got some pretty strange results:
https://youtu.be/nGmXDQL-5Z4
I didn't check this monitor on C1/C0 yet.
New hdmi and display driver patches must be needed to work 1080x1920 on C1/C0.
So let's check it on XU4 first then go forward with C1/C0.
These users thanked the author joy for the post:
1085243 (Fri Jul 12, 2019 11:22 am)

joy
Posts: 902
Joined: Fri Oct 02, 2015 1:44 pm
languages_spoken: english
ODROIDs: ODROID-C1+, XU4, X
Has thanked: 15 times
Been thanked: 51 times
Contact:

Re: LCD timings with Waveshare 5.5 AMOLED and XU4Q

Unread post by joy » Fri Jul 12, 2019 9:50 am

4d617474 wrote:
Thu Jul 11, 2019 4:02 am
Hello.
I am very sorry for late response, but I have been looking for a summer work to fund my projects etc. lol
Anyway, I have limited time, so I didn't experiment with this screen on xu4q yet.
Today I tried to run it on your EDID file but with 135.5Mhz clock and 60Hz (also modified blank area, etc.).
It resulted in artifacts uhm.

So it seems that it is Xu4q's hardware limitation yes?
It also seems that you used my PC's EDID timings and just decreased the clock to establish a lower Hz rate?
I will test the 55Hz now, this screen is capable of 60 Hz altough.

Update:
Idk. I made two typos previously, but am nearly sure that the third time the name was correct.
I am falling asleep, that 55Hz didn't work for me, but I better check it out tomorrow when I am slightly more alive...
Hi 4d617474,
It's OK. No problem. I fully understand you're busy and there is a time difference between us.

I don't think it depends on HW limitation because I confirmed it works well on XU4Q, too.
Here are detailed hdmi timings to work 1080x1920p50hz and 1080x1920p55hz.
- 1080x1920p50hz

Code: Select all

Detailed mode: Clock 115.500 MHz, 281 mm x 500 mm
               1080 1112 1144 1184 hborder 0
               1920 1928 1932 1936 vborder 0
               -hsync -vsync

- 1080x1920p55hz

Code: Select all

Detailed mode: Clock 125.590 MHz, 281 mm x 500 mm
               1080 1112 1144 1184 hborder 0
               1920 1928 1932 1936 vborder 0
               -hsync -vsync 
The reason why I use pixel clock 115.500MHz and 125.590MHz is that there is no 135.52Mhz in current exynos hdmi phy table.
It's not available.
And it should work with 50hz and 55hz because the monitor's spec can cover the refresh rate. ;)


Can I ask one?
Please share the booting log in case of 55hz and 50hz here?

And I will provide a test kernel image that includes 50 and 55hz patches internally.
Last edited by joy on Mon Jul 15, 2019 10:59 am, edited 1 time in total.

1085243
Posts: 16
Joined: Mon Jun 03, 2019 2:22 am
languages_spoken: english
ODROIDs: C0
Has thanked: 11 times
Been thanked: 0
Contact:

Re: LCD timings with Waveshare 5.5 AMOLED and XU4Q

Unread post by 1085243 » Fri Jul 12, 2019 11:49 am

It looks we need to check and sync test environment.

1. OS and kernel version
To synchronize your and my test environment, please use XU4 Linux OS.
kernel 4.14.y and Ubuntu 18.04
https://wiki.odroid.com/odroid-xu4/os_i ... 4/20180501

2. Booting log
Could you share booting log using dmesg?

3. Test instruction for custom EDID
I didn't consider it's your first time to try cutom edid on XU4. I'm sorry. :(
Please refer to this thread.
viewtopic.php?f=97&t=35109#p257370

Or as a easier way, I can provide a test kernel image that includes the edid information patches internally.
Today I'm working away from the office,
so once I'm back to the office today night I will make it for you.

I think it should work with both of 50hz and 55hz if custom edid option works normally.
I fully understand the custom edid instruction is complicated and a bit annoying to test. ;)
I will try making a log using that Ubuntu 18.4 image for the XU4, No sweat. I haven't used the dmesg command before, but I'll try figuring that out. Thanks.

joy
Posts: 902
Joined: Fri Oct 02, 2015 1:44 pm
languages_spoken: english
ODROIDs: ODROID-C1+, XU4, X
Has thanked: 15 times
Been thanked: 51 times
Contact:

Re: LCD timings with Waveshare 5.5 AMOLED and XU4Q

Unread post by joy » Fri Jul 12, 2019 12:11 pm

1085243 wrote:
Fri Jul 12, 2019 11:49 am
I will try making a log using that Ubuntu 18.4 image for the XU4, No sweat. I haven't used the dmesg command before, but I'll try figuring that out. Thanks.
Just enter dmesg on your console after booting is done. ;)

Code: Select all

$ dmesg
Thanks.
These users thanked the author joy for the post:
1085243 (Sun Jul 14, 2019 2:14 pm)

1085243
Posts: 16
Joined: Mon Jun 03, 2019 2:22 am
languages_spoken: english
ODROIDs: C0
Has thanked: 11 times
Been thanked: 0
Contact:

Re: LCD timings with Waveshare 5.5 AMOLED and XU4Q

Unread post by 1085243 » Sun Jul 14, 2019 3:26 pm

joy wrote:
Fri Jul 12, 2019 12:11 pm

Just enter dmesg on your console after booting is done. ;)

Code: Select all

$ dmesg
Thanks.
I went ahead and made a video showing the log
https://youtu.be/XW2JolCmLvw

the edid file works for displaying the image in portait/vertical mode, but the OS won't let me rotate it. :roll:
But the image looks good on the display.

joy
Posts: 902
Joined: Fri Oct 02, 2015 1:44 pm
languages_spoken: english
ODROIDs: ODROID-C1+, XU4, X
Has thanked: 15 times
Been thanked: 51 times
Contact:

Re: LCD timings with Waveshare 5.5 AMOLED and XU4Q

Unread post by joy » Mon Jul 15, 2019 7:30 am

1085243 wrote:
Sun Jul 14, 2019 3:26 pm
joy wrote:
Fri Jul 12, 2019 12:11 pm

Just enter dmesg on your console after booting is done. ;)

Code: Select all

$ dmesg
Thanks.
I went ahead and made a video showing the log
https://youtu.be/XW2JolCmLvw

the edid file works for displaying the image in portait/vertical mode, but the OS won't let me rotate it. :roll:
But the image looks good on the display.
Hi.
Thank you for sharing the video, @1085243.

Now I realized I misunderstood your current status!
You have native 1080x1920 display (portrait version) normally now with my latest edid files,
but you need 1920x1080 one (landscape version) that means rotated version of 1080x1920.
Is it right?

I will check rotation option of it.

joy
Posts: 902
Joined: Fri Oct 02, 2015 1:44 pm
languages_spoken: english
ODROIDs: ODROID-C1+, XU4, X
Has thanked: 15 times
Been thanked: 51 times
Contact:

Re: LCD timings with Waveshare 5.5 AMOLED and XU4Q

Unread post by joy » Mon Jul 15, 2019 10:40 am

joy wrote:
Mon Jul 15, 2019 7:30 am
1085243 wrote:
Sun Jul 14, 2019 3:26 pm
joy wrote:
Fri Jul 12, 2019 12:11 pm

Just enter dmesg on your console after booting is done. ;)

Code: Select all

$ dmesg
Thanks.
I went ahead and made a video showing the log
https://youtu.be/XW2JolCmLvw

the edid file works for displaying the image in portait/vertical mode, but the OS won't let me rotate it. :roll:
But the image looks good on the display.
Hi.
Thank you for sharing the video, @1085243.

Now I realized I misunderstood your current status!
You have native 1080x1920 display (portrait version) normally now with my latest edid files,
but you need 1920x1080 one (landscape version) that means rotated version of 1080x1920.
Is it right?

I will check rotation option of it.
Hello @1085243.

Now I have landscape display by adjusting xorg.conf.
Please try the following instruction.

1. reinstall mali-x11

Code: Select all

$ sudo apt-get install --reinstall mali-x11
2. backup original xorg.conf

Code: Select all

$ cp /etc/X11/xorg.conf  /etc/X11/xorg.conf.backup
3. modify xorg.conf

Code: Select all

$ sudo vi /etc/X11/xorg.conf

Code: Select all


Section "Device"
        Identifier      "Mali-Fbdev"
        Driver          "fbdev"
        Option          "Debug"         "false"
        Option          "DPMS"          "false"
        Option          "NoFlip"        "true"
        Option          "Rotate"        "CW"

EndSection

Section "Screen"
        Identifier      "Default Screen"
        Device          "Mali-Fbdev"
        DefaultDepth    24
EndSection

Section "ServerLayout"
        Identifier      "Default Layout"
        Option          "BlankTime"     "0"
        Option          "StandbyTime"   "0"
        Option          "SuspendTime"   "0"
        Option          "OffTime"       "0"
EndSection

Section "DRI"
        Mode            0666
EndSection
Please refer to the attached picture.
If you need other degrees of rotation, please modify Option "Rotate" "CW" line to Option "Rotate" "CCW"
- CW : 90 degree rotation
- CCW : 270 degree rotation

4. system reboot
Then, please make sure to do "system reboot"

Code: Select all

$ sudo reboot
Then, you will have this display.
xu4_waveshare_landscape.png
xu4_waveshare_landscape.png (3.41 MiB) Viewed 2928 times
These users thanked the author joy for the post:
1085243 (Mon Jul 15, 2019 5:28 pm)

1085243
Posts: 16
Joined: Mon Jun 03, 2019 2:22 am
languages_spoken: english
ODROIDs: C0
Has thanked: 11 times
Been thanked: 0
Contact:

Re: LCD timings with Waveshare 5.5 AMOLED and XU4Q

Unread post by 1085243 » Wed Jul 17, 2019 12:36 pm

Hello Joy, I've tried editing the xorg.conf file, and I had followed all the instructions for reinstalling the mali drivers, but when I reboot it I have artifacting like before. When I comment out the .bin file for videomode in the boot.ini file, I still get artifacts with a image that is all wrong like before. I will try to reinstall the ubuntu image again, but take steps to avoid updating the system files when I do the mali reinstall.

I think maybe when I reinstalled the driver for mali, that I had a problem where because I connected my Ethernet cable from the router, it locked me out of using the console command, because the software updater was nagging about updating. I just went ahead and updated; I guess I didn't think things through, and that messed things up. I looked in the /lib/firmware/ folder and there the edid .bin files you gave me were still there. I can't see the log from dmesg because when the screen is connected it's not rendering an image that is readable. I've been busy, but I'll try to get that done tonight.

1085243
Posts: 16
Joined: Mon Jun 03, 2019 2:22 am
languages_spoken: english
ODROIDs: C0
Has thanked: 11 times
Been thanked: 0
Contact:

Re: LCD timings with Waveshare 5.5 AMOLED and XU4Q

Unread post by 1085243 » Fri Jul 19, 2019 12:57 pm

Greetings Joy, I've tried following your instructions several times start to finish, but so far this is all I'm getting with the XU4:

Post Reply

Return to “Hardware and peripherals”

Who is online

Users browsing this forum: No registered users and 1 guest