View Full Version : skewed rotated distorted image
lenovouser
11-11-2018, 06:11 AM
hello - I am using the displaylink-rpm for Fedora on a Dell XPS13 with a Lenovo LT1421. I haven't used the USB screen for a few months and updated to the latest Fedora 29 recently. I compiled and installed the latest displaylink-rpm.
The driver seems to be working well except that the image is massively distorted. I have posted the issue on github with evdi and would like to point to it in case someone experience anything in kind
https://github.com/DisplayLink/evdi/issues/129#issuecomment-437601509
https://s3.eu-central-1.amazonaws.com/picshare11/displaylink/lt1421.jpg
https://s3.eu-central-1.amazonaws.com/picshare11/displaylink/printscreen.png
cacarr
11-29-2018, 07:41 AM
I had something like that as well, after an update to 4.4.24-1. Had to remove an evdi.conf config that I had used to enable rotation/portrait orientation. Sadly, vertical orientation no longer works for me, and I have severe mouse pointer artifacts.
Urgh.
I have a similar issue with an AOC E1659Fwu. I use Fedora 30 (KDE) and the rpm package from https://github.com/displaylink-rpm/displaylink-rpm: evdi 1.6.1 (displaylink-rpm v5.1.26-1).
$ uname -r
5.0.16-300.fc30.x86_64
First, I get a similar distorted image when using the native resolution of 1366x768:
https://i.imgur.com/WUSmaGnl.jpg (https://i.imgur.com/WUSmaGn.jpg)
This is the image the screen is supposed to show:
https://i.imgur.com/BmhYV3Ml.png (https://i.imgur.com/BmhYV3M.png)
When I use a lower resolution like 1024x768, the screen works just fine:
https://i.imgur.com/omAX18pl.jpg (https://i.imgur.com/omAX18p.jpg)
I took the above pictures while the screen was connected to a HP EliteBook 2760p via USB 2.0, but I could reproduce this issue on a similar setup with a ThinkPad T440p (Fedora 30 as well) using USB 3.0.
On both systems, the distortion did not occur a few month ago (when I was on Fedora 28).
A second issue I noticed on both systems is a flickering cursor on the primary (non-DisplayLink) screen, which is rather annoying. I tried to capture it on a video: https://vimeo.com/339206961
https://i.vimeocdn.com/video/787171774.webp?mw=640 (https://vimeo.com/339206961)
Any help would be highly appreciated!
— Jan
Hi everyone,
when I tried the new evdi release (1.6.2) today I played around with different resolutions and worked out a workaround for the distortion problem.
My solution is to run the USB monitor at a slightly lower resolution than intended by the specification. I use 1360x768 instead of 1366x768. On my device, this does not lead to a blurred image, the screen works just fine then.
I wrote the following shell script to set up the custom resolution (1360x768). Please adjust the variables in ll. 5-7 to match the correct RandR output (run xrandr without any parameters to find it) and the desired resoultion.
#!/bin/bash
# Adjust these parameters to your needs.
# These worked for me (AOC E1659Fwu)
OUTPUT="DVI-I-1-1"
HORIZONTAL_RES="1360"
VERTICAL_RES="768"
MODELINE="$(cvt ${HORIZONTAL_RES} ${VERTICAL_RES} | tail -n 1 | awk '{for (i=3; i<=NF; i++) print $i}')"
MODELINE_NAME=$(echo ${MODELINE} | awk '{print $1}' | sed -e 's/^"//' -e 's/"$//')
echo "Modeline:"
echo ${MODELINE_NAME} ${MODELINE}
echo
echo " xrandr --newmode"
xrandr -d :0 --newmode ${MODELINE_NAME} ${MODELINE}
echo " xrandr --addmode (${OUTPUT})"
xrandr -d :0 --addmode "${OUTPUT}" ${MODELINE_NAME}
echo " Set new resolution"
xrandr -d :0 --output "${OUTPUT}" --mode ${MODELINE_NAME}
I'm still interested in any advice to stop my cursor from flickering (https://vimeo.com/339206961) on non-DisplayLink screens.
— Jan
jbrock
08-14-2019, 05:03 PM
Hi Jan or jei,
Thank you, Thank you, Thank you, for this workaround script! I am now able to use my AOC e1659Fwu at 1360x768. Before I could only get 1024x768 to work. I am able to get my TOSHIBA PA3923U-2LC3 to work at this resolution as well. (I am going to return the AOC because it was part of my troubleshooting.) I had tried every combination you can imagine with *.conf files in /etc/X11/xorg.conf.d/ to get 1366x768 working. I had tried on Xubuntu 18.04 and Debian 10 with no luck and on multiple computers, with both Intel and AMD graphics. The best resolution I could achieve was 1024x768. Otherwise, 1366x768 looked something like the pictures on this thread. I have had the exact same issue on both monitors I currently have in my possession. I am guessing that this is just a bug that Displaylink needs to resolve.
As for the mouse flickering issue, it is very minimal on my system right now. I have an old Acer laptop (2010 model) with Intel(R) Core(TM) i3 CPU M 350 @ 2.27GHz, with Intel integrated graphics. I am running Debian 10 with Xfce, vanilla install i.e. default kernel etc. I used the AdnanHodzic (https://github.com/AdnanHodzic/displaylink-debian) script to install on Debian. Here is my /etc/X11/xorg.conf.d/ directory. It has two files, 20-displaylink.conf and 20-evdidevice.conf. Perhaps this can help.
Contents of 20-displaylink.conf :
Section "Device"
Identifier "DisplayLink"
Driver "modesetting"
Option "PageFlip" "false"
EndSection
Contents of 20-evdidevice.conf:
Section "OutputClass"
Identifier "DisplayLink"
MatchDriver "evdi"
Driver "modesetting"
Option "AccelMethod" "none"
EndSection
Update: Just a warning that after running the script and arranging my screens, without thinking much, I decided to "Save" my layout in the Xfce Display application. This for some reason broke X when I rebooted. I also did not even have access to a tty. Fortunately though I fixed it via chroot. (If you want this setup every time, add the script to your autostart items for your desktop environment.)
Hi everyone,
when I tried the new evdi release (1.6.2) today I played around with different resolutions and worked out a workaround for the distortion problem.
My solution is to run the USB monitor at a slightly lower resolution than intended by the specification. I use 1360x768 instead of 1366x768. On my device, this does not lead to a blurred image, the screen works just fine then.
I wrote the following shell script to set up the custom resolution (1360x768). Please adjust the variables in ll. 5-7 to match the correct RandR output (run xrandr without any parameters to find it) and the desired resoultion.
#!/bin/bash
# Adjust these parameters to your needs.
# These worked for me (AOC E1659Fwu)
OUTPUT="DVI-I-1-1"
HORIZONTAL_RES="1360"
VERTICAL_RES="768"
MODELINE="$(cvt ${HORIZONTAL_RES} ${VERTICAL_RES} | tail -n 1 | awk '{for (i=3; i<=NF; i++) print $i}')"
MODELINE_NAME=$(echo ${MODELINE} | awk '{print $1}' | sed -e 's/^"//' -e 's/"$//')
echo "Modeline:"
echo ${MODELINE_NAME} ${MODELINE}
echo
echo " xrandr --newmode"
xrandr -d :0 --newmode ${MODELINE_NAME} ${MODELINE}
echo " xrandr --addmode (${OUTPUT})"
xrandr -d :0 --addmode "${OUTPUT}" ${MODELINE_NAME}
echo " Set new resolution"
xrandr -d :0 --output "${OUTPUT}" --mode ${MODELINE_NAME}
I'm still interested in any advice to stop my cursor from flickering (https://vimeo.com/339206961) on non-DisplayLink screens.
— Jan
retrodaredevil
09-04-2019, 02:19 AM
Just thought I'd say the generic: "I'm having the same problem." I've had my USB AOC monitor at 1024x768 instead of 1366x768 for a while now.
Once anyone finds a workaround to get me a few pixels back I'd really like that. That extra resolution really helps.
jbrock
09-04-2019, 05:49 PM
The workaround is the script above posted by jei. It will give you 1360x768. Please post if you need help in running it.
Just thought I'd say the generic: "I'm having the same problem." I've had my USB AOC monitor at 1024x768 instead of 1366x768 for a while now.
Once anyone finds a workaround to get me a few pixels back I'd really like that. That extra resolution really helps.
edge-case
10-18-2019, 09:11 AM
The bash script worked very well for me and solved my problem, thank you! I wanted to add a few more details for others like me that might not be familiar with running bash scripts.
Step one - take the code below and copy paste it into a text editor, for example, gedit. Then save the file with any name you want, or something like fixresolution.sh.
Save it in a folder that is easy to find or navigate to.
#!/bin/bash
# Adjust these parameters to your needs.
# These worked for me (AOC E1659Fwu)
OUTPUT="DVI-I-1-1"
HORIZONTAL_RES="1360"
VERTICAL_RES="768"
MODELINE="$(cvt ${HORIZONTAL_RES} ${VERTICAL_RES} | tail -n 1 | awk '{for (i=3; i<=NF; i++) print $i}')"
MODELINE_NAME=$(echo ${MODELINE} | awk '{print $1}' | sed -e 's/^"//' -e 's/"$//')
echo "Modeline:"
echo ${MODELINE_NAME} ${MODELINE}
echo
echo " xrandr --newmode"
xrandr -d :0 --newmode ${MODELINE_NAME} ${MODELINE}
echo " xrandr --addmode (${OUTPUT})"
xrandr -d :0 --addmode "${OUTPUT}" ${MODELINE_NAME}
echo " Set new resolution"
xrandr -d :0 --output "${OUTPUT}" --mode ${MODELINE_NAME}
Step two - open a terminal (Ctrl-Alt-T), and cd to the same directory where fixresolution.sh is stored. Alternatively, you can navigate to that folder in a window, then right click and choose "Open in terminal"
Step three - in the terminal, type:
chmod +x fixresolution.sh
./fixresolution.sh
vBulletin® v3.8.7, Copyright ©2000-2026, vBulletin Solutions, Inc.