Coder Social home page Coder Social logo

asus-linux-drivers / asus-stylus-driver Goto Github PK

View Code? Open in Web Editor NEW
35.0 1.0 1.0 55 KB

Linux supplement driver which adds support bind not already bound buttons by the origin driver to something useful. Main target is Asus Pen SA201H but works even for SA200H, .. , Asus Pen 2.0 SA203H and X11/Wayland.

License: GNU General Public License v2.0

Python 63.34% Shell 36.66%
asus pen stylus driver linux libinput x11 wayland python3

asus-stylus-driver's People

Contributors

ldrahnik avatar safenein avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

Forkers

rishabhsk7

asus-stylus-driver's Issues

Click delay

Everything with the Pen touch and Pressure works pretty good and as expected, except that the when clicking using the pen, the click doesn't work until holding the pen tip touching the screen for some milliseconds, then it works smooth.

For example: to drag a window, if you click and drag, it won't work, but if you click, keep it clicked for a while then start dragging, then it works smoothly

Accordingly:

  1. double click is impossible, since each click has to have long time of hold before it's recognized as a click.
  2. Single click doesn't work (until holding it clicked for a while)
  3. Painting a stroke, will start working smoothly after dragging for some distance and when the click starts to get recognized.

Notes:

  1. This issue is only with the pen tip (other pen buttons works immediately when pressed)
  2. There is no issue with the Pen itself, and it works as expected on windows.

Stylus doesn't get recognised, with bluetooth connected.

System: Vivobook_ASUSLaptop TN3402QA_TN3402QA
OS: Arch Linux
Kernel: 6.3.9-arch1-1

I first installed xf86-input-wacom, as stated here: https://wiki.archlinux.org/title/Tablet_PC
Although it crashed my pc or some reason, I could open terminal but the DE was unresponsive, I rebooted and it worked normally.
Then I followed the steps in readme file, and started the service.
However the stylus was not getting recognised. The logs stated:

ERROR:Pen:Can't find stylus (code: 0)

Even after connecting to bluetooth, it still reported the same.

Zenbook 13 stylus simply not working.

So basically before the switch to arch my stylus worked fine. have set bluetooth to run (i dont know if that has anything to do with it), but still my stylus doesn't show any signs of doing anything. I have run LOG=DEBUG sudo -E ./asus_stylus.py and this is the output

DEBUG:Pen:Set stylus device id 9 from S: Sysfs=/devices/pci0000:00/0000:00:15/i2c_designware.0/12c-9/ELAN003:00 03F1:2D4A.0001/input/input24
DEBUG:Pen:Set stylus id 9 from H=Handlers=event9 mouse1```

UX5400 and ActiveStylus SA200H not working

Hello there,

Thanks for making this public and available for others.

I am trying to use this on Arch linux.
I'm not sure I understand how to use the driver or what else I need to do, cause I'm getting no feedback from the PEN after the driver install.

The logs only have this in it:

DEBUG:Pen:Detect stylus from N: Name="ELAN9009:00 04F3:2DDA Stylus" DEBUG:Pen:Set stylus device id 14 from S: Sysfs=/devices/pci0000:00/0000:00:15.0/i2c_designware.0/i2c-14/i2c-ELAN9009:00/0018:04F3:2DDA.0003/input/input25 DEBUG:Pen:Set stylus id 12 from H: Handlers=event12 mouse1

There are no logs in /var/log/asus-stylus, and the service is started/active.

Please let me know if there's other logs I can pull out.

Much appreciated!

Unsupported Zenbook DUO

There is two issue when using a Zenbook DUO (Zenbook UX8402ZE_UX8402ZE).

Stylus is usable on the main screen but unrecognized when using second one.
No debug output when using on the bottom screen.

Moreover, the input is mapped on the two screen united (when using on main screen, the bottom is mapped on the second screen).

Please, tell me how can I help you getting more information to fix the driver.

  • Map to monitor
  • Work on multiple monitor

(used on Linux ******* 6.4.12-arch1-1 #1 SMP PREEMPT_DYNAMIC Thu, 24 Aug 2023 00:38:14 +0000 x86_64 GNU/Linux)

Breaks PopOS, VanillaOS and Fedora

I don't know why but, i tried these distros. When i install, there is no problem, but after reboot can't see my desktop. It stucks on login. These three are just fresh install, i just did their updates and followed github processes. I could login with ctrl+alt+F buttons to terminal and reach my files but can not see desktop.

[Information]

Every distro has gnome.
PoP and Vanilla is 22.04 Ubuntu base i think.
Fedora Workstation 38.

I have Asus Zenbook UM3402YA
Ryzen 5 5625U

[Feature request]: Using grab on X11 allows rebind already binded keys without duplicate sending

with something like this:

from Xlib import X

def get_keycode_of_ascii_char(char):
    display_var = os.environ.get('DISPLAY')
    display = Xlib.display.Display(display_var)
    root = display.screen().root
    #root.change_attributes(event_mask = X.KeyPressMask|X.KeyReleaseMask)
    #keycode 10 má čislo 1
    root.grab_key(10, 0, True, X.GrabModeAsync, X.GrabModeAsync)
    while True:
        event = display.next_event()
        log.info(event)

    keysym = Xlib.XK.string_to_keysym(char)
    keycode = display.keysym_to_keycode(keysym) - 8
    return keycode

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.