Page 1 of 8 123 ... LastLast
Results 1 to 10 of 79

Thread: HOW TO Setup Fujitsu tablet PC bezel buttons

  1. #1
    Join Date
    Apr 2010
    Beans
    78
    Distro
    Ubuntu 12.04 Precise Pangolin

    HOW TO Setup Fujitsu tablet PC bezel buttons

    Participate in developing and testing fujitsu-tablet udev keymaps

    After using a Toshiba Tecra M4 and several HP tx (which all were hot and noisy) I am very pleased with my Fujitsu Lifebook T730 and will definitely go for another Fujitsu Tablet PC when the time has come. As far as I understood all Fujitsu Tablet PC use the same driver for the bezel buttons and those are not working out of the box (yet). I am just a dumb user but there are some experts that make the difference and I am very grateful to them! So I hope I am not the only one being interested in Favux's offer here:

    http://ubuntuforums.org/showpost.php...5&postcount=36!
    Is anyone interested in looking into the bezel buttons further? Cobuntu started to on page 1 of this thread. He didn't get a X key code for any of them in xev as I understand him. And no reaction at all from the first 3.

    If interested list your model and how many bezel buttons and what each one is suppose to do.

    Then enter in a terminal /lib/udev/findkeyboards. The output will show what event# the keyboard is on. Then using that event# enter in a terminal:
    Code:
    sudo /lib/udev/keymap -i input/event# | less
    Then press the bezel button(s) of interest. After pressing the bezel buttons enter esc to exit, and you will see the scan codes and the associated udev key codes. Enter ctrl-z to exit less. Post that output matching each scan code/key code to your bezel button and intended function list.

    We then should be able to figure out how to get them to work. We can use rc.local but as I mentioned to Cobuntu we would ultimately like a fujitsu-tablet udev keymap to place in /lib/udev/keymaps.

    Again I'm using appendix 2 from the Rotation HOW TO and the README.keymap.txt at /usr/share/doc/udev/README.keymap.txt.bz. The README.keymap.txt is basically the instructions to assemble a udev keymap.
    So if you have a Fujitsu Tablet PC please post your results here!

    Also be aware that MagickRotation already supports Fujitsu Tablet PCs with the latest version 1.6.1: http://ubuntuforums.org/showthread.php?t=1967982

    Fujitsu T730 has five bezel buttons [Physical number=printed above the button___printed (in color) left on the button___printed (in color) right on the button]:
    1=1___(in blue) A____(in white) scroll key down
    2=2___(in blue) B____(in white) scroll key up
    3=3___(in white) screen rotation symbol
    4=4___(in blue) Fn
    5=ENT___ (in white) ALT
    Last edited by Cobuntu; July 4th, 2012 at 01:00 AM.

  2. #2
    Join Date
    Apr 2010
    Beans
    78
    Distro
    Ubuntu 12.04 Precise Pangolin

    Using fjbtndrv in Precise

    This is how I managed to install fjbtndrv in 12.04 x64 (there might be a better way, but at least I got it working):
    < ppa was not working and there are missing packages when you download fjbtndrv-2.3.2 and run ./configure: it gives an error: Package requirements (x11 xi xext xtst) were not met:
    No package 'xi' found
    No package 'xtst' found this did not work
    > according to http://katastrophos.net/andre/blog/2...0-u2010-u2020/ run:
    sudo apt-get install libxrandr-dev libxtst-dev libxi-dev libhal-dev
    > then download latest driver to desktop: http://sourceforge.net/projects/fjbtndrv/ and unrar
    > cd /home/USER NAME/Desktop/fjbtndrv-2.3.2
    > ./configure
    > make
    > sudo make install (do not forget that!)
    > done, reboot
    < nothing works in 12.04x64; some scripts are here: /usr/local/lib/fjbtndrv
    > go to https://launchpad.net/~khnz/+archive/ppa
    then open for the latest available: https://launchpad.net/~khnz/+archive...-archive-extra and download all 4 available .deb for the correct platform (i386/amd64) and install in the following order (otherwise fjbtndrv will not install): fsc-btns-kernel-source > fscd > fscrotd > fjbtndrv
    RESTART





    Result when testing the buttons according to Favux's instructions (http://ubuntuforums.org/showpost.php...postcount=36):

    xev+BUTTON 1:
    KeyPress event, serial 36, synthetic NO, window 0x5a00001,
    root 0xae, subw 0x0, time 7093532, (-515,145), root259,197),
    state 0x0, keycode 186 (keysym 0x1008ff79, XF86ScrollDown), same_screen YES,
    XLookupString gives 0 bytes:
    XmbLookupString gives 0 bytes:
    XFilterEvent returns: False


    xev+BUTTON 2:
    KeyPress event, serial 36, synthetic NO, window 0x5a00001,
    root 0xae, subw 0x0, time 7198570, (-616,124), root158,176),
    state 0x0, keycode 185 (keysym 0x1008ff78, XF86ScrollUp), same_screen YES,
    XLookupString gives 0 bytes:
    XmbLookupString gives 0 bytes:
    XFilterEvent returns: False


    xev+BUTTON 3:
    KeyPress event, serial 36, synthetic NO, window 0x5a00001,
    root 0xae, subw 0x0, time 7256350, (-328,187), root446,239),
    state 0x0, keycode 161 (keysym 0x0, NoSymbol), same_screen YES,
    XLookupString gives 0 bytes:
    XmbLookupString gives 0 bytes:
    XFilterEvent returns: False


    xev+BUTTON 4:
    KeyPress event, serial 36, synthetic NO, window 0x5a00001,
    root 0xae, subw 0x0, time 7321409, (-642,135), root132,187),
    state 0x0, keycode 37 (keysym 0xffe3, Control_L), same_screen YES,
    XLookupString gives 0 bytes:
    XmbLookupString gives 0 bytes:
    XFilterEvent returns: False


    xev+BUTTON 5:
    KeyPress event, serial 36, synthetic NO, window 0x5a00001,
    root 0xae, subw 0x0, time 7357163, (-597,212), root177,264),
    state 0x0, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
    XLookupString gives 0 bytes:
    XmbLookupString gives 0 bytes:
    XFilterEvent returns: False




    But with the next step I get stuck:
    > /lib/udev/findkeyboards
    > /lib/udev/findkeyboards: AT keyboard: input/event4
    > sudo /lib/udev/keymap -i input/event4 | less
    „Then press the bezel button(s) of interest. After pressing the bezel buttons enter esc to exit, and you will see the scan codes and the associated udev key codes. Enter ctrl-z to exit less. Post that output matching each scan code/key code to your bezel button and intended function list.“
    < When I press the bezel buttons nothing happens, after pressing ESC it says:
    Press ESC to finish, or Control-C if this device is not your primary keyboard
    scan code: 0x01 key code: esc
    (END)

    Favux's response so far:
    I think right now the fjbtn drv is grabbing the keys which is why things aren't working as expected, but is why you are seeing xev keycodes. So nice work on getting it to compile. Although I'm pretty sure you don't need libhal-dev. And its not clear to me what the deb.s did.

    Each version of fjbtn drv varied how things were implemented so I'd have to go through it step by step to try and figure out exactly what's happening.

  3. #3
    Join Date
    Nov 2008
    Beans
    9,635
    Distro
    Ubuntu 12.04 Precise Pangolin

    Re: HOW TO Setup Fujitsu tablet PC bezel buttons

    Alright, so far for our sources list we have the following.

    Sources:
    Basic Instructions: /usr/share/doc/udev/README.keymap.txt
    Original thread: http://ubuntuforums.org/showthread.php?t=1967982
    Appendix 2 and elsewhere: http://ubuntuforums.org/showthread.php?t=996830
    And of course Robert Gerlach's stuff


    In appendix 3 on the Rotation HOW TO we figured out scroll for the HP Elitebook's jog dial. So we should be able to do that for your scroll keys.

    At this point to get our fujitsu-tablet udev keymap we want to go through step a) and b) in appendix 2 (or my instructions in the quote in your first post) with the fujitsu-tablet.ko from Magick Rotation installed. Which means you need to remove the fjbtn stuff you have installed so it isn't interferring with anything.

  4. #4
    Join Date
    Apr 2010
    Beans
    78
    Distro
    Ubuntu 12.04 Precise Pangolin

    Re: HOW TO Setup Fujitsu tablet PC bezel buttons

    Favux, I removed fjbtndrv/fscrotd/fscd/fsc-btns-kernel-source via Software Center. I have no idea how to remove my other step:
    > cd /home/USER NAME/Desktop/fjbtndrv-2.3.2
    > ./configure
    > make
    > sudo make install

    Also isn't fujitsu-tablet.ko getting lost this way - I did not have installed that before I installed any of the fjbtndrv stuff - but in MagickRotation's 'fujitsu-tablet_README.txt' it says that this is required (and not provided for in kernel 3.2)?

  5. #5
    Join Date
    Nov 2008
    Beans
    9,635
    Distro
    Ubuntu 12.04 Precise Pangolin

    Re: HOW TO Setup Fujitsu tablet PC bezel buttons

    Ah, OK. That means you have the early version of fujitsu-tablet from fjbtndrv. We definitely don't want that. We want to determine what the buttons are from the fujitsu-tablet.ko that got accepted to the kernel. I have to check versions but he fixed the buttons for several models. So the fujitsu-tablet.ko that first got accepted (3.3 kernel?) is buggy and it is the next kernel (3.4?) where the fixes were applied. Which is the one Magick uses.

    So after you uninstall it use the one in Magick. Just follow the directions in MagickExtras to install it.

    If the Makefile is complete (fingers crossed) what you should be able to do is go back into the folder where you did:
    Code:
    sudo make install
    and to remove it run:
    Code:
    sudo make uninstall

  6. #6
    Join Date
    Apr 2010
    Beans
    78
    Distro
    Ubuntu 12.04 Precise Pangolin

    Re: HOW TO Setup Fujitsu tablet PC bezel buttons

    Ok, sudo make uninstall seemed to work fine, following through MagickExtras instructions again showed that everything was still there and MagickRotation was and is working fine. I hope that everything is removed now, the only thing I noticed was, that already after removing the fjbtndrv debs after swivelling CellWriter seemed to have reset into training mode again.

    Here is the xev output on Fujitsu T730's five bezel buttons [Physical number=printed above the button___printed (in color) left on the button___printed (in color) right on the button]:

    (...)

    pressing button 1=1___(in blue) A____(in white) scroll key down:
    KeyPress event, serial 36, synthetic NO, window 0x6c00001,
    root 0xae, subw 0x0, time 15655825, (-224,245), root:(550,297),
    state 0x0, keycode 186 (keysym 0x1008ff79, XF86ScrollDown), same_screen YES,
    XLookupString gives 0 bytes:
    XmbLookupString gives 0 bytes:
    XFilterEvent returns: False

    KeyRelease event, serial 37, synthetic NO, window 0x6c00001,
    root 0xae, subw 0x0, time 15655969, (-224,245), root:(550,297),
    state 0x0, keycode 186 (keysym 0x1008ff79, XF86ScrollDown), same_screen YES,
    XLookupString gives 0 bytes:
    XFilterEvent returns: False



    pressing button 2=2___(in blue) B____(in white) scroll key up:
    KeyPress event, serial 37, synthetic NO, window 0x6c00001,
    root 0xae, subw 0x0, time 15688707, (-213,196), root:(561,248),
    state 0x0, keycode 185 (keysym 0x1008ff78, XF86ScrollUp), same_screen YES,
    XLookupString gives 0 bytes:
    XmbLookupString gives 0 bytes:
    XFilterEvent returns: False

    KeyRelease event, serial 37, synthetic NO, window 0x6c00001,
    root 0xae, subw 0x0, time 15688912, (-213,196), root:(561,248),
    state 0x0, keycode 185 (keysym 0x1008ff78, XF86ScrollUp), same_screen YES,
    XLookupString gives 0 bytes:
    XFilterEvent returns: False



    pressing button 3=3___(in white) screen rotation symbol:
    KeyPress event, serial 38, synthetic NO, window 0x6c00001,
    root 0xae, subw 0x0, time 15870768, (-161,237), root:(613,289),
    state 0x0, keycode 161 (keysym 0x0, NoSymbol), same_screen YES,
    XLookupString gives 0 bytes:
    XmbLookupString gives 0 bytes:
    XFilterEvent returns: False

    KeyRelease event, serial 39, synthetic NO, window 0x6c00001,
    root 0xae, subw 0x0, time 15870883, (-161,237), root:(613,289),
    state 0x0, keycode 161 (keysym 0x0, NoSymbol), same_screen YES,
    XLookupString gives 0 bytes:
    XFilterEvent returns: False



    pressing button 4=4___(in blue) Fn:
    KeyPress event, serial 41, synthetic NO, window 0x6c00001,
    root 0xae, subw 0x0, time 16018411, (-288,251), root:(486,303),
    state 0x0, keycode 37 (keysym 0xffe3, Control_L), same_screen YES,
    XLookupString gives 0 bytes:
    XmbLookupString gives 0 bytes:
    XFilterEvent returns: False

    KeyRelease event, serial 41, synthetic NO, window 0x6c00001,
    root 0xae, subw 0x0, time 16018661, (-288,251), root:(486,303),
    state 0x4, keycode 37 (keysym 0xffe3, Control_L), same_screen YES,
    XLookupString gives 0 bytes:
    XFilterEvent returns: False



    pressing button 5=DEL___ (in white) ALT:
    KeyPress event, serial 42, synthetic NO, window 0x6c00001,
    root 0xae, subw 0x0, time 16068691, (-378,308), root:(396,360),
    state 0x0, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
    XLookupString gives 0 bytes:
    XmbLookupString gives 0 bytes:
    XFilterEvent returns: False

    KeyRelease event, serial 43, synthetic NO, window 0x6c00001,
    root 0xae, subw 0x0, time 16068841, (-378,308), root:(396,360),
    state 0x8, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
    XLookupString gives 0 bytes:
    XFilterEvent returns: False

    (...)

    sudo /lib/udev/keymap -i input/event4 | less still does not work, so I guess either fjbtndrv is not completely removed or I am missing something. Maybe it were best to make a clean install on an external harddrive...
    Last edited by Cobuntu; July 2nd, 2012 at 04:17 PM. Reason: clarifying xev output

  7. #7
    Join Date
    Nov 2008
    Beans
    9,635
    Distro
    Ubuntu 12.04 Precise Pangolin

    Re: HOW TO Setup Fujitsu tablet PC bezel buttons

    Looks good. Check in /usr/src that the only thing you see that could be related to Fujitsu and Robert Gerlach is fujitsu-tablet-20120404-gerlach. If so then it all should be cleaned out.

    With the emoticons in your last post: could you edit it and check the don't show emoticon option or else add a space between the symbols its taking as an emoticon? Also you might want to lable each keypress and keyrelease event pair with the bezel key you listed before.

    Let's start with scroll. The two scroll bezel button aren't working correct?

  8. #8
    Join Date
    Apr 2010
    Beans
    78
    Distro
    Ubuntu 12.04 Precise Pangolin

    Re: HOW TO Setup Fujitsu tablet PC bezel buttons

    Ok, I think there is one strange thing, I have the same folder twice, on different levels:
    /usr/src/fujitsu-tablet-20120404-gerlach
    /usr/src/MagickExtras/fujitsu-tablet-20120404-gerlach
    Both contain: dkms.conf, fujitsu-tablet.c, Makefile



    And you are correct, none of the buttons are working.

  9. #9
    Join Date
    Nov 2008
    Beans
    9,635
    Distro
    Ubuntu 12.04 Precise Pangolin

    Re: HOW TO Setup Fujitsu tablet PC bezel buttons

    You're OK with the double folder thing. That's what the dkms does as part of its install routine.

    Alright. I'll have some stuff for scroll here in this post in a bit.


    Edit: OK, let's try to figure out the kernel scan code. Enter in a terminal:
    Code:
    /lib/udev/findkeyboards
    and post the output.
    Last edited by Favux; July 2nd, 2012 at 04:11 PM.

  10. #10
    Join Date
    Apr 2010
    Beans
    78
    Distro
    Ubuntu 12.04 Precise Pangolin

    Re: HOW TO Setup Fujitsu tablet PC bezel buttons

    Code:
    /lib/udev/findkeyboards
    results in:
    Code:
    AT keyboard: input/event4

Page 1 of 8 123 ... LastLast

Tags for this Thread

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •