Mouse pad option

Post here if you are a new Porteus member and you're looking for some help.
User avatar
Ed_P
Contributor
Contributor
Posts: 3409
Joined: 06 Feb 2013, 22:12
Distribution: Cinnamon 3.2.2 64-bit ISO
Location: Western NY, USA

Mouse pad option

Post#1 by Ed_P » 24 Feb 2013, 14:50

On my netbook I have an ELAN mouse pad and I have apparently big hands because the mouse moves around frequently when I type and brush against the pad. Thus when I'm watching the keyboard, rather than the screen, what I type ends up in the wrong places. On Windows I have the options of having the pointer hidden when I type. Is there a way to invoke that option on Porteus? When I use FF on Porteus my typing is a mess and I end up reverting to Windows to post.
Ed

User avatar
fanthom
Site Admin
Site Admin
Posts: 4623
Joined: 28 Dec 2010, 02:42
Distribution: Porteus Kiosk
Location: Poland, currently - Cork, IE
Contact:

Re: Mouse pad option

Post#2 by fanthom » 24 Feb 2013, 15:11

in KDE4 you should be able to do it through kde4 'system settings' -> touchpad (can't remember exac name - at work now).
in other DE's you can open terminal -> change to root -> run 'rmmod psmouse'/ 'modprobe psmouse' to re-enable it.

if you dont use touchpad at all then you could blacklist this module in /etc/modprobe.d folder (check other files from that dir for proper syntax)
Please add [Solved] to your thread title if the solution was found.

User avatar
brokenman
Site Admin
Site Admin
Posts: 5652
Joined: 27 Dec 2010, 03:50
Distribution: Porteus v3.2rcX all desktops
Location: Brazil
Contact:

Re: Mouse pad option

Post#3 by brokenman » 24 Feb 2013, 15:17

https://wiki.archlinux.org/index.php/To ... ile_Typing

This link gives some useful syndaemon and synclient options to disable touchpad while typing. It may involve starting the syndaemon with certain options.
How do i become super user?
Wear your underpants on the outside and put on a cape.

User avatar
Ed_P
Contributor
Contributor
Posts: 3409
Joined: 06 Feb 2013, 22:12
Distribution: Cinnamon 3.2.2 64-bit ISO
Location: Western NY, USA

Re: Mouse pad option

Post#4 by Ed_P » 24 Feb 2013, 20:49

fanthom wrote:in KDE4 you should be able to do it through kde4 'system settings' -> touchpad (can't remember exac name - at work now).
:oops: I don't know what I'm in.
VERY nice. Is there an English version? :unknown:
add the following line to your ~/.xinitrc before you run your window manager (if not using a login manager):
What is "my" ~/.xinitrc?? And when do "I" run "my" windows manager? :%)
Ed

User avatar
Ed_P
Contributor
Contributor
Posts: 3409
Joined: 06 Feb 2013, 22:12
Distribution: Cinnamon 3.2.2 64-bit ISO
Location: Western NY, USA

Re: Mouse pad option

Post#5 by Ed_P » 25 Feb 2013, 17:00

Image No help? Image

Things I think I have learned so far:

I think the Porteus windows manager is Razor rather than KDE4.
If I disable the psmouse I don't know how to switch between windows.
I think Linux has command scripts. Their file names end in .sh
Porteus doesn't have a /etc/X11/xorg.conf.d/50-synaptics.conf file.
There is a shortcut to an xinitrc file in the /etc/X11/xint folder. Not sure how that relates to "~/.xinitrc".

If I have to fix lines one more time due to mouse jumps I'm going to throw this system thru a window.

Does Porteus have any of these tools installed or plans to install one??
https://wiki.archlinux.org/index.php/To ... on_the_fly

Holy crap!! It appears that you do. :)
https://wiki.archlinux.org/index.php/To ... #Synclient
lets see o
Well what it can d

Apparently not much help. :(
Ed

User avatar
Ed_P
Contributor
Contributor
Posts: 3409
Joined: 06 Feb 2013, 22:12
Distribution: Cinnamon 3.2.2 64-bit ISO
Location: Western NY, USA

Re: Mouse pad option

Post#6 by Ed_P » 25 Feb 2013, 22:12

Ok, how does one create a shortcut on the desktop to execute a script file on a USB drive? A cheatcode or a module to run at startup time would be ok also I think.
Ed

User avatar
brokenman
Site Admin
Site Admin
Posts: 5652
Joined: 27 Dec 2010, 03:50
Distribution: Porteus v3.2rcX all desktops
Location: Brazil
Contact:

Re: Mouse pad option

Post#7 by brokenman » 26 Feb 2013, 00:55

You can place a link (commonly called symlink) on your desktop by doing the following.

Open a console (also called terminal) and enter:

Code: Select all

chmod +x  /path/to/my/script.sh
ln -s /path/to/my/script.sh /home/guest/Desktop/Myshortcut.sh
The first line makes sure the script is executable.
The second creates a link to the script that will be executed when clicking on the shortcut.

If you want to have this script run automagically at every start then put an entry in /etc/rc.d/rc.local
All lines in this file are run at boot. For example the following would run the script at /path/to/my/script.sh

Code: Select all

echo "sh /path/to/my/script.sh" >> /etc/rc.d/rc.local
The double >> makes sure that the line you echo is added to the bottom of the file. One single > will remove everything in the file and just put whatever you echo.

Here is what i suggest for having your touchpad detect when your palm touches it. Open a console and enter.

Code: Select all

synclient PalmDetect=1
synclient PalmMinWidth=4
The first line sets palm detect for your touchpad. The second sets the area of detection. The larger the number the easier it is to move the mouse with your palm. The smaller the number, the smaller the contact area on the touchpad needs to be to move. If this works for you then enter them into your rc.local file.

Code: Select all

echo "synclient PalmDetect=1" >> /etc/rc.d/rc.local
echo "synclient PalmMinWidth=4" >> /etc/rc.d/rc.local
Of course you will need to be saving changes for this to persist after a reboot so probably best to put this rc.local file into your rootcopy folder. After editing the file just copy it to the rootcopy folder.

Code: Select all

cp -a --parents /etc/rc.d/rc.local /mnt/sdxY/porteus/rootcopy
The -a means copy with all properties intact. The --parents means to create the full path /etc/rc.d in the location if the folders do not exist. The /mnt/sdxY is the location of the porteus install. The rootcopy folder is copied to the real file system during boot. You can find the rootcopy folder by using another command.

Code: Select all

grep -A1 "ata found in:" /var/log/porteus-livedbg|tail -n1
How do i become super user?
Wear your underpants on the outside and put on a cape.

User avatar
Ed_P
Contributor
Contributor
Posts: 3409
Joined: 06 Feb 2013, 22:12
Distribution: Cinnamon 3.2.2 64-bit ISO
Location: Western NY, USA

Re: Mouse pad option

Post#8 by Ed_P » 26 Feb 2013, 04:04

Thank you for the detailed instructions brokenman. :beer:

I did this part so far and have to reboot to see if it works.

Code: Select all

root@porteus:~# echo "sh /mnt/sdb1/Touchpad.sh" >> /etc/rc.d/rc.local
root@porteus:~# cat /etc/rc.d/rc.local
#!/bin/sh
#
# /etc/rc.d/rc.local:  Local system initialization script.
#
# Put any local startup commands in here.  Also, if you have
# anything that needs to be run at shutdown time you can
# make an /etc/rc.d/rc.local_shutdown script and put those
# commands in there.

sh /mnt/sdb1/Touchpad.sh
root@porteus:~# cat /mnt/sdb1/Touchpad.sh
synclient PalmDetect=1 PalmMinWidth=4
synclient RightEdge=5950 BottomEdge=5950
# https://stuffivelearned.org/doku.php?id=os:linux:general:synapticstouchtricks#digging_deeper_with_synclient
# http://guides.ianrenton.com/howto-linux-and-synaptics-touchpads-for-little-fingers/
# http://forum.porteus.org/viewtopic.php?f=81&t=1955&p=13313#p13313root@porteus:~# 
I initially had the PalmDetect=1 plus the Edge parms and added your PalmMinWidth parm. The Edge values are WAGs based on readings I found but seem to help when I tried them earlier.
Ed

User avatar
Ed_P
Contributor
Contributor
Posts: 3409
Joined: 06 Feb 2013, 22:12
Distribution: Cinnamon 3.2.2 64-bit ISO
Location: Western NY, USA

Re: Mouse pad option

Post#9 by Ed_P » 26 Feb 2013, 04:17

Drat!! :evil:

The changes didn't show up when I rebooted. Manually executing the script worked but not the autorun when booting.

dmesg doesn't show anything helpful, that I can see.

Code: Select all

root@porteus:~# dmesg | tail
[   15.536791] CR2: 0000000000000000
[   15.539450] ---[ end trace 6f1c89f85a0c68e9 ]---
[   18.234120] NET: Registered protocol family 10
[   18.325213] atl1c 0000:06:00.0: irq 42 for MSI/MSI-X
[   18.354784] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[   35.580641] ata1.00: configured for UDMA/100
[   35.580658] ata1: EH complete
[   39.805205] qxkb[2523]: segfault at 94 ip b6993f16 sp bfcdf340 error 4 in libX11.so.6.3.0[b690a000+132000]
[   47.800126] input: failed to attach handler mousedev to device input13, error: -4
[   47.800262] mousedev: PS/2 mouse device common for all mice
root@porteus:~# 
And the impact of the changes doesn't seem as helpful as I originally thought. Input still jumping around, following the pointer's position.

Code: Select all

root@porteus:~# synclient
Parameter settings:
    LeftEdge                = 56
    RightEdge               = 5950
    TopEdge                 = 34
    BottomEdge              = 5950
    FingerLow               = 1
    FingerHigh              = 1
    FingerPress             = 256
    MaxTapTime              = 180
    MaxTapMove              = 68
    MaxDoubleTapTime        = 180
    SingleTapTimeout        = 180
    ClickTime               = 100
    FastTaps                = 0
    EmulateMidButtonTime    = 75
    EmulateTwoFingerMinZ    = 282
    EmulateTwoFingerMinW    = 7
    VertScrollDelta         = 30
    HorizScrollDelta        = 30
    VertEdgeScroll          = 0
    HorizEdgeScroll         = 0
    CornerCoasting          = 0
    VertTwoFingerScroll     = 1
    HorizTwoFingerScroll    = 0
    MinSpeed                = 1
    MaxSpeed                = 1.75
    AccelFactor             = 0.129366
    TrackstickSpeed         = 40
    EdgeMotionMinZ          = 30
    EdgeMotionMaxZ          = 160
    EdgeMotionMinSpeed      = 1
    EdgeMotionMaxSpeed      = 123
    EdgeMotionUseAlways     = 0
    TouchpadOff             = 0
    LockedDrags             = 0
    LockedDragTimeout       = 5000
    RTCornerButton          = 0
    RBCornerButton          = 0
    LTCornerButton          = 0
    LBCornerButton          = 0
    TapButton1              = 1
    TapButton2              = 2
    TapButton3              = 3
    ClickFinger1            = 1
    ClickFinger2            = 1
    ClickFinger3            = 1
    CircularScrolling       = 0
    CircScrollDelta         = 0.1
    CircScrollTrigger       = 0
    CircularPad             = 0
    PalmDetect              = 1
    PalmMinWidth            = 4
    PalmMinZ                = 200
    CoastingSpeed           = 20
    CoastingFriction        = 50
    PressureMotionMinZ      = 30
    PressureMotionMaxZ      = 160
    PressureMotionMinFactor = 1
    PressureMotionMaxFactor = 1
    GrabEventDevice         = 1
    TapAndDragGesture       = 1
    AreaLeftEdge            = 0
    AreaRightEdge           = 0
    AreaTopEdge             = 0
    AreaBottomEdge          = 0
    HorizHysteresis         = 7
    VertHysteresis          = 7
    ClickPad                = 0
Ok what am I doing wrong?

http://img687.imageshack.us/img687/6524/bootscreene.png

Image
Uploaded with ImageShack.us
Ed

User avatar
brokenman
Site Admin
Site Admin
Posts: 5652
Joined: 27 Dec 2010, 03:50
Distribution: Porteus v3.2rcX all desktops
Location: Brazil
Contact:

Re: Mouse pad option

Post#10 by brokenman » 26 Feb 2013, 13:37

As per instructions above, put the synclient commands into rc.local file and then put rc.local into your rootcopy folder.

The following commands (as root) will copy the rc.local file into your rootcopy folder with any luck.

Code: Select all

base=$(grep -A1 "ata found in:" /var/log/porteus-livedbg|tail-n1|sed 's@//@/@g')
cp -a --parents /etc/rc.d/rc.local ${base}/rootcopy
How do i become super user?
Wear your underpants on the outside and put on a cape.

User avatar
Ed_P
Contributor
Contributor
Posts: 3409
Joined: 06 Feb 2013, 22:12
Distribution: Cinnamon 3.2.2 64-bit ISO
Location: Western NY, USA

Re: Mouse pad option

Post#11 by Ed_P » 26 Feb 2013, 14:47

brokenman wrote:As per instructions above, put the synclient commands into rc.local file and then put rc.local into your rootcopy folder.
What about these instructions which I did? Image
brokenman wrote:If you want to have this script run automagically at every start then put an entry in /etc/rc.d/rc.local
All lines in this file are run at boot. For example the following would run the script at /path/to/my/script.sh

Code: Select all

echo "sh /path/to/my/script.sh" >> /etc/rc.d/rc.local
The double >> makes sure that the line you echo is added to the bottom of the file. One single > will remove everything in the file and just put whatever you echo.
Ed

User avatar
fanthom
Site Admin
Site Admin
Posts: 4623
Joined: 28 Dec 2010, 02:42
Distribution: Porteus Kiosk
Location: Poland, currently - Cork, IE
Contact:

Re: Mouse pad option

Post#12 by fanthom » 26 Feb 2013, 16:36

What about these instructions which I did?
you have put your script in wrong directory as on the image i can see:

Code: Select all

sh: /mnt/sdb1/Touchpad.sh: no such file or directory
btw: mind that capital letters matters in linux.
Please add [Solved] to your thread title if the solution was found.

User avatar
Ed_P
Contributor
Contributor
Posts: 3409
Joined: 06 Feb 2013, 22:12
Distribution: Cinnamon 3.2.2 64-bit ISO
Location: Western NY, USA

Re: Mouse pad option

Post#13 by Ed_P » 26 Feb 2013, 16:41

fanthom wrote:
What about these instructions which I did?
you have put your script in wrong directory as on the image i can see:

Code: Select all

sh: /mnt/sdb1/Touchpad.sh: no such file or directory
Not according to the 2nd image. That's what I don't understand.
btw: mind that capital letters matters in linux.
I suspected as much and the file name looks ok with the single capital letter.

Thanks for looking at this.
Ed

User avatar
Ed_P
Contributor
Contributor
Posts: 3409
Joined: 06 Feb 2013, 22:12
Distribution: Cinnamon 3.2.2 64-bit ISO
Location: Western NY, USA

Re: Mouse pad option

Post#14 by Ed_P » 28 Feb 2013, 17:57

Hello??

Problem still exists, booting says file not found.
Image
Uploaded with ImageShack.us

But

Code: Select all

root@porteus:~# cat /etc/rc.d/rc.local
#!/bin/sh
#
# /etc/rc.d/rc.local:  Local system initialization script.
#
# Put any local startup commands in here.  Also, if you have
# anything that needs to be run at shutdown time you can
# make an /etc/rc.d/rc.local_shutdown script and put those
# commands in there.

sh /mnt/sdb1/touchpad.sh
root@porteus:~# ls /mnt/sdb1/touchpad.sh
/mnt/sdb1/touchpad.sh*
root@porteus:~# 
the file is there.

I changed the capital T to a lower case t, it didn't help. I changed the command "sh /mnt/sdb1/touchpad.sh" to "sh /dev/sdb1/touchpad.sh", it didn't help. I haven't done the synclients commands directly in rc.local because that doesn't address the .sh problem, it merely sidesteps it.

So, why doesn't the rc.local function work? :unknown:
Ed

User avatar
fanthom
Site Admin
Site Admin
Posts: 4623
Joined: 28 Dec 2010, 02:42
Distribution: Porteus Kiosk
Location: Poland, currently - Cork, IE
Contact:

Re: Mouse pad option

Post#15 by fanthom » 28 Feb 2013, 18:45

from the attached picture i see that udev reaches a timeout on sda (which is odd and i dont know why it happens) so maybe sdb is not ready when rc.local tries to launch a script from it.

you are booting from ISO image so please put your script into /mnt/sdb1/scripts/bin folder and boot with 'rootcopy=/mnt/sdb1/scripts' cheatcode so it will be coped directly to aufs.
your custom rc.local should contain following command:

Code: Select all

sh /bin/touchpad.sh
should be ok now.
Please add [Solved] to your thread title if the solution was found.

Post Reply