Disable touchpad acceleration on Debian Stretch (libinput, KDE Plasma)

For some unknown reason, there is no option exposed to disable acceleration when using a laptop touchpad with libinput. [insert gamer-oriented argument about how mouse acceleration is incompatible with muscle memory]

Thankfully it isn’t too difficult to remove it in the source code and recompile libinput.

  1. cd to a suitable empty folder
  2. apt-get source libinput10
    sudo apt build-dep libinput10
  3. cd to the downloaded folder (e.g. cd libinput-1.6.3)
  4. Edit the file src/filter.c, find:
    #defined TOUCHPAD_ACCELERATION 9.0
    And replace with:
    #defined TOUCHPAD_ACCELERATION 1.0
  5. debuild -b -uc -us
  6. Glance over the output to make sure build has succeeded
  7. cd ..
    sudo dpkg -i libinput10_1.6.3-1_amd64.deb
    sudo dpkg -i libinput-bin_1.6.3-1_amd64.deb
    (update version number as necessary)
  8. Reboot

Slow upload on Kimsufi server

Recently I spent far too long diagnosing a slow upload speed on a low-end Kimsufi 2G server with an old SiS900 ethernet adapter. The download speed was full 100mbit, but upload was less than 0.1mbit. The issue did not persist into rescue mode, which led me to assume a software issue.

The symptoms matched an issue with TCP windows, or with half duplex vs full duplex, but neither of those turned out to be the case.

The issue turned out to be IRQ related. Simply blacklisting a few unnecessary modules (parallel port, sound) and disabling acpi solved the issue

Fix for Gigabyte motherboard boot loop on resume from sleep

From what I’ve read, this seems to affect a large percentage of Gigabyte motherboards since S3 sleep became a ‘thing’.

The issue is as follows: on a significantly overclocked Gigabyte motherboard (high end or low end), when resuming from S3 sleep the screen never wakes up and after about 15-20 seconds, the system repeatedly turns off and on again every few seconds. The only way to break this loop is to completely remove power from the PSU for several seconds.

The issue is connected with PCIe power, as evidenced by the various reported fixes of disabling onboard NIC power saving and reverting from Intel/AMD AHCI drivers to the Microsoft default ones.

The real fix is very simple: Use Balanced power mode in windows and check that PCI Express Link State Power Management is set to ‘Moderate Power Savings’ and not ‘Off’. The fact that the default setting of moderate does not have the issue explains why it is not more widely reported.

Fix for Samsung 750 and 950 series monitors 120Hz “Not Optimum Mode”

Use 120.8Hz custom refresh rate. Both Windows and the monitor’s OSD will show 121Hz. Actual 121.0Hz will cause the error without fail, it must be a tiny bit below. I guess there is something weird going on with the tolerances in the monitor – I’ve noticed things like mains current spikes contribute to the problem.

This may apply more to HDMI 1440×1080 or 1280×720 than to DisplayPort 1080p.

My exact settings for 1440x1080x120Hz over HDMI are as follows:

DarkELEC Release 3

Just an interim release for now as I don’t have my proper dev environment (TV, Pi-compatible internet connection, etc.). Once I figure out a way of getting networking to my Pi, I’ll throw in the promised features such as USB audio support.

No idea at all if this works (I can’t do much more than play about in the menu with no networking), but it certainly seems a lot smoother and more responsive than r2.

There’s been no significant changes on my part, but likely a very significant amount from upstream (namely the extra codecs, 512mb support, etc.).

 

Download: http://shit.weeaboo.com/darkelec3.zip
Sauce: https://github.com/darkimmortal/DarkELEC
More details: http://darkimmortal.com/2012/05/darkelec-raspberry-pi-optimised-openelec-fork/

Asus Xonar sound card frameskip issue

Just a little tidbit of information regarding Xonar sound cards: The ‘GX’ mode, while I dread to think how deeply it hooks into DirectX (considering it crashes several old games), must be enabled for anything which involves certain clocks to not develop awful judder on the video side of things.

Basically if you use ReClock or play osu!, or anything of that sort (high fps/fast reaction games), enable GX mode. Without GX enabled, I’ve found there to be intermittent severe frame skip, which is only visible to the eye and not to any kind of software FPS or frame loss counter.

If you have a Xonar card and a high refresh rate monitor (it’s not very clear at 60hz), compare GX on and off with http://www.prad.de/en/monitore/testsoftware/pixperan.html.

If I remember correctly, with Aero enabled or Vsync on, the issue is not apparent.

DarkElec Release 2

NEW VERSION! http://darkimmortal.com/2012/11/darkelec-release-3/

Finally got DarkELEC to compile successfully with the latest upstream changes from OpenELEC along with a few tweaks that I’ve since forgotten 😛

Observations for this build:

  • Fairly high idle CPU usage (70%+) sadly
  • libCEC works on LG and Sony TVs now, however all input stops working once you begin playing a video (a complete deal-breaker for me personally 🙁 )
  • Built in streaming services still work
  • Overall smoother UI
  • More reliable Wifi
  • Thumbnails aren’t missing/oddly coloured

Download: http://shit.weeaboo.com/darkelec2.zip
Sauce: https://github.com/darkimmortal/DarkELEC
More details: http://darkimmortal.com/2012/05/darkelec-raspberry-pi-optimised-openelec-fork/