Page 1 of 6

Mouse pad option

Posted: 24 Feb 2013, 14:50
by Ed_P
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.

Re: Mouse pad option

Posted: 24 Feb 2013, 15:11
by fanthom
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)

Re: Mouse pad option

Posted: 24 Feb 2013, 15:17
by brokenman
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.

Re: Mouse pad option

Posted: 24 Feb 2013, 20:49
by Ed_P
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? :%)

Re: Mouse pad option

Posted: 25 Feb 2013, 17:00
by Ed_P
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. :(

Re: Mouse pad option

Posted: 25 Feb 2013, 22:12
by Ed_P
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.

Re: Mouse pad option

Posted: 26 Feb 2013, 00:55
by brokenman
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

Re: Mouse pad option

Posted: 26 Feb 2013, 04:04
by Ed_P
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.

Re: Mouse pad option

Posted: 26 Feb 2013, 04:17
by Ed_P
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

Re: Mouse pad option

Posted: 26 Feb 2013, 13:37
by brokenman
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

Re: Mouse pad option

Posted: 26 Feb 2013, 14:47
by Ed_P
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.

Re: Mouse pad option

Posted: 26 Feb 2013, 16:36
by fanthom
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.

Re: Mouse pad option

Posted: 26 Feb 2013, 16:41
by Ed_P
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.

Re: Mouse pad option

Posted: 28 Feb 2013, 17:57
by Ed_P
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:

Re: Mouse pad option

Posted: 28 Feb 2013, 18:45
by fanthom
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.