thanks to Linux-SWAT helping me a lot, I could make my DisplayLink adapter work with the Pandora under Slackware (SL4P).
The method described here should in theory make any DisplayLink compatible adapter work.
What is DisplayLink?
DisplayLink is a technology allowing to drive a DVI or VGA display connected (via the DisplayLink adapter) to the USB port of a computer. It can use resolutions far beyond the Pandora's 800x480 pixels. I used a 17" VGA TFT display with 1280x1024 pixels.
This, together with using an external keyboard and mouse, makes working on the Pandora at home almost a desktop-PC-like experience.
(btw: if you're wondering: The external keyboard/touchpad combination on this photo is a Speedlink SL-6498-SBK FUTURA, using 2.4GHz wireless technology. Works very nicely on the Pandora's USB OTG port with an OTG adapter. At home one would probably simply connect a USB hub to the Pandora, and the hub would connect all at once: DisplayLink, keyboard, mouse, maybe network. A complete USB docking station! )
Additional use cases:
Also, it would allow to connect a projector and do presentations with the Pandora.
What's not really possible with DisplayLink is watching movies or playing most games, as the USB interface's bandwidth does now allow for too much movement on the screen. DisplayLink compresses the image data losslessly, mainly based on avoiding to transfer data of parts of the image that did not change. So e.g. for text processing, only very little data has to be transmitted and only little CPU power is needed.
But for movies and games, the TV Out interface is very suitable.
My current status as of 2012-11-28:
What's possible for now is this:
You plug in the DisplayLink adapter, then reboot the Pandora (or at least restart the X server). Depending on how the setup is configured via /etc/X11/xorg.conf, you then either have only the external display (Pandora's display is black), or a combination of both, with the desktop spanning both screens (you can move windows across both screens or even make a window span both screens).
Cloning the Pandora's 800x480 screen to the external display is also said to be possible, but I couldn't make that work yet.
Most important To-Dos as of 2012-11-28:
- Port the DisplayLink solution to SuperZaxxon firmware (need help with that)
- Enable hotplug (so no X server restart is needed after connecting / disconnecting the adapter. This ought to be possible somehow)
- Make cloning of the Pandora display work (it's only a matter of finding the correct xorg.conf entries I guess)
The green screen is a good sign (green as the hope ): This means that the DisplayLink driver works and talks correctly to the adapter, it only does not get any input via its framebuffer device (/dev/fbX) yet:
Desktop of Pandora extended to above and main screen (with task bar) is on the DisplayLink screen. You can see the browser window on the DisplayLink screen also spanning the Pandora's screen at the bottom:
With such an extended desktop, you can of course also arrange one windows per screen, to have a convenently partitioned work space:
Here you can see the configuration, where only the DisplayLink screen is active, and the Pandora's screen is dark:
And this is my first (failed) attempt to clone the Pandora's screen. You can see the upper left area with the file manager window is indeed cloned, but the screen dimensions and resolutions don't match yet:
Okay, so how did we achieve that?
Here is what I did, according to the great advice of Linux-SWAT (THANKS again!)
(I removed the tutorial from this forum post and moved it to the Wiki now.
Help to improve the setup and port to SuperZaxxon!
- As stated in the tutorial, one of the most annoying things about this setup is, that X needs to be restarted when DisplayLink is connected or disconnected.
That can certainly be automated via hotplug in some way. Maybe even the restart isn't necessary. I don't know yet. Hints are welcome!
- It would be great, if all that also worked in SuperZaxxon. Linux-SWAT has asked notaz already, to include the udl driver into the SZ kernel. However, someone would need to compile udlfb and the X driver for SuperZaxxon, too. I may try this soon, but if anyone else wants to do that, feel free please!
- Donate for Linux-SWAT's project!