Tuesday, August 30, 2011

HOWTO: Linux on the Dell Inspiron Duo

I recently invested in a new toy. A Dell Inspiron Duo netbook/tablet convertable:


I was pleased to see that most all of the netbook was functional OOTB with the 3.0 variation of the Linux kernel my latest Bodhi build was running (including multi-touch on the track pad). I plan to write a full review later on, today however I would simply like to share two tricks for getting some important functionality out of your Dell Duo while running Linux.

Making the Screen Work:
Without a working touch screen the Duo is basically just an over priced netbook. To get the screen working you need to simply add one thing to your grub2 command line. On most distributions you can add the needed command to your /etc/default/grub file. Look for the line that starts with

GRUB_CMDLINE_LINUX_DEFAULT

If this line does not exist, add it. Then add the option usbhid.quirks=0x0eef:0x725e:0x40 to it. Your line should now look something like this:

GRUB_CMDLINE_LINUX_DEFAULT="usbhid.quirks=0x0eef:0x725e:0x40"

Finally, run

sudo update-grub

On your next reboot your touch screen should now be functional.

Adding Key Bindings for Changing Modes:
On Windows 7 the tablet adds a touch layer UI when you switch the laptop into tablet mode. It does this by detecting when the screen changes positions. To add this functionality to Linux you simply need to run the following commands as root -

setkeycodes e073 148
setkeycodes e074 149

Once you have run these commands changing the position of the screen to all the way down (or bring it up) each triggers a different "key press" your desktop key binding manager should be able to address. On Bodhi (or any E desktop for that matter) you can easily configure these key presses to change profile using the enlightenment_remote command. Also worth noting is you will need to run these commands every time you start up your computer. I just added them to my /etc/rc.local file.

Have any questions feel free to drop a comment below and I'll do my best to help you get it sorted out.

~Jeff Hoogland

36 comments:

  1. You'll love the Duo... Mine is one of the best purchases I ever made. Take a look at the Ubuntu forums for more tricks & tweaks...

    http://ubuntuforums.org/showthread.php?t=1658635&highlight=inspiron+duo

    ReplyDelete
  2. Consider switching your DPI. I believe that the native PPI of your LCD is much higher than the DPI of your software. If that's the case, then when the software thinks that it's representing graphical elements with the right amount of pixels, it's actually using too few. This makes everything on the screen "too small" from a User Interface / Human Computer Interaction standpoint. As a rule of thumb, you should be setting your DPI equal to your panels PPI in slate mode. Otherwise, you're aiming your fingers at stuff that is physically smaller than it is meant to be in software. In clamshell mode, it doesn't matter as much because you have the more nuanced input interfaces available like a proper pointing device that controls a cursor. Hopefully, this makes sense.

    ReplyDelete
  3. Seriously i have look for this solution 2 week and i m really happy to use my touch screen in backtrack YOUR A KING thank you

    ReplyDelete
  4. Hi Jeff,
    I got most of this running as you were showing but having an issue with adding the keycodes to the rc.local file.

    What I have in the /etc/rc.local is:

    #!/bin/sh -e
    #
    # rc.local
    ~
    # Automount all local drives
    automount
    #Reset Network Manager State
    ~
    [ -f $nmpid ] && run $nmpid
    setkeycode e073 148
    setkeycode e074 149
    exit 0

    Am I missing something? Hopefully it is just me over thinking and missing the obvious.

    Thanks, and Bodhi is fantastic from what I have experienced so far. Great job.

    ReplyDelete
  5. Put the commands above the network manager clear, but below the automount command.

    ReplyDelete
  6. Hi Jeff,

    Followed your instructions and stuck on last part where you say you can easily bind keys using enlightenment_remote. New to Enlightenment and can't find how this binding is done. Can you please share the command you have in rc.local?

    Thanks,
    Tom

    ReplyDelete
  7. Tom,

    You set up keybindings via the GUI. Look under Settings->Input for the keys selection.

    ReplyDelete
  8. Thanx for the tut Jeff, to save me pulling out all of my hair, how do you set the profile via the keybindings settings ?

    ReplyDelete
  9. well, i don't believe you've addressed it properly then. because i can't seem to do it either.

    ReplyDelete
  10. Hi Jeff. Thanks for bodhi linux - I am loving it on my duo. I have searched to no avail however for a solution to add a right click when using the touchscreen.
    I know from cabonoses' ubuntu forum that one can access an accessibility menu for the mouse on stock linux but I don't see that with bodhi.
    Thanks for any help!

    ReplyDelete
  11. Donnie - Unfortunately under Enlightenment there is no way to currently emulate a "right click". The touch interface is largely designed to not need such a function though.

    qrrbrrbirlbel81 - If you are having issues describe what you have done and what is happening. I can't read minds.

    ReplyDelete
  12. Thank you Jeff. I have been able to use easystroke to address any issues I was having, mentioned in the ubuntu duo forums. Not sure if you guys have it in your repository, but it is a fantastic tool.
    Sorry to hear you're giving up the duo. It is a wonderful device. Really looking forward to seeing Bodhi on ARM as well. A Transformer running Bodhi might be the perfect device!

    ReplyDelete
  13. good point. at first i couldn't get the keypress to work. but then i realized i was stupid and should use "sudo". now i've probably reinstalled bhodi 7-8 times trying to link the keypress to the profile correctly. i'm not quite sure what i'm doing wrong. but, a sample of what you have as the command for the netbook profile and the tablet profile would be excellent.

    ReplyDelete
  14. Donnie - Glad to works for now. I've actually gotten into contact with the E devs so hopefully this will be a feature we can get built into E itself (press+hold = right click).

    Qrr - I have a really hard time helping those that refuse to help themselves. Did you read the post I linked to? Also reinstalling many times is way excessive! It would have taken far less time to register on our forums and ask for help.

    If you need more help than what is listed in that post please open a support request on our forums.

    ReplyDelete
  15. yes, i did read that post. btw that link is linked to this page. but i did read this page http://jeffhoogland.blogspot.com/2011/09/enlightening-your-dell-duo-with-linux.html where you mentioned the code i'm trying and failing to link up properly to the keypress associated with flipping the screen. everytime i do it i get a nasty error and have to reload the os.

    ReplyDelete
  16. well, the other link you had linked to this page....the new one links to the page i mentioned....

    ReplyDelete
  17. If you have a way of getting the touchscreen cursor to behave when the screen is rotated that would be great. I have tried the scripts from the ubuntu duo forum with no luck. The touchscreen-helper package seems to be for natty and maverick. PPA here: https://launchpad.net/~plippo/+ppa-packages

    Is it possible to install these since bodhi uses an updated kernel? Not quite that linux savy and I don't want to screw up an otherwise wonderful install!

    Any bit of insight is apreciated, not looking for any in depth tech support! Thanks again, I am really loving the stripped down nature of bodhi.

    ReplyDelete
  18. Donnie -

    I've not used those packages on the Duo before, but I know they work fine on Bodhi as I use them on the T101MT I own. Give them a go - they can't mess anything up. Should disable the touch screen until you remove them at worst :)

    ReplyDelete
  19. I have bodhi set up on dell duo and have tried some of the ubuntu setting perticularly the one for flip screen it worked when I had ubuntu 11.10 installed but on bohdi the touch screen dosent tract corectly left an right is up nd down and up and down is left and right and the arrowe is not in sync with the finger location. I used this page any suggetions http://ubuntuforums.org/showpost.php?p=10398914&postcount=194

    ReplyDelete
  20. Sounds like that script doesn't work properly.

    ReplyDelete
  21. Great fix !

    For those on Fedora, use this:
    sudo grubby --update-kernel=/boot/vmlinuz-$(uname -r)
    --args="usbhid.quirks=0x0eef:0x725e:0x40"

    Fedora does not have update-grub. Only Debian and Ubuntu do.

    Search the Fedora users mailing list archive for more details.

    I **LOVE** my Duo.

    Its amazing how much better it is with Linux (F16 to be exact) than it is with Windows. Its easily twice as fast.

    Dell could sell a LOT of these things preloaded with Linux.

    ReplyDelete
  22. What is everyone using for a virtual keyboard ?

    ReplyDelete
  23. I use E17's built in keyboard as demoed here.

    ReplyDelete
  24. Thank you!!!thiw as the easiest way to have it done :) from the first try! no egalaxtouch or other things needed to make it done..just one line and a reebot!

    ReplyDelete
  25. anyone using ubuntu 11.10 on it? N with the docking station?

    ReplyDelete
  26. Hi, guys! I have a Dell Duo and installed the Linux Mint. I downloaded the eGalax driver and installed it. Apparently everything worked fined...until the next time I turned on the computer and logged in. For some reason now the touch screen is not working properly. Every time I touch the screen the cursor goes to the left top corner. I tried re-installing the eGalax, caibrating and it didn't work. Then I found this blog and tried the grub thing but it didn't make any difference. Any idea about what I should do to fix my touch screen and make it work again?

    ReplyDelete
  27. Do a clean Linux install and follow the instructions detailed here.

    ReplyDelete
  28. would you mind detailing how to do this in Suse?

    ReplyDelete
  29. I just installed Bodhi 1.4.0 on my Inspiron Duo and tried following the instructions here for activating the touch screen with no luck. I finally tried a complete re-install, still no luck. Is 1.4.0 somehow different? Am i missing something?

    Thanks

    ReplyDelete
    Replies
    1. Someone on our forums mentioned the above trick no longer works with the latest Linux kernel.

      Install an older kernel and it will still work.

      Delete
  30. For the new kernel, intall this :eGTouch daemon driver 2.3.1627 at
    http://210.64.17.162/web20/eGalaxTouchDriver/linuxDriver.htm

    ReplyDelete
  31. i dont know jack about linux. how do i view the grub command line in the first place to add to it??
    im running linux mint 12 off a thumbdrive with 2gb persistence

    can someone help me out
    Thanks :)

    ReplyDelete
    Replies
    1. In terminal:
      sudo nano /etc/default/grub

      Delete
  32. Looks like in Linux Mint 13 (Maya) the touch screen trick stops working. Any clue? Thanks in advance!

    ReplyDelete
  33. Hi There,
    Wondered if you had any updates on this subject? I purchased a Dell Duo recently intending to run Libre Office in my business. Neither Ubuntu Touch or the various threads I've attempted to follow make the Duo touch screen viable and I plan to reload Win 7 and ebay it if there's no option with-in my skill-set. I'm reasonably tech but replacing kernels is a lesson that, unfortunately, I'm not able to commit time to.

    Thanks for all you help and commitment.
    M

    ReplyDelete
    Replies
    1. Haven't had this hardware for a few years now - sorry!

      Delete