<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>
            
                    thinkpad on
                
            
            The Neo-Babbage Files</title>
        <link>https://babbagefiles.xyz/categories/thinkpad/</link>
        <description>Recent content  in thinkpad
            on The Neo-Babbage Files</description>
        <language>en-gb</language>
        
                <managingEditor>slade@lambda-y.net (Benjamin Slade)</managingEditor>
                <webMaster>slade@lambda-y.net (Benjamin Slade)</webMaster><lastBuildDate>Mon, 29 Dec 2025 11:00:32 +0000</lastBuildDate>
        <generator>Hugo -- gohugo.io</generator>
        <docs>https://validator.w3.org/feed/docs/rss2.html</docs>
            <atom:link href="https://babbagefiles.xyz/categories/thinkpad/index.xml" rel="self" type="application/rss&#43;xml" />
        
            
            <item>
                <title>Dealing with possessed TrackPoints on later model ThinkPads</title>
                <link>https://babbagefiles.xyz/possessed-trackpoint/</link>
                
                
                <description>&lt;p&gt;On a new-to-me ThinkPad T440p, I&amp;rsquo;ve had the worst time with the
TrackPoint.&lt;/p&gt;
&lt;p&gt;First, the stock configuration has a horrible touchpad -
which shouldn&amp;rsquo;t matter if you don&amp;rsquo;t use the touchpad, but the
horribleness of it is that the physical buttons that should be on the
top of the touchpad, and are on the touchpads of models preceding and
following the **40 line, are not there. But one &lt;a href=&#34;https://octoperf.com/blog/2018/11/07/thinkpad-t440p-buyers-guide/#trackpad&#34;&gt;can replace it&lt;/a&gt;, and so
I did.&lt;/p&gt;
&lt;p&gt;The T440p is nice in that servicing the fan and other internals of the
machine is a relatively easy affair compared to say an X230. Just undo
two screws on the bottom of the laptop and slide off the back panel,
and you have access to memory, drives, the CPU, and so on. And so
swapping in a different CPU was really easy and painless.&lt;/p&gt;
&lt;p&gt;On the other hand, changing the touchpad was a very involved
affair. But it &lt;a href=&#34;https://www.youtube.com/watch?v=7wM4Kqdy3_E&#34;&gt;can be done&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;However, still the mouse-cursor experience for the machine continued
to be horrible. Firstly, there was significant &amp;ldquo;drift&amp;rdquo; of the
TrackPoint. I.e., even once pressure is released, it keeps moving, for
a long time.&lt;/p&gt;
&lt;p&gt;However, this ends up being solvable via&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;sudo -s &lt;span class=&#34;nb&#34;&gt;echo&lt;/span&gt;  &lt;span class=&#34;s1&#34;&gt;&amp;#39;ACTION==&amp;#34;add&amp;#34;,SUBSYSTEM==&amp;#34;input&amp;#34;,ATTR{name}==&amp;#34;TPPS/2 IBM TrackPoint&amp;#34;,ATTR{device/drift_time}=&amp;#34;30&amp;#34;&amp;#39;&lt;/span&gt;  &amp;gt; /etc/udev/rules.d/10-trackpoint.rules
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;(If you&amp;rsquo;re trying to do this in Guix, something like:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-scheme&#34; data-lang=&#34;scheme&#34;&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;define &lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;%trackpoint-drift-rule&lt;/span&gt;
  &lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nf&#34;&gt;udev-rule&lt;/span&gt;
    &lt;span class=&#34;s&#34;&gt;&amp;#34;10-trackpoint.rules&amp;#34;&lt;/span&gt;
    &lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;string-append &lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;ACTION==\&amp;#34;add\&amp;#34;,SUBSYSTEM==\&amp;#34;input\&amp;#34;,ATTR{name}==\&amp;#34;TPPS/2 IBM TrackPoint\&amp;#34;,ATTR{device/drift_time}=\&amp;#34;25\&amp;#34;&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;))&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-scheme&#34; data-lang=&#34;scheme&#34;&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;define &lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;%my-desktop-services&lt;/span&gt;
   &lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;cons &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nf&#34;&gt;udev-rules-service&lt;/span&gt; &lt;span class=&#34;ss&#34;&gt;&amp;#39;trackpoint-drift&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;%trackpoint-drift-rule&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;
         &lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nf&#34;&gt;modify-services&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;%desktop-services&lt;/span&gt;
                          &lt;span class=&#34;o&#34;&gt;....&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;c1&#34;&gt;; other modifications here&lt;/span&gt;
         &lt;span class=&#34;p&#34;&gt;))&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-scheme&#34; data-lang=&#34;scheme&#34;&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nf&#34;&gt;operating-system&lt;/span&gt;
  &lt;span class=&#34;o&#34;&gt;....&lt;/span&gt;
  &lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nf&#34;&gt;services&lt;/span&gt;
    &lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nf&#34;&gt;append&lt;/span&gt;
     &lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nf&#34;&gt;list&lt;/span&gt;
      &lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nf&#34;&gt;service&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;openssh-service-type&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;
      &lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nf&#34;&gt;service&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;cups-service-type&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;
      &lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nf&#34;&gt;service&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;nix-service-type&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;
      &lt;span class=&#34;o&#34;&gt;....&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;
     &lt;span class=&#34;nv&#34;&gt;%my-desktop-services&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;))&lt;/span&gt;
  &lt;span class=&#34;o&#34;&gt;....&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;instead.)&lt;/p&gt;
&lt;p&gt;But, unfortunately, this doesn&amp;rsquo;t solve what is actually the most horrible issue:
the mouse cursor sometimes, when in use, just teleports around the edges
of the screen and starts randomly clicking on things.&lt;/p&gt;
&lt;p&gt;I finally turned up some discussion of this issue (though not for the
T440p specifically) at: &lt;a href=&#34;https://bugzilla.kernel.org/show_bug.cgi?format=multiple&amp;amp;id=209167&#34;&gt;https://bugzilla.kernel.org/show_bug.cgi?format=multiple&amp;amp;id=209167&lt;/a&gt;
(The discussion suggests that it should somehow be solved in the
kernel, but that is not my experience, even running kernel 5.17.13.)&lt;/p&gt;
&lt;p&gt;And found that adding &lt;code&gt;psmouse.proto=imps&lt;/code&gt; to the kernel arguments and
disabling the touchpad in the stock BIOS solves the &amp;ldquo;possessed mouse
cursor&amp;rdquo; issue. For better or worse, it seem to make the TrackPoint be
detected as a generic PS/2 mouse. Which means that &lt;code&gt;drift_time&lt;/code&gt; can no
longer be set, and I do get a little bit of drift from time to time,
but it&amp;rsquo;s not too bad and certainly is far less maddening than the
&amp;ldquo;possessed mouse cursor&amp;rdquo; behaviour.&lt;/p&gt;
&lt;p&gt;For Guix, the way to implement this is something along the lines of:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-scheme&#34; data-lang=&#34;scheme&#34;&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nf&#34;&gt;operating-system&lt;/span&gt;
 &lt;span class=&#34;o&#34;&gt;...&lt;/span&gt;
 &lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nf&#34;&gt;kernel-arguments&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nf&#34;&gt;cons*&lt;/span&gt; &lt;span class=&#34;s&#34;&gt;&amp;#34;modprobe.blacklist=pcspkr,snd_pcsp&amp;#34;&lt;/span&gt; &lt;span class=&#34;s&#34;&gt;&amp;#34;psmouse.proto=imps&amp;#34;&lt;/span&gt; &lt;span class=&#34;s&#34;&gt;&amp;#34;acpi_osi=Linux&amp;#34;&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;%default-kernel-arguments&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;))&lt;/span&gt;
 &lt;span class=&#34;o&#34;&gt;...&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;(The other kernel arguments are simply the other ones I use, and are
not directly connected with this issue.)&lt;/p&gt;
&lt;p&gt;Depending on the model of ThinkPad and/or the environment, using
&lt;code&gt;psmouse.proto=bare&lt;/code&gt; instead may work better (see discussion at:
&lt;a href=&#34;https://www.reddit.com/r/thinkpad/comments/v7vn0o/thinkpad_t440p_trackpoint_occasionally_going_crazy/icjkk0o/&#34;&gt;https://www.reddit.com/r/thinkpad/comments/v7vn0o/thinkpad_t440p_trackpoint_occasionally_going_crazy/icjkk0o/&lt;/a&gt;
).&lt;/p&gt;
&lt;p&gt;So, perhaps not an entirely satisfactory solution, this impish
exorcism, but better than alternatives.&lt;/p&gt;
</description>
                
                        <author>Benjamin.Slade@fakeEmailToMakeValidatorHappy.com (Benjamin Slade)</author>
                
                     
                        
                             
                            
                                
                                 
                                    <category domain="https://babbagefiles.xyz/categories/thinkpad">thinkpad</category>
                                 
                                    <category domain="https://babbagefiles.xyz/categories/linux">linux</category>
                                 
                                    <category domain="https://babbagefiles.xyz/categories/guix">guix</category>
                                
                            
                        
                     
                        
                     
                        
                    
                
                <guid>https://babbagefiles.xyz/possessed-trackpoint/</guid>
                <pubDate>Sat, 18 Jun 2022 19:51:00 -0600</pubDate>
            </item>
        
    </channel>
</rss>


