First: no, I don't use Linux to write this article, but basically I could...

Introduction

A while ago I bought a Samsung Q1 and I'm really pleased with this device (though I hope for some enhancements in future devices, but his is not the topic of this article). As I'm a Linux user at home (at work I do use Windows, so I do know both systems for everyday work), I tried to install Linux very soon and did fail using Suse 10.1…

But as I miss some of my favourite application, which are not ported to Windows yet (that sounds weird, doesn't it?) and miss the nice consistent look of the Gnome desktop, I didn't stop trying and installed Ubuntu 6.06 on it.

Basic Installation

Some preparations

You'll need a keyboard and a mouse! The Samsung keyboard with the integrated touch stick will work fine, though (and the integrated touch stick is recognized as mouse without any further work).

And it's good to search the net a bit, e.g. for support of your hardware (go to the vendors them self, sometimes even to the basic chip vendors). A good starting point is tuxmobil even if you don't find your hardware there (and some information may be outdated).

Ubuntu wants at least 2 GB space for installation and you'll need a swap partition. That means using the AV station partition isn't enough (or how is this program called?). Defrag your C drive (it's good if you don't have too many things installed yet and there's still some space left).

In the Ubuntu installer I resized the Windows XP partition and changed the AV station (or what it is called) partition into a partition for root. Further I added a swap and a home partition using the free space I got from resizing C:. The swap partition can be used in Windows XP as there's a swapfs driver for Windows available — a perfect place for the swap file!

As I might access my home drive from Windows XP, I used EXT3 there, but for the root partition I used XFS (to be on the safe site I added a boot partition using EXT3 as well as I'm not sure if grub will boot from XFS). Resizing the NTFS drive worked well.

Just be cautious not to change the partition numbering up to the C drive! Else you would have to change boot.ini for Windows XP to boot correctly!

The Installation Itself

There's nothing to report, but that it works. The things that have to be adjusted later, will be discussed now…

Getting all to Work

Wireless LAN

Actually this was the first I worked on because without WiFi working I wouldn't like using this device anyway.

The hardware of the Samsung Q1 is an Atheros 5006EX. The EX seems to be important (it indicates a PCI Express device). Looking at MadWifi this chip should work, but I couldn't get it to work using MadWifi neither using the package supplied by Ubuntu nor a recent snapshot. Finally I used ndiswrapper with the Windows XP driver you can download from Samsung's homepage. This works fine but the Gnome netapplet doesn't show signal strength (though wifi radar does).

Graphical Interface

Graphical interface works out of the box — at 640×480.

Adding a mode line for 800×480 to xorg.conf doesn't help at all and searching the net I found that this seems to be a problem with the graphics card not reporting this mode. Fortunately there's 915resolution which you can use to overwrite a mode. So I now just call 915resolution 50 800 480 32 and overwrite the 640×480 mode. It's easy after you found the right solution, isn't it?

Last but not least: The Touchscreen

Now I wouldn't like using the keyboard all the time but I want to use the touchscreen!

eGalax is providing Linux drivers for this touch screen and even a special Ubuntu package! But unfortunately I couldn't get it to work…

Searching the net again I found that using evtouch and evdev should work. Just follow the descriptions there did help…

Calibration was a bit of a problem as the calibration program of evtouch segfaults. I had a look at the calibration values on Windows (you'll find them in a ini in the Touchkit directory) which were a good first guess. For the MinX and MinY values I had to subtract 100 and for the MaxX and MaxY I had to subtract 50, though.

The Show Stoppers or What do I need, to use Linux on this gadget as default?

So you might ask why I don't switch to Linux then? Well I'm missing the excellent ways of using the touch screen for input. The TIP in Windows XP Tablet Edition is very nice. Esp. the integration of the different input methods, using ink or an on-screen keyboard is superb and the handwriting recognition works very good as well. I didn't find any handwriting recognition software for Linux! For a working one which is nicely integrated into the desktop I'd even be willing to pay (just because I'm using Linux doesn't mean that I only use FOSS)!

I know that there is gok and dasher but somehow usage is much more hassling. The concept of dasher is interesting but it needs too much space. And in gok I'm missing the special keys like ALT, CTRL and so on which I do need sometimes even using an onscreen keyboard (not very often, but still). Space usage of gok isn't very good as well for such a small device…

I activated accessibility for GDM but somehow no virtual keyboard shows on login (how should I login without an USB keyboard then?) and if a su dialog box appears and looks the screen, gok can't be used as well — how bad!

Does the maemo platform have a (good) handwriting recognition or do they rely or an onscreen keyboard exclusively?

What I Didn't Do

As I did decide not to use Linux on this device for now anyway I did't work on all things. For one thing the sound isn't working (but I think it should) and I didn't try to get the special keys to work. The joystick does work out of the box though and the volume control as well. Brightness control does work too but the level is not indicated somehow on the screen.

I think there're some tools for Linux like magickeys available (but I'm not sure). It would be nice to be able to switch off WiFi easily (and Bluetooth, it's just wasting power if you don't need it).

The CF slot is recognized. In a first test the CF card was shown as disk but I couldn't access it and Linux crashed on removing (I can't remember the last time such a crash on my desktop system, but for Windows at work, where this happened on Thursday spontaneously loosing quite a bit of work). So I couldn't really test if the CF slot is maybe faster, i.e. usable for data transfer, on Linux…

The Future

I really think Linux has a future on such a device, but a good integration for on-screen input is needed. Not only a good on-screen keyboard, but a handwriting recognition software as well. And this has to be integrated into a “quite normal” distribution and not only into something like maemo!

And then there are the GUIs. GUI programmers have to take into account, that with these gadget becoming more widespread many people will use lower resolutions again (at least vertically). And even if the resolution of these devices increase, the physical screen size will be much smaller than that of a laptop or desktop. So think in pt and not in px! This accounts as well for Windows, perhaps even more so (on Linux using a mouse and a keyboard I can at least move any window easily to show hidden parts).

I would be glad to get some tips about solving the last problems…

1 TrackBack

A while ago Windows XP on my Samsung Q1 got on my nerves too much. It's just too slow, takes ages to boot and to log on. So I decided to test Linux on it again. I did test Linux... Read More

35 Comments

Hi ! Maemo on Nokia 770 has a wonderful handwriting recognition, one of the best I have ever tried. But this piece of software is not free... :-(

Thanks for the information! Do you know who's this from? Maybe they would be interested to port it to a "normal" Linux and sell it. I wouldn't be surprised if porting would be very easy...

Thank you for your post!



Using it, I installed Ubuntu in my Q1 and I've addtional info and prob lems:



- Network work well with ndiswrapper

- 915resolution is now a package in ubuntu 6.06. After intallation, edit conf file (/etc/default/915resolution) and add the mode 800x480

- Touchscreen driver works (copy driver to /usr/lib/xorg/modules/input), but without Tap and Hold, suggestions?

- sound works after last alsa download and compilation and adding to file etc/moprobe.d/alsa-base the line

options snd-hda-intel model=laptop-eapd

-I've detected that some hardware buttons in the Q1 generate events to /dev/input/input0, but I could not be able to configurate in xorg.conf, suggestions?

Ah, and you can use xvkbd to enter text, and configure gnome to enter whithout login screen (see ubuntu documentation)!

Great article! Thanks for the post.

Hi,



Which type of device have used for boot ?



I tried to boot my Q1 whit USB key/USB DVD recorder (not the Samsung) and I got no result....



Do you used the USB DVD drive of Samsung ?



Thanks.

No, I didn't use Samsung's USB DVD drive but an USB DVD recorder by LG (GSA-2164D).

CellphoneSavant: you must enable in the BIOS booting from your CD drive

Just a short question how did you get brightness contoll running, i use suse 10.1 on it and acpidoes not giveme any wy to control the brightness.



Btw. sound needs some parameter for the module, wlan works with the latest madwifi snapshot and the hardware buttons can be configured using setkeycode.

I did notget the nternel microphone recording sound though.

Well, as I don't remember to have worked especially on the brightness control it worked right out of the box with Ubuntu! ;-)



AFAIR the shortcut (menu + volume control on Windows) didn't. I cant't test though, as I don't have Ubuntu any longer on this device. If there just would be a decent hand writing recognitions software for Linux available... :-(

I am a newbie in touchscreen setting, and can hardly configure out the MaxX/MinX/MaxY/MinY setting in the "xorg.conf"

So could you please post these info out.



Thanks a lot. BTW, I am using the SLED10 on Q1.

Hello everybody,



Thanks for these trackbacks they are really usefull !



I've also, tried to install Ubuntu on my Samsung Q1 device. Everything has gone well. Wifi, audio, and event touch. I'm now trying to get the microphone to work. I used the sound recorder that is in the distribution. Checked with alsamixer that the microphone wasn't on mute (actually I also increased the volume upto its maximum). But I can't record a single sound. Does someone have an idea ?

Really linux has better future.Now a days new generation and new comers in this fiels are prefering linux.

"-I've detected that some hardware buttons in the Q1 generate events to /dev/input/input0, but I could not be able to configurate in xorg.conf, suggestions?"



Get events code in /var/log/messages/

end set setkeycodes

examples "setkeycodes e076 87"

e076 - full screen, 87 - F11

hi@all,

i'm trying to run a linux live distro "backtrack2" from a usb key 1gb. the usb work well with my notebook but with samq1 don't work. i have try to enable the boot master with the correct sequence but not work.

someone can help me ?

ps. sorry 4 my bad english.

cya.

Does the touch screen have the same feel to it under Linux as it does under Windows? I am just wondering because I could never get my Fujitsu Tablet PC to work the same under Linux as it did under Windows. It always seemed to have a slight delay, almost like I was remotely connecting to the computer (that kind of delay).

Sorry that I can't help you anymore as I removed Linux from the Q1.



Ryan, AFAIR the touchscreen reacted as I expected just the calibration wasn't easy.

Any feedback regarding batteries lifetime?

I have used the touchscreen and yes it does have the same "feel" to it.

But again, I am Linux dye hard fan!

But I spent most of my time on Linux servers while growing up though. I still dont understand why Window is more popular as Linux had MUCH more power

Hi! I'm trying to install a Gentoo Linux in the AVS Partition of my Q1. It installed easily except boot. How is your grub configured?

I succesfully nstalled the special Key (left) and a dual independent monitors feature.



Take a look here (sorry, only in Italian at the moment) http://groups.msn.com/Aldil...

Hi! thank You very much this page. In fact it was on the things that made me to got a Q1.I am REALLY happy with Q1 and how well it works, and now, I got installed Mepis 6.5 (Dapper based) linux and works fine, and by now, I got the screen resolution works. However, the TouchScreen is making me really mad, since I tried to follow the info in the links, but no luck on them and simply the touchscreen dont make any sign of working under linux (in xp it works well). So I would like to ask You if could be provided some help with this or some additional clues on how to awake the touchscreen. Thanks and best regards!

wth Mepis the ONLY driver that I found that

works without freeze or faill was found at:

http://ariescomputing.com/l... in the

package usbtouch-1.0.1.tar.gz, unpack it and just copy the usbtouch_drv.o to /usr/lib/xorg/modules/input/



then edit as root, or create the file 10-local.rules, can use:

kwrite /etc/udev/rules.d/10-local.rules

and write on it the following data:



SUBSYSTEM=="input", KERNEL=="event*", ATTRS{name}=="Touchkit HID-USB Touchscreen", SYMLINK+="input/touchscreen"



What this does is cause the touchscreen input device to have a node at /dev/input/touchscreen, regardless of what /dev/input/event# it started as, and regardless of what other USB input devices are plugged in.

You found aboutthis on: http://ubuntuforums.org/sho...



then modify the ServerLayout section in /etc/X11/xorg.conf and add in ServerLayout section:



InputDevice "USB Mouse" "SendCoreEvents"

InputDevice "touchscreen" "CorePointer"



(in that way you could use the touchscreen AND a usb mouse plugged atthe same time and BOTH working good enough)



then add in the file the following part where other devices are noted in the file xorg.conf



Section "InputDevice"

Identifier "touchscreen"

Driver "usbtouch"

Option "Device" "/dev/input/touchscreen"

Option "DeviceName" "touchscreen"

Option "ReportingMode" "Raw"

Option "SendCoreEvents"

Option "MinX" "82"

Option "MinY" "195"

Option "MaxX" "3960"

Option "MaxY" "3900"

EndSection



after that You may use CTRL+ALT+Backspace to reload X window without reload all the system, and also in a terminal you could use in terminal as root:

cat /dev/input/touchscreen



for checking if the touchscreen is alive sending data in case that the setting dont work well.



I tested the drivers "evdev","evtouch","touchkit","magictouch",and "microtouch"and all fails, and the last one made it bad since lock-upmy system. Is sad snc some of this divrs seems more recent and powerfull thatusbtouch, but ony usbtouch was enough good for Mepis 6.5.

Hi! thank You for the info. It was one of the things that made me get a Q1. I am REALLY happy with Q1 and how well it works, apart from the annoying touch screen!

After a lot of fight, I finnally got my Q1 working really nice with Linux, and since Mepis have some detais and lots of info here and tere may be somewhat incomplete and I really HATE the incomplete info, I choose to post a LONG post but with all the settings that I made so may realy hlp somebody else to save some suffering... so here is (excuse my bad english, I hope that culd be understanding of the stuff)

HOWTO Install LiNUX Mepis on Samsung Q1



1)Display adaper resolution

Mepis recognises well the resolution of 800x80,however if may be some trub, could

be fixed b this command on a terminal as root:

915resolution 50 800 480 32



2)Touchscreen setting:

evtouch driver works very fine, but with Mepis+Dapper

MUST be used the version 0.80 of the driver evtouch_drv.o that

is in file evtouch-0.8.0.tar.gz on site:

http://stz-softwaretechnik....

Appears that with Mepis+Dapper kernels only works the drivers

with a name ended in _drv.o (and no works drivers ended in "_drv.so")

with this config the Samsung Q1 orks perfectly with stylus, usb-mouse

with center roller and usb keyboard all working together and connected

at the same time, and could be use the stylus in the screen and mouse

moving. :-) (another old driver, usbtouch,works but no very well )



then edit as root, or create the file 10-local.rules, can use:

kwrite /etc/udev/rules.d/10-local.rules

and write on it the following data:



SUBSYSTEM=="input", KERNEL=="event*", ATTRS{name}=="Touchkit HID-USB Touchscreen", SYMLINK+="input/touchscreen"



What this does is cause the touchscreen input device to have a node at /dev/input/touchscreen, regardless of what /dev/input/event# it started as, and regardless of what other USB input devices are plugged in.

You found aboutthis on: http://ubuntuforums.org/sho...



then modify the ServerLayout section in /etc/X11/xorg.conf and add in ServerLayout section:



InputDevice "USB Mouse" "SendCoreEvents"

InputDevice "touchscreen" "CorePointer"



(in that way you could use the touchscreen AND a usb mouse plugged atthe same time and BOTH working good enough)



then add in the file the following part where other devices are noted in the file xorg.conf



Section "InputDevice"

Identifier "touchscreen"

# evtouch driver works very fine, but with Mepis+Dapper

# MUST be used the version 0.80 of the driver evtouch_drv.o that

# is in file evtouch-0.8.0.tar.gz on site:

# http://stz-softwaretechnik....

# Appeas that with Mepis+Dapper kernels only works the drivers

# with a name ended in _drv.o (and no works drivers ended in "_drv.so")

# with this config the Samsung Q1 orks perfectly with stylus, usb-mouse

# with center roller and usb keyboard all working together and connected

# at the same time, and could be use the stylus in the screen and mouse

# moving. :-) (another old driver, usbtouch,works but no very well )

Driver "evtouch"

Option "Device" "/dev/input/touchscreen"

Option "DeviceName" "touchscreen"

Option "ReportingMode" "Raw"

Option "SendCoreEvents"

Option "MinX" "82"

Option "MinY" "195"

Option "MaxX" "3960"

Option "MaxY" "3900"

Option "Emulate3Buttons"

Option "Emulate3Timeout" "50"

#Option "SwapY" "1"

#Option "SwapXY" "1"

EndSection



after that You may use CTRL+ALT+Backspace to reload X window without reload all the system, and also in a terminal you could use in terminal as root:

cat /dev/input/touchscreen



for checking if the touchscreen is alive sending data in case that the setting dont work well.



I tested the drivers "evdev","evtouch","touchkit","magictouch",and "microtouch"and all fails, and the last one made it bad since lock-upmy system. Is sad snc some of this divrs seems more recent and powerfull thatusbtouch, but ony usbtouch was enough good for Mepis 6.5.



3) For virtual screen keybad install Package xvkbd with synaptic

I pass a realy hard tme since lots of info are n explicit, so I will pos again my final settings until now... Q1 works great ...



HOWTO Install LiNUX Mepis on Samsung Q1



1)Display adaper resolution

Mepis recognises well the resolution of 800x80,however if may be some trub, could

be fixed b this command on a terminal as root:

915resolution 50 800 480 32



2)Touchscreen setting:

evtouch driver works very fine, but with Mepis+Dapper

MUST be used the version 0.80 of the driver evtouch_drv.o that

is in file evtouch-0.8.0.tar.gz on site:

http://stz-softwaretechnik....

Appears that with Mepis+Dapper kernels only works the drivers

with a name ended in _drv.o (and no works drivers ended in "_drv.so")

with this config the Samsung Q1 orks perfectly with stylus, usb-mouse

with center roller and usb keyboard all working together and connected

at the same time, and could be use the stylus in the screen and mouse

moving. :-) (another old driver, usbtouch,works but no very well )



then edit as root, or create the file 10-local.rules, can use:

kwrite /etc/udev/rules.d/10-local.rules

and write on it the following data:



SUBSYSTEM=="input", KERNEL=="event*", ATTRS{name}=="Touchkit HID-USB Touchscreen", SYMLINK+="input/touchscreen"



What this does is cause the touchscreen input device to have a node at /dev/input/touchscreen, regardless of what /dev/input/event# it started as, and regardless of what other USB input devices are plugged in.

You found aboutthis on: http://ubuntuforums.org/sho...



then modify the ServerLayout section in /etc/X11/xorg.conf and add in ServerLayout section:



InputDevice "USB Mouse" "SendCoreEvents"

InputDevice "touchscreen" "CorePointer"



(in that way you could use the touchscreen AND a usb mouse plugged atthe same time and BOTH working good enough)



then add in the file the following part where other devices are noted in the file xorg.conf



Section "InputDevice"

Identifier "touchscreen"

# evtouch driver works very fine, but with Mepis+Dapper

# MUST be used the version 0.80 of the driver evtouch_drv.o that

# is in file evtouch-0.8.0.tar.gz on site:

# http://stz-softwaretechnik....

# Appeas that with Mepis+Dapper kernels only works the drivers

# with a name ended in _drv.o (and no works drivers ended in "_drv.so")

# with this config the Samsung Q1 orks perfectly with stylus, usb-mouse

# with center roller and usb keyboard all working together and connected

# at the same time, and could be use the stylus in the screen and mouse

# moving. :-) (another old driver, usbtouch,works but no very well )

Driver "evtouch"

Option "Device" "/dev/input/touchscreen"

Option "DeviceName" "touchscreen"

Option "ReportingMode" "Raw"

Option "SendCoreEvents"

Option "MinX" "82"

Option "MinY" "195"

Option "MaxX" "3960"

Option "MaxY" "3900"

Option "Emulate3Buttons"

Option "Emulate3Timeout" "50"

#Option "SwapY" "1"

#Option "SwapXY" "1"

EndSection



after that You may use CTRL+ALT+Backspace to reload X window without reload all the system, and also in a terminal you could use in terminal as root:

cat /dev/input/touchscreen



for checking if the touchscreen is alive sending data in case that the setting dont work well.



I tested the drivers "evdev","evtouch","touchkit","magictouch",and "microtouch"and all fails, and the last one made it bad since lock-upmy system. Is sad snc some of this divrs seems more recent and powerfull thatusbtouch, but ony usbtouch was enough good for Mepis 6.5.



3) For virtual screen keybad install Package xvkbd with synaptic

(second part... I post all since I eally HATE when the info is not complete or lacks of details, since is no cost to put complete instructons in order to help mor other people... best regards)



4) For Wireless Wifi Card, You could check this link

http://foto-cs.de/blog/item...

however for Meis 6.5 the direct CLEAR & DETAILED if is the following:

(plase check this page:



http://www.mepis.org/docs/e...



Mepis have already installed ndiswrapper, so You may need only to install the windoze xp driver... in the proper xp partition of the Q1 You could find the files on /Program Files/Atheros WLAN Client/Driver/ directory or in /WINDOWS/system32/drivers/ directory. then copy the files net5211.cat, oem13.inf, SSB2413.inf and SSB2413.sys, to a temporary directory that you may create, lets say tempo, then at console shell, go to tempo directory and type:

ndiswrapper oem13.inf



then ceck that it was installed by:

ndiswrapper -l



and then type as root:



ndiswrapper -m



hen reboot and the ndiswrapper mus be ossible to use.



5) Special keys mapping for use most necesary keys withouth external keyboard



For making mapping of keys at boot edit as root the file:



kwrite /etc/init.d/bootmisc.sh



and add the following lines to the end of the file in order to get the key mappings load at the start of the boot process



#Sets the keys on Samsung Q1

#set (LEFT-BUTTON) to: [ALT]

/usr/bin/setkeycodes e076 56

#set (RIGTH-BUTTON) below (ENTER-BUTTON) to:[MENU]key (same as [rigth-mouse-button]:-D)

/usr/bin/setkeycodes e078 127

#set keypad jog dial up (U1) to: [PAGE-UP]

/usr/bin/setkeycodes e058 104

#set keypad jog dial up (U2) to: [Tab] key (tabulator)

/usr/bin/setkeycodes e057 15

#set keypad jog dial up (U3) to: [PAGE-DOWN]

/usr/bin/setkeycodes e059 109

#set keypad jog dial up (U4) to: [ESC]

/usr/bin/setkeycodes e056 1



# the special key U1 goes rimappato perche' with the configuration indicatasopra

# is overlapped to skillful the special key

# correct configuration

# Scancode: e058 - Keycode: 135 - Tails: 0xc0

# suppose to set correct key because some mistake but not clear the effect or defect keypad jog dial up (U1) to: [PAGE-UP]

# /usr/bin/setkeycodes e058 135

I've successfully installed SuSE Enterprise Desktop 10 SP1.



All hardware, including wi-fi, was correctly identified and supported without problems.

Touchscreen needs evtouch 0.8.0 only!



800x480 resolution is set with the use of

855resolution.



I very appreciate the above comments.

They help a lot.

Has anyone tried running Puppy Linux on a Q1? I can run the version I have by booting from my USB key and the thing runs like lightning when compared to the Vista OS it came with. The networking works great straight out of the box, sound works, touch screen doesn't though and thats the thing I would like to get fixed most of all.



I dont need handwriting recognition just a decent onscreen keyboard, even a thumb-board like the one that comes in windows would suffice. Other than that its simple touch screen navigation that I need.



I know a bit about Linux but nothing anywhere near what I need to know when it comes to adding drivers for touch screen so any help would be appreciated.



Once I can get the thumb drive version to run with touch screen etc then I can install it and say goodbye to Vista for good.

Has anyone looked at this linux opensource handwritting recognition software? Might be just the ticket...

Cellwriter

http://risujin.org/cellwriter/

Hi,



Has anyone tried Linux on the Q1 Ultra? Any idea whether it works?



Thanks,

Hi,



Has anyone tried Linux on the Q1 Ultra? Any idea whether it works?



Thanks,

Hi,



Has anyone tried Linux on the Q1 Ultra? Any idea whether it works?



Thanks,