Reverse Engineering Logitech Smooth Scrolling and its Chrome Extension

Поділитися
Вставка
  • Опубліковано 10 вер 2024

КОМЕНТАРІ • 17

  • @NickPalmer1
    @NickPalmer1 7 років тому +1

    I can't thank you enough for posting this video. I've been trying to figure out how to do this for months!!

    • @upgrdman
      @upgrdman  7 років тому

      Thanks for the kind feedback. Good luck!

  • @arpxdagoodone
    @arpxdagoodone 3 роки тому +1

    I know develpoer minds work different way, but you sometimes seem to miss details. Like if you see at 23:00 under details, there's the ID of logitech smooth scrolling, so you get the folder name as well...or at 21:26 you don't need to go to the options, if you move your mouse one inch left there is the box for hidden items..
    20:43 If you copy the whole path and replace with %USERPROFILE% and paste this line to the Windows Explorer, it will take you to that folder...
    I know I know this is not the point...I just tought I let you know...

  • @IxousLouis
    @IxousLouis 5 років тому +1

    Hi ! Very nice work ! I wonder, could this be used to force smooth scrolling on other programs ? I also had noticed that if I have chrome focused but the cursor hovering above VSCode, Fusion630, etc, it works with smoothscrolling. I thought about tring to create a program that would focus a fantom chromium app whenever I scroll, but that couldn't work for several reasons. Therefore, by opening the same network thing (sorry networking is foreign knowledge to me) when focusing other third party programs, could that work ?

    • @HAWXLEADER
      @HAWXLEADER 2 роки тому

      This is so annoying! I hate that behaviour!
      It used to work on more programs (especially windows UWP programs) now it only works when they are not in focus and Edge/Chrome is.

    • @lolerie
      @lolerie Рік тому

      @@HAWXLEADER you are not even supposed to be able to scroll in non-focused windows. That is not standard behaviour.

  • @MickyFoley
    @MickyFoley 3 роки тому

    I know, this is now 4 years old, but since I'm into banging my head on the desk: Do you have any clue, how Logitech Options does that currently? I tried everything I know: Trying to add a profile, edited the memory, sniffed my network, etc.
    I believe, Logitech now has hardcoded the supported apps. But I might be wrong. Maybe you have a clue? Thanks in advance.

    • @upgrdman
      @upgrdman  3 роки тому +1

      I'm still trying to figure that out myself. So frustrating... I was hoping that using the Direct Manipulation API would convince the Logitech driver to output high-precision scroll events, but it's not working for me. If I ever figure it out I'll post an update here. Please share if you find a solution in the mean time.

    • @MickyFoley
      @MickyFoley 3 роки тому +1

      @@upgrdman The latest I figured out was, that the profiles for supported applications seem to be now hardcoded in LogiOptionsMgr. LogiOptionsUI can be disassembled with dnspy where I found clues about it. My theory was somehow true I think, because renaming applications to chrome.exe, msedge.exe or firefox.exe will in fact get smooth scrolling to work. I tried to get support from Logitech themselves, but to be honest: It was a pain in the back with no solution. Promises to get the problem forwarded to the developers were broken, and I had to deal with the "normal" support over and over again.
      I'll keep you for sure updated, if I can figure out where a hook might be possible. But since the security issues with prior Logitech Options (open websocket server) I doubt, it will be that easy for us :).

    • @upgrdman
      @upgrdman  21 день тому

      @@MickyFoley I know it's been years, but I just found a work around! There's an open source tool to MITM the Logitech driver and force smooth scrolling. Here's what I found:
      github.com/jcbastosportela/logioptspp
      www.reddit.com/r/logitech/comments/14h34we/systemwide_smooth_scrolling/

  • @agentgreenland
    @agentgreenland 7 років тому +1

    nice work...! :)

  • @sgv6618
    @sgv6618 7 років тому +3

    it is so funny that you haven't whitelisted your own website in AdBlock!

    • @upgrdman
      @upgrdman  7 років тому +2

      Haha, good catch.

    • @sgv6618
      @sgv6618 7 років тому +1

      Nice video by the way :)! Very interesting.

  • @sirk390
    @sirk390 6 років тому

    Nice, but it would be even nicer to reverse SetPoint and see what command it sends to the mouse or to the driver, so that you could program something to always activate this feature.

    • @upgrdman
      @upgrdman  6 років тому +1

      That would be interesting to do, but it seems unnecessary to me. The driver (SetPoint) provides a simple way to achieve the goal, and by using that WebSocket interface, you don't have to mess with modifying the driver every time there is an update. Also, you probably would not want to always use the high-resolution mode. A few programs (I've found 2) seem to consider every scroll event to mean "scroll a few lines" so they scroll way too fast when in high-resolution mode.