- Saved searches
- Use saved searches to filter your results more quickly
- License
- Seeed-Studio/seeed-linux-usbdisp
- Name already in use
- Sign In Required
- Launching GitHub Desktop
- Launching GitHub Desktop
- Launching Xcode
- Launching Visual Studio Code
- Latest commit
- Git stats
- Files
- README.md
- About
- Connect a Second Monitor to Linux Mint with a USB to HDMI Adapter
- USB to HDMI Adapter
- Physical Installation
- Download the DisplayLink Driver
- Driver Installation
- Troubleshooting
- Configure Monitors
- Performance Testing
- New Kernels
- Other Linux Variants
- Sound Issue
- Conclusion
- Disclaimer
- How to properly install USB display driver for Fresco Logic FL2000DX on Ubuntu?
- Solution 2
- Solution 3
Saved searches
Use saved searches to filter your results more quickly
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session.
USB monitor Linux kernel driver.
License
Seeed-Studio/seeed-linux-usbdisp
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Name already in use
A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Sign In Required
Please sign in to use Codespaces.
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
Launching Xcode
If nothing happens, download Xcode and try again.
Launching Visual Studio Code
Your codespace will open once ready.
There was a problem preparing your codespace, please try again.
Latest commit
Git stats
Files
Failed to load latest commit information.
README.md
Driver for Linux USB Display Project
You can use it for multi-screen expansion display and multi-screen clone display.
Get more detail about Seeed Linux USB Display from: WIKI
Take Raspberry Pi as an example.
$ sudo apt-get -y --force-yes install raspberrypi-kernel-headers raspberrypi-kernel
$ cd; git clone https://github.com/Seeed-Studio/seeed-linux-usbdisp.git
$ cd ~/seeed-linux-usbdisp/drivers/linux-driver/
- Go to ~/seeed-linux-usbdisp/drivers/linux-driver/xserver_conf/, And there are five xorg.config sample files in this folder. Please copy one of the files you required to /usr/share/X11/xorg.conf.d/ (You can also modify the xorg.config file by yourself)
$ cd ~/seeed-linux-usbdisp/drivers/linux-driver/xserver_conf/ $ sudo cp /usr/share/X11/xorg.conf.d/
$ sudo service lightdm restart
Contributing to this software is warmly welcomed. You can do this basically by
forking, committing modifications and then pulling requests (follow the links above
for operating guide). Adding change log and your contact into file header is encouraged.
Thanks for your contribution.
Seeed Studio is an open hardware facilitation company based in Shenzhen, China.
Benefiting from local manufacture power and convenient global logistic system,
we integrate resources to serve new era of innovation. Seeed also works with
global distributors and partners to push open hardware movement.
About
USB monitor Linux kernel driver.
Connect a Second Monitor to Linux Mint with a USB to HDMI Adapter
Having a second or even a third monitor attached to your PC gives a helpful increase in screen space. Being able to have more windows and applications visible at once improves productivity and can reduce the stress of computer usage.
Generally, the number of screens is limited by the number of PC interfaces. Especially for laptops, which often have fewer ports than desktop/tower systems. Fortunately, the number of monitor ports can be increased by the addition of a simple adapter. For Windows users it’s easy. For Linux users, well it is quite easy too, as this article explains.
USB to HDMI Adapter
An adapter can “change” a spare USB port into HDMI port. I bought this Cable Matters USB 3.0 to HDMI Adapter from Amazon for £51. Although it is entitled “…for Windows“, it operates fine with Linux. I got it working as detailed below. By the way, I am using Linux Mint 21.1 MATE on a laptop made by MSI, model cx61.
The adapter model number is 103046.
Physical Installation
Start by physically installing the adapter. Disconnect your monitor from the HDMI port, if connected, and reconnected it to a USB 3 port, via the interface adapter.
Download the DisplayLink Driver
Download the Displaylink (who make the adapter’s chipset) driver from here:
https://www.synaptics.com/products/displaylink-graphics/downloads/ubuntu. Under “Latest Official Driver“, click the “Download” button, then “Accept” to accept the license agreement and save the file, which will be saved as “‘DisplayLink USB Graphics Software for Ubuntu5.6.1-EXE.zip‘” or similar. Note: By the time you read this article, which was last updated January 2023, the version and name of the file might have changed slightly, as might the download URL. If so, it should be quite easy to find it with a Google search of “Linux driver for Displaylink HDMI adapter”.
Driver Installation
Unpack the zip file to reveal a single runnable file. Run it. Example commands:
# unzip "DisplayLink USB Graphics Software for Ubuntu5.3.1-EXE.zip" # ./displaylink-driver-5.3.1.34.run Verifying archive integrity… 100% All good. Uncompressing DisplayLink Linux Driver 5.3.1.34 100% DisplayLink Linux Software 5.3.1.34 install script called: Distribution discovered: Linux Mint 20.1 .
Enter “y” in answer to the question “Do you want to continue? [Y/n]”
Much more stuff is printed at this point. Packages are installed from standard repositories, including dkms and libdrm-dev. A kernel module is built (evdi.ko). Finally a message appears:
Reboot your system to make sure the driver is properly picked up.
Troubleshooting
If errors happen with the installation, please make sure you downloaded the latest version of the driver. For example, I initially tried to install driver version 5.3.1 which failed with various compilation errors on Mint 21.1 (based on Ubuntu 22.04), although it had worked perfectly on Mint 20 (Ubuntu 20.04). Downloading the latest version fixed the problem.
Configure Monitors
If you have more than one monitor connected, it will probably be necessary to configure the layout. I am running Linux 21.1 “MATE” version. So I used the “Monitors” graphical application to arrange my monitors and desktop as desired. If you are using Mint Cinnamon, or even another distribution altogether, there will be an equivalent app, but I am not sure what it is called.
Performance Testing
An HP Pavillion 23 XI monitor was connected over the adapter, at a resolution of 1920×1080. There was no noticeable decline in performance versus a direct HDMI connection. I’m not a gamer and use the monitor for normal desktop work, such as web surfing and business applications.
Little CPU load was imposed by the adapter. For example, watching an HD video on the relevant screen, or just moving a window backwards and forwards (fully rendered), brought a “DisplayLinkManager” application to use 140% of CPU. On my powerful but ageing laptop (CPU: i7-4702 MQ, a fourth generation i7 with 4 cores/8 threads), that is engaging less than 1.5 out of 8 available cores. In fact watching the HD video usually imposed about 60% of one CPU.
I then switched the adapter to a new Dell U2719D 27″ Widescreen monitor, at a resolution of 2560 x 1440. That’s 2K, and the maximum resolution of the USB adapter. Again, there was no noticeable degradation in performance in normal “office” use. And watching this test 2K video stressed the CPU to, again, about 140% of one thread or less.
Not sure what difference it makes, but the laptop graphics card is an Nvidia GeForce GT 740M.
Performance should therefore not be an issue, except perhaps in base model PCs with 2 threads or less.
New Kernels
It might be expected that the driver would need to be rebuilt with every new kernel installed on the PC. This appeared not to be the case. A kernel install did not appear to trigger a rebuild.
Other Linux Variants
This DisaplayLink driver is likely to work on other Debian based distros, for example Ubuntu. Red Hat/Fedora based systems might need a slightly different approach.
Sound Issue
After installing the driver on Linux Mint 20 (and 21) MATE, there was an issue with no sound being produced from Youtube videos and applications like VLC.
Under MATE sound preferences -> “Output” tab, a new output had appeared, “USB3.0 to HDMI Adapter Digital Stereo (IEC958)”. It was activated, presumably directing all sound output to an imaginary audio device provided, somehow, by the adapter. Perhaps intended for monitors with built in speakers.
I clicked the radio button for “Built-in Analogue Stereo” instead. Sound started. Problem fixed. However, it reverted after a reboot. A permanent fix was to disable the “ghost” USB adapter sound device: Sound Preferences -> Hardware tab -> scroll down to “USB3.0 to HDMI Adapter”, highlight it, then click “Profile” followed by “Off”. Fixed.
Conclusion
Being able to connect a monitor via USB obviously increases the number of monitors you can have, and provides a useful upgrade path where existing ports are limited. By adding a USB 3 hub, and more adapters, it should be possible to connect many screens to a single laptop.
I didn’t use a hub, but had three monitors connected and running fine: one via the USB to HDMI adapter, another directly to the laptop’s HDMI port, and third, older monitor to the VGA port. All were different resolutions, and it all worked.
Disclaimer
This article is simply a record of a procedure carried out on my laptop. No guarantee or assurance of any kind is provided that the same procedure will work for you.
How to properly install USB display driver for Fresco Logic FL2000DX on Ubuntu?
On which kernel versions does this driver work?
This driver is tested on Ubuntu 14 LTS as well as some Android platforms with kernel version 3.10.x. This driver source might not compile on newer kernels (eg. 4.0 or above) because of the fast-moving API changes in the mainstream kernel. You might need to adapt it for your own use.
Solution 2
Telling the full story so all the keywords will be included in my response for future searchability:
I’ve been looking everywhere for a driver or chipset info for the unbranded «Mini HD USB 3.0 HDMI Adapter» for years. I finally dug though enough duck duck go results to find a page that claims it uses the Fresco logic USB display driver, which brought me here.
I was able to get the driver to work using Linux Mint 18.2 «Sonya» with linux-headers-4.13.0-45-generic , but the instructions on git hub were not perfect.
- Clone the repository git clone https://github.com/FrescoLogic/FL2000.git (If you don’t have git installed you can install it with sudo apt install git )
- Navigate to src: cd FL2000/src/
- Run make (contrary to the instructions, you don’t need to edit KERNEL_PATH as the bug was fixed)
- Insert the module sudo insmod fl2000.ko
- Change to sample cd ../sample/
- Run make (I got an error here, but was able to test the driver and see an image despite the error)
- Run sudo ./fltest 0
This crashed the first time I ran it but worked when I re-ran it a second time. Running it a 3rd time, it hangs my system.
Rebooting with the device plugged into the USB port seems to help. It will work at first launch. However, during shutdown my system is unable to disconnect from it’s built in RAMDrive and will hang, ctrl-alt-del will move it a few steps further, but then it hangs again forcing me to do a hard shutdown.
I’m not sure if fixing the error when running make in the sample directory make: /opt/hi3798/arm-hisiv200-linux/bin/arm-hisiv200-linux-gnueabi-gcc: Command not found would make this any more stable.
I googled and came across this thread saying I «need to add head file » — I didn’t know how to do that so I followed the recommendation in this thread mentioning I should install some gcc packages:
sudo apt-get install gcc-arm-none-eabi gcc-arm-linux-gnueabi
After installing, make progressed further, but I am now getting a make: /opt/hi3798/arm-hisiv200-linux/bin/arm-hisiv20/opt/hi3798/arm-hisiv200-linux/bin/arm-hisiv200-linux-gnueabi-gcc: Command not found error.
Installing ia32-libs hasn’t helped.
Solution 3
Just in case someone is still looking, it seems there is a clean-sheet re-implementation of the driver, by klogg from opensource community.