maemo.org - Talk

maemo.org - Talk (https://talk.maemo.org/index.php)
-   Applications (https://talk.maemo.org/forumdisplay.php?f=41)
-   -   [ANNOUNCE] External Keyboard Support - extkbd (https://talk.maemo.org/showthread.php?t=65577)

freemangordon 2010-11-13 18:40

[ANNOUNCE] External Keyboard Support - extkbd
 
2 Attachment(s)
OK guys, here it is - UI for full language/layout support for external keyboard attached to N900. Tested to work with both USB and Bluetooth keyboards.

INSTALLATION - enable Extras Development repository and install External Keyboard Support. This should install xkb-data-extkbd package too.


CONFIGURATION
- new applet should appear in settings->personalisation . Click it while external keyboard is attached - you should be given an UI to play with.

There is no need to run extkbd UI every time you connect keyboard, only for initial setup and if you need to change layout or setup new keyboard.

"Cannot open /usr/share/hal/fdi/policy/20thirdparty/99-x11-external-keyboard.fdi - no such file or directory" message appears first time you start control panel applet. Just ignore it :)

WARNING: Usual warnings for using software from extras-devel apply. You've been warned.

UNINSTALLING:
In usual way using Application Manager


UPDATE: Seems that there is a conflict with bt-hid-scripts package, will try to resolve it and will upload fixed version. For now you should deinstall bt-hid-scripts before installing extkbd.

UPDATE2: For some reason me and qole did not agree on how to cleanup conflict between bt-hid-scripts and extkbd, so you have to make choice which one to use. Good news is that if you choose extkbd there is also mouse support available without using bt-hid-scripts, look here
http://talk.maemo.org/showthread.php?p=882380

UPDATE3: 29-11-2010 There should be no conflict between extkbd and latest version of bt-hid-scripts according to qole, not tested though.

UPDATE4: 13.02.2011 Input BT plugin is auto-enabled, no more need to edit /etc/bluetooth/main.conf. Stock Bluetooth UI now has an option to connect BT HID devices. And there is portrait mode support :)

Keneraali 2010-11-13 20:25

Re: [ANNOUNCE] External Keyboard Support - extkbd
 
...
Unpacking xkb-data-extkbd (from .../xkb-data-extkbd_1.8-1-1m5_all.deb) ...
dpkg: error processing /var/cache/apt/archives/xkb-data-extkbd_1.8-1-1m5_all.deb (--unpack):
trying to overwrite `/usr/share/X11/xkb/geometry/pc', which is also in package bt-hid-scripts
dpkg-deb: subprocess paste killed by signal (Broken pipe)
Errors were encountered while processing:
/var/cache/apt/archives/xkb-data-extkbd_1.8-1-1m5_all.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

Now it doesn't let me remove or install neither of those packages even after reboot. Apt-get -f install didn't help. Is reflashing the only solution to this? Luckily I have fresh back-up.

Edit: You're too slow. :)
dpkg -P bt-hid-scripts and apt-get -f install helped.

freemangordon 2010-11-13 23:51

Re: [ANNOUNCE] External Keyboard Support - extkbd
 
Quote:

Originally Posted by Keneraali (Post 872621)
...
Unpacking xkb-data-extkbd (from .../xkb-data-extkbd_1.8-1-1m5_all.deb) ...
dpkg: error processing /var/cache/apt/archives/xkb-data-extkbd_1.8-1-1m5_all.deb (--unpack):
trying to overwrite `/usr/share/X11/xkb/geometry/pc', which is also in package bt-hid-scripts
dpkg-deb: subprocess paste killed by signal (Broken pipe)
Errors were encountered while processing:
/var/cache/apt/archives/xkb-data-extkbd_1.8-1-1m5_all.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

Now it doesn't let me remove or install neither of those packages even after reboot. Apt-get -f install didn't help. Is reflashing the only solution to this? Luckily I have fresh back-up.

Edit: You're too slow. :)
dpkg -P bt-hid-scripts and apt-get -f install helped.

Sorry for being slow but it was Saturday evening ;) . Did you succeed to install extkbd?

Cheers.

MohammadAG 2010-11-13 23:59

Re: [ANNOUNCE] External Keyboard Support - extkbd
 
Probably not, depend on packages with the same files instead of duplicating them.

freemangordon 2010-11-14 00:08

Re: [ANNOUNCE] External Keyboard Support - extkbd
 
Quote:

Originally Posted by MohammadAG (Post 872744)
Probably not, depend on packages with the same files instead of duplicating them.

Maybe you will give me a hint how to solve that, bt-hid-scripts contain several files(3) which are from unknown version of xkeyboard-config. For sure I will contact qole.

Cheers

MohammadAG 2010-11-14 00:42

Re: [ANNOUNCE] External Keyboard Support - extkbd
 
Sure, just add bt-hid-scripts to Depends: in debian/control, then get rid of the files there from your package.

freemangordon 2010-11-14 00:56

Re: [ANNOUNCE] External Keyboard Support - extkbd
 
Quote:

Originally Posted by MohammadAG (Post 872765)
Sure, just add bt-hid-scripts to Depends: in debian/control, then get rid of the files there from your package.

Do you mean to add bt-hid-scripts to Replaces: in debian/control? No way to remove those files, as they are part of xkeyboard-config 1.8.1 (what xkb-data-extkbd actually is, just modified to be compiled under scratchbox) . And the files bt-hid-scripts distributes are maybe from xkeyboard-config 1.5 or something and provide only pc/us keyboard layout. However already PM qole, will wait his opinion on the case.

Keneraali 2010-11-14 13:16

Re: [ANNOUNCE] External Keyboard Support - extkbd
 
Quote:

Originally Posted by freemangordon (Post 872743)
Sorry for being slow but it was Saturday evening ;) . Did you succeed to install extkbd?

Cheers.

Yeah, I managed to install it by first completely removing the Bluetooth HID scripts. As far as I know dpkg -P bt-hid-scripts does the same as apt-get --purge remove bt-hid-scripts? Now the extkbd works as it should work. :)

pious_momin 2010-11-14 13:33

Re: [ANNOUNCE] External Keyboard Support - extkbd
 
my n900 kept on rebooting and never start up!!! this application needs to be in extra testing not in devel..............i had to flash my n900 coz of this................. :mad:

eagle_linux 2010-11-14 16:47

Re: [ANNOUNCE] External Keyboard Support - extkbd
 
Thanks for the program, just what I needed!
ATM, though, it doesn't worky for me. I'm unable to connect my bt keyboard, as the bluetooth-symbol in the system tray lights up blue for a fraction of a second and then goes white again if I turn on my (paired) keyboard. I believe that's the same problem that the bt-hid-scripts tried to solve (and they did for me, but didn't get the layout right).
Because the keyboard can't connect to the N900, I don't see any keyboards in the keyboards dialog in your app.

Any idea how to solve this? I'd really love to finally use my kb :)

freemangordon 2010-11-14 17:00

Re: [ANNOUNCE] External Keyboard Support - extkbd
 
Quote:

Originally Posted by pious_momin (Post 873102)
my n900 kept on rebooting and never start up!!! this application needs to be in extra testing not in devel..............i had to flash my n900 coz of this................. :mad:

You mean your n900 rebooted after you install extkbd by itself? Or you restart it manually after installing extkbd and get caught in reboot loop? Will you explain what you actually did.

Anyway, extras-devel is the first repository things fall into after passing through autobuilder. The software there is most probably not ready for end users, read here http://wiki.maemo.org/Extras-devel and here http://wiki.maemo.org/Extras-testing

ceroberts75 2010-11-14 17:00

Re: [ANNOUNCE] External Keyboard Support - extkbd
 
how do we reinstall the original script if we try to delete this package?

freemangordon 2010-11-14 17:19

Re: [ANNOUNCE] External Keyboard Support - extkbd
 
@eagle_linux : I am still waiting qole to answer to PM i sent him, will make extkbd compatible with bt-hid scripts or will include same functionality soon

@ceroberts75: which script you point at

Cheers

freemangordon 2010-11-14 22:23

Re: [ANNOUNCE] External Keyboard Support - extkbd
 
Quote:

Originally Posted by eagle_linux (Post 873188)
Thanks for the program, just what I needed!
ATM, though, it doesn't worky for me. I'm unable to connect my bt keyboard, as the bluetooth-symbol in the system tray lights up blue for a fraction of a second and then goes white again if I turn on my (paired) keyboard. I believe that's the same problem that the bt-hid-scripts tried to solve (and they did for me, but didn't get the layout right).
Because the keyboard can't connect to the N900, I don't see any keyboards in the keyboards dialog in your app.

Any idea how to solve this? I'd really love to finally use my kb :)

New version is available in extras-devel which gives an option to manually connect your keyboard (hopefully :) )

Cheers

pious_momin 2010-11-15 11:03

Re: [ANNOUNCE] External Keyboard Support - extkbd
 
Quote:

Originally Posted by freemangordon (Post 873197)
You mean your n900 rebooted after you install extkbd by itself? Or you restart it manually after installing extkbd and get caught in reboot loop? Will you explain what you actually did.

Anyway, extras-devel is the first repository things fall into after passing through autobuilder. The software there is most probably not ready for end users, read here http://wiki.maemo.org/Extras-devel and here http://wiki.maemo.org/Extras-testing

i installed from extra-devel and it was unable to install then uninstall it and reboot my n900 and to my surprise it keep on rebboting.... so i had flashed my n900

freemangordon 2010-11-15 11:56

Re: [ANNOUNCE] External Keyboard Support - extkbd
 
Quote:

Originally Posted by pious_momin (Post 873874)
i installed from extra-devel and it was unable to install then uninstall it and reboot my n900 and to my surprise it keep on rebboting.... so i had flashed my n900

How exactly did you uninstall it if it failed to install. And do you have appmanager logs or error message to provide. I am trying to understand if my program has any incompatibility other than with bt-hid-scripts, but till now you did not provide any useful info.

avidscavenger 2010-11-16 06:58

Re: [ANNOUNCE] External Keyboard Support - extkbd
 
@ eagle_linux - I have the same problem, though it all worked fine when I was using PR1.1 or PR1.2

I also get the following error when I start extkbd, indicating a missing file:

Quote:

Cannot open /usr/share/hal/fdi/policy/20thirdparty/99-x11-external-keyboard.fdi - no such file or directory

freemangordon 2010-11-16 07:07

Re: [ANNOUNCE] External Keyboard Support - extkbd
 
That is normal, once you configure at least one keyboard , the message will not appear anymore. Did you try latest extkbd, it has option to manually connect to bt HID devices

avidscavenger 2010-11-16 07:15

Re: [ANNOUNCE] External Keyboard Support - extkbd
 
Much to my surprise that did work. Many thanks!

joshv06 2010-11-16 14:11

Re: [ANNOUNCE] External Keyboard Support - extkbd
 
Is the conflict with bt-hid-scripts resolved? I got a lot of dependency errors with this after a Re-flash, and so did other people made threads about it too.

freemangordon 2010-11-16 15:47

Re: [ANNOUNCE] External Keyboard Support - extkbd
 
Quote:

Originally Posted by joshv06 (Post 875052)
Is the conflict with bt-hid-scripts resolved?

No, I am still waiting qole to answer to my PM or to appear in some thread. I will give him several more days and if there is nothing from him I will decide whether to overwrite the files bt-hid-scrips provide (ulgy hack,but ...) or to automaticaly uninstall bt-hid-scripts an install replacement (if not better) functionality (working evdev driver for example).

Quote:

got a lot of dependency errors with this after a Re-flash, and so did other people made threads about it too.
Could you be more specific and paste some logs. The only package extkbd depends on (excluding what is already in PR1.3) is xkb-data-extkbd, so I am little curious.

kureyon 2010-11-16 19:19

Re: [ANNOUNCE] External Keyboard Support - extkbd
 
Quote:

Originally Posted by freemangordon (Post 875145)
I will give him several more days and if there is nothing from him I will decide whether to overwrite the files bt-hid-scrips provide (ulgy hack,but ...) ...

Would it be possible (if it makes sense) for you two to come to some arrangement to merge the two packages?

freemangordon 2010-11-17 07:38

Re: [ANNOUNCE] External Keyboard Support - extkbd
 
Quote:

Originally Posted by kureyon (Post 875337)
Would it be possible (if it makes sense) for you two to come to some arrangement to merge the two packages?

That was what initially I was trying to achieve by PM qole. But as days pass by it seems to me that it will not work. Still not a word from qole re what his opinion is on how to resolve incompaltibility between packages - I suspect that he is a busy man, but even in that case 5 days with no answer seems little long to me.

And what you actually miss from bt-hid-scripts? I think that keyboard support extkbd provides is far far better. And in regard to bluetooth mouse - believe me or not I was the first one who got it working. You can look at first thread I opened at TMO. So my next steps are:

1. Cleanup extkbd so it is completely bugfree and usefull
2. Make another package for external mouse support(including USB). I have fixed evdev driver to work as expected,no touch problems. Titan agreed to include my kernel patch for bluetooth.ko module in next kernel-power. And I know how to show/hide cursor on mouse connected/disconnected without need to manually run script.So I will just need few days to package things and make some nice GUI :).

And please if i miss something feel free to correct me.

F2thaK 2010-11-17 08:00

Re: [ANNOUNCE] External Keyboard Support - extkbd
 
hells yeah !!

maartenmk 2010-11-17 19:59

Re: [ANNOUNCE] External Keyboard Support - extkbd
 
Quote:

Originally Posted by freemangordon (Post 875830)
[....] So my next steps are:

1. Cleanup extkbd so it is completely bugfree and usefull
2. Make another package for external mouse support(including USB). I have fixed evdev driver to work as expected,no touch problems. Titan agreed to include my kernel patch for bluetooth.ko module in next kernel-power. And I know how to show/hide cursor on mouse connected/disconnected without need to manually run script.So I will just need few days to package things and make some nice GUI :).

And please if i miss something feel free to correct me.

With no touch problems you mean the problem with kinetic scrolling in the browser is solved?
If not, please keep the packages separate...other than that, good luck and thanks!

Edit: I tried it, and after I used the manual connect it worked!
The only problem I have is that the blue arrow key on the internal keyboard stops functioning...
After I open and save the standard 'text input' settings it works again, but then the external keyboard stops.

freemangordon 2010-11-17 21:33

Re: [ANNOUNCE] External Keyboard Support - extkbd
 
Quote:

Originally Posted by maartenmk (Post 876366)
With no touch problems you mean the problem with kinetic scrolling in the browser is solved?
If not, please keep the packages separate...other than that, good luck and thanks!

Hm, I am not sure what is the problem with kinetic scrolling mentioned in several threads, as i never have used qole's (more precisely azerty1's) evdev driver, but the one patched by me. And as i dont see any problem to scroll in microb, I assume my version is ok. For sure i will keep packages for keyboard and mouse independent one to another.

Quote:

Edit: I tried it, and after I used the manual connect it worked!
The only problem I have is that the blue arrow key on the internal keyboard stops functioning...
After I open and save the standard 'text input' settings it works again, but then the external keyboard stops.
Sorry for that, it is because of a bug I introduced in v 0.0.9. There is new version in repos which should have no bugs(hopefully :) ) and all functionality working.

number41 2010-11-18 05:32

Re: [ANNOUNCE] External Keyboard Support - extkbd
 
It's not working here.

I recently reflashed, due to screwing up the system while trying to downgrade libc6, due to the calendar bug.

My keyboard is an Su-8w. So ok, I get the devices paired, and run extkbd. It doesn't recognize the keyboard, and the field "Keyboard" remains empty. Also, if I click the (re)connect HID devices, I get the following message:

Method "Connect with signature"" on interface "org.bluez.Input" doesn't exist

Any ideas on what's the problem, and how to fix it?

freemangordon 2010-11-18 06:16

Re: [ANNOUNCE] External Keyboard Support - extkbd
 
Did you enable input plugin in /etc/bluetooth/main.conf

number41 2010-11-18 06:41

Re: [ANNOUNCE] External Keyboard Support - extkbd
 
No, I assumed the application enabled it by itself. I was actually going to edit my post and this bit of info, but you mentioned it before I did. :) Once I tried it, the application worked like a charm, albeit with one problem:

I couldn't get diacritics, upon which my language (portuguese) depends heavily upon, to work. Changing the language to Brazil wouldn't help. I didn't try Portugal, but I'm not sure it would work.

This is a known bug in maemo since Diablo, I think, though there's a workaround described in http://labs.danilocesar.com/blog/200...cents-on-n800/ , which I couldn't get to work on extkbd. It works on Fremantle, though, I was using it before trying extkbd.

eagle_linux 2010-11-18 08:27

Re: [ANNOUNCE] External Keyboard Support - extkbd
 
Okay, one step closer. The external keyboard works now
(with the limitation that there is no key repeat, holding a key produces the alternative character like with the internal kb, and the modifier keys like shift and alt work like with the internal keyboard, too, not like on a regular pc where you hold down the key while typing).
However, when the correct layout for the external keyboard is active, the layout for the internal one is wrong (maybe US layout?). The only way I've found to fix that is to run

Code:

setxkbmap -model nokiarx51 -layout de | xkbcomp -i 3 $DISPLAY
This, however, ruins the layout for the internal keyboard, too - help? :confused:

freemangordon 2010-11-18 08:44

Re: [ANNOUNCE] External Keyboard Support - extkbd
 
@eagle_linux:
do you have latest (1.0.0) version?

if so, try next steps:
Once you have configured (and saved) correct layout for external keyboard, try to reconnect it without pressing save button on UI, something like:

1.connect keyboard
2. configure layout from UI
3. save
4. disconnect keyboard
5. connect keyboard
6. dismiss UI (by taping outside dialog)

and playing with setxkbmap will interfere with extkbd, so it is better to avoid it :)

BTW setxkbmap -model nokiarx51 -layout de | xkbcomp -i 3 $DISPLAY sets layout of internal keyboard (id 3)

freemangordon 2010-11-18 08:46

Re: [ANNOUNCE] External Keyboard Support - extkbd
 
Quote:

Originally Posted by number41 (Post 876779)
No, I assumed the application enabled it by itself. I was actually going to edit my post and this bit of info, but you mentioned it before I did. :) Once I tried it, the application worked like a charm, albeit with one problem:

I couldn't get diacritics, upon which my language (portuguese) depends heavily upon, to work. Changing the language to Brazil wouldn't help. I didn't try Portugal, but I'm not sure it would work.

This is a known bug in maemo since Diablo, I think, though there's a workaround described in http://labs.danilocesar.com/blog/200...cents-on-n800/ , which I couldn't get to work on extkbd. It works on Fremantle, though, I was using it before trying extkbd.

So, did you try Portugal with different variants (nativo for example)?

number41 2010-11-18 10:21

Re: [ANNOUNCE] External Keyboard Support - extkbd
 
I will test it later, today. I should mention, though, that I have the xkb-chinook directory in usb/share/X11, and in both /usr/share/X11/xkb/symbols/nokia_vndr/ and the xkb-chinook variant, i have the modified su-8w file with the portuguese language modification.

Would those interfere with testing, or is it ok to make tests with those modifications still present?

eagle_linux 2010-11-18 11:32

Re: [ANNOUNCE] External Keyboard Support - extkbd
 
Quote:

Originally Posted by freemangordon (Post 876852)
@eagle_linux:
and playing with setxkbmap will interfere with extkbd, so it is better to avoid it :)

BTW setxkbmap -model nokiarx51 -layout de | xkbcomp -i 3 $DISPLAY sets layout of internal keyboard (id 3)

Yes, I used version 1.0.0 :)

I tried it according to your instructions, same results as before. Internal keyboard sort of works, internal (= the slide-out keyboard integrated into the n900) keyboard has the wrong layout.

Also, the setxkbmap command was SUPPOSED to fix the internal keyboard layout, as using your program caused the external keyboard layout to be somewhat correct, but the internal keyboard layout to be wrong. Sorry if I didn't make myself clear, I'm still somewhat busy with a cold I've caught ;)

freemangordon 2010-11-18 12:05

Re: [ANNOUNCE] External Keyboard Support - extkbd
 
Quote:

Originally Posted by number41 (Post 876917)
I will test it later, today. I should mention, though, that I have the xkb-chinook directory in usb/share/X11, and in both /usr/share/X11/xkb/symbols/nokia_vndr/ and the xkb-chinook variant, i have the modified su-8w file with the portuguese language modification.

Would those interfere with testing, or is it ok to make tests with those modifications still present?

If you have modified files in /usr/share/X11/xkb/ after installing extkbd, probably that is the reason why you have problems. What i can propose is to reinstall xkb-data-extkbd package and to setup keyboard from UI. If it still not work correctly after that please make a screenshot of extkbd UI and attach it here, so i will be able to recreate your problem.

freemangordon 2010-11-18 12:07

Re: [ANNOUNCE] External Keyboard Support - extkbd
 
Quote:

Originally Posted by eagle_linux (Post 876967)
Yes, I used version 1.0.0 :)

I tried it according to your instructions, same results as before. Internal keyboard sort of works, internal (= the slide-out keyboard integrated into the n900) keyboard has the wrong layout.

Also, the setxkbmap command was SUPPOSED to fix the internal keyboard layout, as using your program caused the external keyboard layout to be somewhat correct, but the internal keyboard layout to be wrong. Sorry if I didn't make myself clear, I'm still somewhat busy with a cold I've caught ;)

Have in mind that setxkbmap sets layout of ALL keyboard devices, the id you pass to command line is somehow ignored.

maartenmk 2010-11-18 15:53

Re: [ANNOUNCE] External Keyboard Support - extkbd
 
Somehow, since installing v1.0 over 0.9, my Stowaway keyboard won't work anymore. It is still listed in the extkbd UI (I did not need to re-connect it), and stays 'blue' after connecting, but does not work at all anymore.

freemangordon 2010-11-18 19:00

Re: [ANNOUNCE] External Keyboard Support - extkbd
 
OK, just to make things more clear - there is no need to run extkbd UI every time you connect keyboard, only for initial setup and if you need to change layout or setup new keyboard.

@maartenmk:
Sorry to hear that, actually v1.0.0 was my last try to use setxkbmap for setting layouts, obviously with negative result. Will you please upgrade to v 1.0.1 and test again (it does not use setxkbmap and hopefully will work). And I would suggest to reboot n900 (just in case) and re-pair keyboard.

number41 2010-11-18 20:51

Re: [ANNOUNCE] External Keyboard Support - extkbd
 
Quote:

Originally Posted by freemangordon (Post 876980)
If you have modified files in /usr/share/X11/xkb/ after installing extkbd, probably that is the reason why you have problems. What i can propose is to reinstall xkb-data-extkbd package and to setup keyboard from UI. If it still not work correctly after that please make a screenshot of extkbd UI and attach it here, so i will be able to recreate your problem.

Ok, I will overwrite the /usr/share/X11/xkb/symbols/nokia_vndr/su-8w file with the original one, and reinstall the package you mentioned. I will report the results later.

maartenmk 2010-11-18 22:03

Re: [ANNOUNCE] External Keyboard Support - extkbd
 
thanks freemangordon; v 1.0.1 does work, internal keyboard also still fully functional this time.
I did need to use the manual connection method again.
It also reconnects.
After I switched Bluetooth off and on it didn't react anymore at first, but it somehow recovered, after a minute or two. I'll see if that comes back and report.


All times are GMT. The time now is 04:11.

vBulletin® Version 3.8.8