Active Topics

 



Notices


Reply
Thread Tools
helex's Avatar
Posts: 543 | Thanked: 802 times | Joined on Apr 2010 @ Germany
#1
ALPHA PREVIEW / TECH DEMO!

BRAVE (and skilled) TESTERS WANTED!

The N9 has no keyboard. It's not very comfortable while typing sms or mails on the go and it's even worse to work on the shell or to develop directly on this device. In some cases you're at home and you have a keyboard directly in front of you at your desk - but it's connected to your Desktop and for your N9 it is useless. The same takes effect for all MeeGo tablets like at example the ExoPC.

I want to try to make this pain less painful!

TcpIpKeyboard is a Application to share the Keyboard from a Windows or Linux Desktop PC, Netbook or Laptop with the N9 handset thru a simple TCP/IP connection.



It's seperated in 2 applications. A Sender for your Desktop and a Receiver for your N9, MeeGo Tablet (both still under hard development) or your N900.

It's very simple:
At home you are normally connected with your Mobile via WiFi with your home network. The same network used by your desktop. If you want to use now the Keyboard from your Desktop simply start TcpIpKeyboardReceiver at your Mobile:


(Screenshot from N900 Version)

You can see the IP adress of your Device and a Port Number. You're able to change the Port by pressing the gear wheels Button. Press it again to leave the settings mode.

Now open at your Desktop TcpIpKeyboardSender


Go to settings using the gear wheels and enter the IP shown at your Mobile:

The red background signaled that you're currently in the settings mode. If the background is green TcpIpKeyboard is ready to work.

How to use it:
Just keep the Application at the N900 open and switch to the task you wan't to use. It works at all applications and even at the Desktop.
As soon as you have the TcpIpKeyboard application at your Desktop PC in the foreground all input from the Keyboard will be sent to your Mobile. Switch to a different task to use your Keyboard as usual at your Desktop. Switch back to TcpIpKeyboard to use it again at your Mobile.

It feels so far very good even if there are still a lot of problems:
  • only lowercase characters are currently working
  • no Enter, no Shift, no Space, no coursor keys, no backspace or Function keys so far - I will work at this at the next update - but I don't know how much will work at the N900
  • the N900 version seems to have no easy to use virtual keyboard plugin for Qt - so perhaps the N900 version will stay a tech demo forever and will never get as useful as the version for MeeGo - I wan't to use at the MeeGo Version the virtual Keyboard plugin maliit - this should work a lot better
  • currently no confirmation of receipt is sent back to the Sender application
  • I expect a BIG problem regarding different language settings (developed using a german keyboard)
  • at the moment I have only the N900 maemo build and the windows *.exe file ready - I'm sorry linux guys, I wan't to fix this soon

Where to get it:

Receiver:
  • You can find TcpIpKeyboardReceiver currently at Maemo Extra-Devel.
Sender:
  • You can download the win32 TcpIpKeyboardSender from here: TcpIpKeyboardSender-Windows32Bit-v0.0.3.ZIP - it's a Zip containing the needed *.DLL and the EXE file.
    No installer, no icon and no Desktop shortcut so far. - it's on my huge to-do-list so be patient.
  • You can download the MeeGo Tablet Sender version here: TcpIpKeyboardSender-0.0.3-3.i586.rpm
    So, if you have a MeeGo Tablet like the ExoPC or a Lenovo IdeaPad - you are now able to send keystrokes to your N900.
    At the ExoPC you have to connect a USB Keyboard to use my application. The Lenovo IdeaPad has the integrated keyboard as advantage.

    If the built in virtual Keyboard doesn't disappear after you have changed the settings, simply close the application and reopen it afterwards. The new settings are applied now and you can start typing.

Enjoy but as always at your own risk!

The usual warning applies:
The software hosted in extras-devel is not ready for normal users!
PLEASE PLEASE PLEASE don't play with it unless you really know what you are doing. Be ready to file proper bug reports instead of posting complaints.
Expected problems: crashes, battery drain, poor system performance, full disk space & more - SERIOUSLY!

Don't play with Extras-devel if you haven't backed up your data or aren't prepared to re-flash your device.
Reports from different locations would be helpful if your N900 did receive wrong keystrokes:
  • Please include the Country Code from your desktop
  • the Country Code from your N900 (what kind of keyboard do you have?)
  • what button have you pressed at your desktop
  • the Keycode (shown in the Status bar at the bottom)
  • and finally the received key at your N900

This Application is in early Alpha stage. But the core components are working so far. See it as a preview what is comming to your N9. I announced it now because of the approaching deadline for the MeeGo Coding Competition 2011.
Please test it only if you know what you're doing or wait what will happen in this Thread.
And don't forget to create a backup (just in case). I only want to share my little application. But I hope for a lot of positive feedback!
__________________
I was a Qt Ambassador!

Please DONATE if you like my work!
It's the best way to motivate me to create more stuff for your Device.

Last edited by helex; 2011-07-31 at 16:17.
 

The Following 24 Users Say Thank You to helex For This Useful Post:
x61's Avatar
Posts: 932 | Thanked: 278 times | Joined on Sep 2009 @ Kentucky
#2
shhytt...this means my N900 has a long way to do...
 
Posts: 560 | Thanked: 422 times | Joined on Mar 2011
#3
There will be a lot of people eager to test this, I'm sure. Clever idea, so long as network latency is low enough for the hci to be acceptable. Can the N900 form an ad-hoc connection with the kb? Nice one!

A question though: keyboards, other than the native one, can have unexpected results with some keys. How do you handle each key-press and can it be altered to give the desired result?
 

The Following User Says Thank You to demolition For This Useful Post:
Posts: 958 | Thanked: 483 times | Joined on May 2010
#4
cool! how about extending this to a mouse as well?
 

The Following User Says Thank You to droll For This Useful Post:
helex's Avatar
Posts: 543 | Thanked: 802 times | Joined on Apr 2010 @ Germany
#5
Originally Posted by demolition View Post
There will be a lot of people eager to test this, I'm sure. Clever idea, so long as network latency is low enough for the hci to be acceptable. Can the N900 form an ad-hoc connection with the kb? Nice one!
Thanks a lot!

After the first problems with network latency (some characters were received in the wrong order) I added a first in-first out stack for the sender and for the receiver module. I will try to add to the communication a response channel if a keycode is sucessfully received or not. But I wan't to use only a single port. Don't know if this could work. I wan't to keep the settings as simple as possible.
If there occurs problems with some fast typers I could bundle some keycodes together in a single packet to minimize the overhead. Currently every keycode is sent seperate. If you type to fast your text appears a little bit delayed. But perhaps this is because of the way I send the keycodes to different applications at the N900.

Originally Posted by demolition View Post
A question though: keyboards, other than the native one, can have unexpected results with some keys. How do you handle each key-press and can it be altered to give the desired result?
This creates currently by biggest headache. At MeeGo exists the virtual Keyboard plugin maliit - I will use it for the MeeGo releases end expect less problems.
But at maemo I haven't found something similar to this. I'm currently using the command line tool xdotool to send the keycodes and created manually a table to translate at the N900 the received keycodes in keystrikes.
Have a look at this thread: Best way to send keycodes - emulate keyboard press

It's a pain and feels unprofessional. Any kind of suggestions are welcome!
__________________
I was a Qt Ambassador!

Please DONATE if you like my work!
It's the best way to motivate me to create more stuff for your Device.
 

The Following User Says Thank You to helex For This Useful Post:
helex's Avatar
Posts: 543 | Thanked: 802 times | Joined on Apr 2010 @ Germany
#6
Originally Posted by droll View Post
cool! how about extending this to a mouse as well?
Mh, doesn't have all MeeGo Devices a Touchscreen?

Perhaps possible... I'm able to control my Lenovo IdeaPad with MeeGo using the touchpad and Mousebuttons. But I can't see a the Mousecoursor at the display. So I'm unable to control it and I'm forced to stumble in the dark.

So, will it really make sense to have a Mouse at the N9?
__________________
I was a Qt Ambassador!

Please DONATE if you like my work!
It's the best way to motivate me to create more stuff for your Device.
 
helex's Avatar
Posts: 543 | Thanked: 802 times | Joined on Apr 2010 @ Germany
#7
UPDATE v.0.0.4:
  • use of capital and small initial letters
  • Shift, Coursor (Left / Right) and buttons like space, tab and enter
  • some Keycombinations are now working - at example [Ctrl+C] for the Clipboard!
  • a lot of minor bugfixes
Enjoy!
__________________
I was a Qt Ambassador!

Please DONATE if you like my work!
It's the best way to motivate me to create more stuff for your Device.
 
neboja's Avatar
Posts: 277 | Thanked: 93 times | Joined on Jan 2010 @ Belgrade
#8
shut a hell up!!!!!!!!!!!!!! :O

great work mate!!!!!!!!!!!!!!
 

The Following User Says Thank You to neboja For This Useful Post:
F2thaK's Avatar
Posts: 4,365 | Thanked: 2,467 times | Joined on Jan 2010 @ Australia Mate
#9
 

The Following 2 Users Say Thank You to F2thaK For This Useful Post:
Boemien's Avatar
Posts: 770 | Thanked: 558 times | Joined on Mar 2010 @ Abidjan
#10
A way to implement Mouse will be awesome. Good Work mate!!!
__________________
If you find this post useful for you, or for another member, just hit the Thanks! button
 

The Following User Says Thank You to Boemien For This Useful Post:
Reply


 
Forum Jump


All times are GMT. The time now is 14:37.