Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ROG Flow Z13 2025 (GZ302EA) - side button click launches ms store too #3816

Closed
2 tasks done
patrcza011 opened this issue Mar 10, 2025 · 27 comments
Closed
2 tasks done
Labels
question Further information is requested

Comments

@patrcza011
Copy link

patrcza011 commented Mar 10, 2025

Rules

  • I made myself familiar with the Readme, FAQ and Troubleshooting.
  • I understand that, if insufficient information or no app logs will be provided, my issue will be closed without an answer.

What's wrong?

When I have active ASUS Optimization service side button click launches G-helper (as should) and ScreenXpert (msstore page if not installed). When ASUS Optimization service is disabled - side button do not launch ScreenXpert but keyboard detachment/attachment is not detected by windows GUI and it stays constant in tablet or laptop mode as it was before keyboard attachment or detachment.

How to reproduce the bug?

Services enabled case

  1. Click side button
  2. See msstore launched and g-helper

Services disabled case

  1. Stop ASUS services in extras
  2. Detach/attach keyboard
  3. See windows GUI in without changes

Logs

//services enabled case

2025-03-10 11:45:30: WMI event 95
2025-03-10 11:45:37: TL134ADXP03 HDR: False 10 5 True
2025-03-10 11:45:38: Hibernate after 2147483647

//services disabled case (disabling, detaching and attaching keyboard)

2025-03-10 11:47:20: ------------
2025-03-10 11:47:20: App launched: ROG Flow Z13 GZ302EA_GZ302EA :0.205.0.0en-US.
2025-03-10 11:47:20: Start Count: 36
2025-03-10 11:47:20: C:\ProgramData\ASUS\GameVisual doesn't exit
2025-03-10 11:47:22: CPU: -1 - AMD RYZEN AI MAX+ 395 w/ Radeon 8060S - AMD64 Family 26 Model 112 Stepping 0
2025-03-10 11:47:22: AutoSetting for Online
2025-03-10 11:47:22: BatteryLimit = 80 : OK
2025-03-10 11:47:22: Optimization service is running
2025-03-10 11:47:22: \?\DISPLAY#TMA0803#5&2a56f61f&0&UID256#{e6f07b5f-ee97-4a90-b076-33f57bf4eaa7} DISPLAYCONFIG_OUTPUT_TECHNOLOGY_INTERNAL
2025-03-10 11:47:22: \?\DISPLAY#TMA0803#5&2a56f61f&0&UID256#{e6f07b5f-ee97-4a90-b076-33f57bf4eaa7} \.\DISPLAY1\Monitor0
2025-03-10 11:47:22: TL134ADXP03 HDR: False 10 5 True
2025-03-10 11:47:22: Mode = 1 : OK
2025-03-10 11:47:22: Init 1A30: 5D-B9
2025-03-10 11:47:22: Init 1A30: 5D-41-53-55-53-20-54-65-63-68-2E-49-6E-63-2E
2025-03-10 11:47:22: Init 1A30: 5D-05-20-31-00-1A
2025-03-10 11:47:22: Init 18C6: 5D-B9
2025-03-10 11:47:22: Init 18C6: 5D-41-53-55-53-20-54-65-63-68-2E-49-6E-63-2E
2025-03-10 11:47:22: Init 18C6: 5D-05-20-31-00-1A
2025-03-10 11:47:22: USB 1A30: 5D-BD-01-AA-00-00-FF-FF
2025-03-10 11:47:22: USB 18C6: 5D-BD-01-AA-00-00-FF-FF
2025-03-10 11:47:22: AuraMode: AuraStatic
2025-03-10 11:47:22: USB 1A30: 5D-B3-00-00-00-FF-40-EB-00-00-FF-00-80-00-00-00-00
2025-03-10 11:47:22: USB 1A30: 5D-B5-00-00-00
2025-03-10 11:47:22: USB 1A30: 5D-B4
2025-03-10 11:47:22: USB 18C6: 5D-B3-00-00-00-FF-40-EB-00-00-FF-00-80-00-00-00-00
2025-03-10 11:47:22: USB 18C6: 5D-B5-00-00-00
2025-03-10 11:47:22: USB 18C6: 5D-B4
2025-03-10 11:47:22: Init 1A30: 5D-B9
2025-03-10 11:47:22: Init 1A30: 5D-41-53-55-53-20-54-65-63-68-2E-49-6E-63-2E
2025-03-10 11:47:22: Init 1A30: 5D-05-20-31-00-1A
2025-03-10 11:47:22: Init 18C6: 5D-B9
2025-03-10 11:47:22: Init 18C6: 5D-41-53-55-53-20-54-65-63-68-2E-49-6E-63-2E
2025-03-10 11:47:22: Init 18C6: 5D-05-20-31-00-1A
2025-03-10 11:47:22: TL134ADXP03 HDR: False 10 5 True
2025-03-10 11:47:22: Hibernate after 2147483647
2025-03-10 11:47:22: Get-Service -Name "ArmouryCrateControlInterface" | Stop-Service -Force -PassThru | Set-Service -StartupType Disabled
2025-03-10 11:47:22: Monitor Power On
2025-03-10 11:47:22: BatteryLimit = 80 : OK
2025-03-10 11:47:22: Lid Open
2025-03-10 11:47:22: Lid 1A30: 5D-BA-C5-C4-01
2025-03-10 11:47:22: Lid 18C6: 5D-BA-C5-C4-01
2025-03-10 11:47:23: Auto 1A30: 5D-BA-C5-C4-01
2025-03-10 11:47:23: Auto 18C6: 5D-BA-C5-C4-01
2025-03-10 11:47:23: PowerLimit A3 = 90 : OK
2025-03-10 11:47:23: PowerLimit A0 = 90 : OK
2025-03-10 11:47:23: PowerLimit C1 = 90 : OK
2025-03-10 11:47:24: Latest version 0.205.0.0
2025-03-10 11:47:24: Get-Service : Cannot find any service with service name 'ArmouryCrateControlInterface'.
At line:1 char:1

  • Get-Service -Name ArmouryCrateControlInterface | Stop-Service -Force ...
  •   + CategoryInfo          : ObjectNotFound: (ArmouryCrateControlInterface:String) [Get-Service], ServiceCommandExcep 
     tion
      + FullyQualifiedErrorId : NoServiceFoundForGivenName,Microsoft.PowerShell.Commands.GetServiceCommand
    
    
    

2025-03-10 11:47:24: Get-Service -Name "AsHidService" | Stop-Service -Force -PassThru | Set-Service -StartupType Disabled
2025-03-10 11:47:24: powershell Get-Service -Name "AsHidService" | Stop-Service -Force -PassThru | Set-Service -StartupType Disabled
2025-03-10 11:47:24: Get-Service : Cannot find any service with service name 'AsHidService'.
At line:1 char:1

  • Get-Service -Name AsHidService | Stop-Service -Force -PassThru | Set- ...
  •   + CategoryInfo          : ObjectNotFound: (AsHidService:String) [Get-Service], ServiceCommandException
      + FullyQualifiedErrorId : NoServiceFoundForGivenName,Microsoft.PowerShell.Commands.GetServiceCommand
    
    
    

2025-03-10 11:47:24: Get-Service -Name "ASUSOptimization" | Stop-Service -Force -PassThru | Set-Service -StartupType Disabled
2025-03-10 11:47:24: powershell Get-Service -Name "ASUSOptimization" | Stop-Service -Force -PassThru | Set-Service -StartupType Disabled
2025-03-10 11:47:25:
2025-03-10 11:47:25: Get-Service -Name "AsusAppService" | Stop-Service -Force -PassThru | Set-Service -StartupType Disabled
2025-03-10 11:47:25: powershell Get-Service -Name "AsusAppService" | Stop-Service -Force -PassThru | Set-Service -StartupType Disabled
2025-03-10 11:47:26:
2025-03-10 11:47:26: Get-Service -Name "ASUSLinkNear" | Stop-Service -Force -PassThru | Set-Service -StartupType Disabled
2025-03-10 11:47:26: powershell Get-Service -Name "ASUSLinkNear" | Stop-Service -Force -PassThru | Set-Service -StartupType Disabled
2025-03-10 11:47:27: Get-Service : Cannot find any service with service name 'ASUSLinkNear'.
At line:1 char:1

  • Get-Service -Name ASUSLinkNear | Stop-Service -Force -PassThru | Set- ...
  •   + CategoryInfo          : ObjectNotFound: (ASUSLinkNear:String) [Get-Service], ServiceCommandException
      + FullyQualifiedErrorId : NoServiceFoundForGivenName,Microsoft.PowerShell.Commands.GetServiceCommand
    
    
    

2025-03-10 11:47:27: Get-Service -Name "ASUSLinkRemote" | Stop-Service -Force -PassThru | Set-Service -StartupType Disabled
2025-03-10 11:47:27: powershell Get-Service -Name "ASUSLinkRemote" | Stop-Service -Force -PassThru | Set-Service -StartupType Disabled
2025-03-10 11:47:27: Get-Service : Cannot find any service with service name 'ASUSLinkRemote'.
At line:1 char:1

  • Get-Service -Name ASUSLinkRemote | Stop-Service -Force -PassThru | Se ...
  •   + CategoryInfo          : ObjectNotFound: (ASUSLinkRemote:String) [Get-Service], ServiceCommandException
      + FullyQualifiedErrorId : NoServiceFoundForGivenName,Microsoft.PowerShell.Commands.GetServiceCommand
    
    
    

2025-03-10 11:47:27: Get-Service -Name "ASUSSoftwareManager" | Stop-Service -Force -PassThru | Set-Service -StartupType Disabled
2025-03-10 11:47:27: powershell Get-Service -Name "ASUSSoftwareManager" | Stop-Service -Force -PassThru | Set-Service -StartupType Disabled
2025-03-10 11:47:27:
2025-03-10 11:47:27: Get-Service -Name "ASUSLiveUpdateAgent" | Stop-Service -Force -PassThru | Set-Service -StartupType Disabled
2025-03-10 11:47:27: powershell Get-Service -Name "ASUSLiveUpdateAgent" | Stop-Service -Force -PassThru | Set-Service -StartupType Disabled
2025-03-10 11:47:28: Get-Service : Cannot find any service with service name 'ASUSLiveUpdateAgent'.
At line:1 char:1

  • Get-Service -Name ASUSLiveUpdateAgent | Stop-Service -Force -PassThru ...
  •   + CategoryInfo          : ObjectNotFound: (ASUSLiveUpdateAgent:String) [Get-Service], ServiceCommandException
      + FullyQualifiedErrorId : NoServiceFoundForGivenName,Microsoft.PowerShell.Commands.GetServiceCommand
    
    
    

2025-03-10 11:47:28: Get-Service -Name "ASUSSwitch" | Stop-Service -Force -PassThru | Set-Service -StartupType Disabled
2025-03-10 11:47:28: powershell Get-Service -Name "ASUSSwitch" | Stop-Service -Force -PassThru | Set-Service -StartupType Disabled
2025-03-10 11:47:28:
2025-03-10 11:47:28: Get-Service -Name "ASUSSystemAnalysis" | Stop-Service -Force -PassThru | Set-Service -StartupType Disabled
2025-03-10 11:47:28: powershell Get-Service -Name "ASUSSystemAnalysis" | Stop-Service -Force -PassThru | Set-Service -StartupType Disabled
2025-03-10 11:47:29:
2025-03-10 11:47:29: Get-Service -Name "ASUSSystemDiagnosis" | Stop-Service -Force -PassThru | Set-Service -StartupType Disabled
2025-03-10 11:47:29: powershell Get-Service -Name "ASUSSystemDiagnosis" | Stop-Service -Force -PassThru | Set-Service -StartupType Disabled
2025-03-10 11:47:29:
2025-03-10 11:47:29: Get-Service -Name "AsusCertService" | Stop-Service -Force -PassThru | Set-Service -StartupType Disabled
2025-03-10 11:47:29: powershell Get-Service -Name "AsusCertService" | Stop-Service -Force -PassThru | Set-Service -StartupType Disabled
2025-03-10 11:47:29: Get-Service : Cannot find any service with service name 'AsusCertService'.
At line:1 char:1

  • Get-Service -Name AsusCertService | Stop-Service -Force -PassThru | S ...
  •   + CategoryInfo          : ObjectNotFound: (AsusCertService:String) [Get-Service], ServiceCommandException
      + FullyQualifiedErrorId : NoServiceFoundForGivenName,Microsoft.PowerShell.Commands.GetServiceCommand
    
    
    

2025-03-10 11:47:29: USB 1A30|64: 5A-41-53-55-53-20-54-65-63-68-2E-49-6E-63-2E
2025-03-10 11:47:29: USB 18C6|64: 5A-41-53-55-53-20-54-65-63-68-2E-49-6E-63-2E
2025-03-10 11:47:29: Input: \?\hid#vid_0b05&pid_1a30&mi_00&col01#8&21e4a3f7&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}
2025-03-10 11:47:44: TL134ADXP03 HDR: False 10 5 True
2025-03-10 11:47:45: Design Capacity: 70003mWh, Full Charge Capacity: 70419mWh, Health: 1.0059426024598945759467451395%
2025-03-10 11:47:45: Hibernate after 2147483647
2025-03-10 11:49:22: Listener exited: Operation failed after some time.
2025-03-10 11:49:22: WMI event 117
2025-03-10 11:49:22: WMI event 189
2025-03-10 11:49:22: Touchpad status:1
2025-03-10 11:49:22: Tablet: False Touchpad: True
2025-03-10 11:49:22: Restarting listener 1
2025-03-10 11:49:22: Input available: \?\hid#vid_0b05&pid_18c6&mi_00&col01#8&2705afbb&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030} 18C6 64
2025-03-10 11:49:22: USB 18C6|64: 5A-41-53-55-53-20-54-65-63-68-2E-49-6E-63-2E
2025-03-10 11:49:22: Input: \?\hid#vid_0b05&pid_18c6&mi_00&col01#8&2705afbb&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}
2025-03-10 11:49:23: HID Device Event: Checking for new ASUS Mice
2025-03-10 11:49:23: Input available: \?\hid#vid_0b05&pid_18c6&mi_00&col01#8&2705afbb&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030} 18C6 64
2025-03-10 11:49:23: USB 18C6|64: 5A-41-53-55-53-20-54-65-63-68-2E-49-6E-63-2E
2025-03-10 11:49:23: Input: \?\hid#vid_0b05&pid_18c6&mi_00&col01#8&2705afbb&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}
2025-03-10 11:49:29: HID Device Event: Checking for new ASUS Mice
2025-03-10 11:49:29: USB 1A30|64: 5A-41-53-55-53-20-54-65-63-68-2E-49-6E-63-2E
2025-03-10 11:49:29: USB 18C6|64: 5A-41-53-55-53-20-54-65-63-68-2E-49-6E-63-2E
2025-03-10 11:49:29: Input: \?\hid#vid_0b05&pid_1a30&mi_00&col01#8&21e4a3f7&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}
2025-03-10 11:49:30: WMI event 117
2025-03-10 11:49:30: WMI event 189
2025-03-10 11:49:30: Touchpad status:1
2025-03-10 11:49:30: Tablet: False Touchpad: True
2025-03-10 11:49:30: HID Device Event: Checking for new ASUS Mice
2025-03-10 11:49:30: USB 1A30|64: 5A-41-53-55-53-20-54-65-63-68-2E-49-6E-63-2E
2025-03-10 11:49:30: USB 18C6|64: 5A-41-53-55-53-20-54-65-63-68-2E-49-6E-63-2E
2025-03-10 11:49:30: Input: \?\hid#vid_0b05&pid_1a30&mi_00&col01#8&21e4a3f7&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}

Device and Model

ROG Flow Z13 2025 GZ302EA

Additional information.

No response

Armoury Crate

Uninstalled

Asus Services

6

Version

0.205.0

OS

Windows 11 24H2

@seerge
Copy link
Owner

seerge commented Mar 10, 2025

@patrcza011 hello,

I can't prevent Asus service from doing something, that it wants :) Most likely you have mapped side button to open screenXpert in MyASUS ? If so - adjust that mapping.

As for tablet mode and keyboard. What exactly does the Asus service do in those cases ?

Can you stop Asus services and then check G-Helper's log if any specific WMI event appears when you connect or disconnect keyboard ?

@seerge seerge added the question Further information is requested label Mar 10, 2025
@patrcza011
Copy link
Author

@patrcza011 hello,

I can't prevent Asus service from doing something, that it wants :) Most likely you have mapped side button to open screenXpert in MyASUS ? If so - adjust that mapping.

As for tablet mode and keyboard. What exactly does the Asus service do in those cases ?

Can you stop Asus services and then check G-Helper's log if any specific WMI event appears when you connect or disconnect keyboard ?

Here are logs after disabling services and presents detaching keyboard and attaching. Sadly in MyASUS there are no setting to map side button.

2025-03-10 12:04:52: Listener exited: Operation failed after some time.
2025-03-10 12:04:52: WMI event 189
2025-03-10 12:04:52: Touchpad status:1
2025-03-10 12:04:52: Tablet: False Touchpad: True
2025-03-10 12:04:52: WMI event 117
2025-03-10 12:04:52: Restarting listener 1
2025-03-10 12:04:52: Input available: \?\hid#vid_0b05&pid_18c6&mi_00&col01#8&2705afbb&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030} 18C6 64
2025-03-10 12:04:52: USB 18C6|64: 5A-41-53-55-53-20-54-65-63-68-2E-49-6E-63-2E
2025-03-10 12:04:52: Input: \?\hid#vid_0b05&pid_18c6&mi_00&col01#8&2705afbb&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}
2025-03-10 12:04:53: HID Device Event: Checking for new ASUS Mice
2025-03-10 12:04:53: Input available: \?\hid#vid_0b05&pid_18c6&mi_00&col01#8&2705afbb&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030} 18C6 64
2025-03-10 12:04:53: USB 18C6|64: 5A-41-53-55-53-20-54-65-63-68-2E-49-6E-63-2E
2025-03-10 12:04:53: Input: \?\hid#vid_0b05&pid_18c6&mi_00&col01#8&2705afbb&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}
2025-03-10 12:04:58: TL134ADXP03 HDR: False 10 5 True
2025-03-10 12:04:58: Design Capacity: 70003mWh, Full Charge Capacity: 71204mWh, Health: 1.0171564075825321771924060397%
2025-03-10 12:04:59: Hibernate after 2147483647
2025-03-10 12:05:24: HID Device Event: Checking for new ASUS Mice
2025-03-10 12:05:24: USB 18C6|64: 5A-41-53-55-53-20-54-65-63-68-2E-49-6E-63-2E
2025-03-10 12:05:24: USB 1A30|64: 5A-41-53-55-53-20-54-65-63-68-2E-49-6E-63-2E
2025-03-10 12:05:24: Input: \?\hid#vid_0b05&pid_1a30&mi_00&col01#8&21e4a3f7&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}
2025-03-10 12:05:25: HID Device Event: Checking for new ASUS Mice
2025-03-10 12:05:25: USB 18C6|64: 5A-41-53-55-53-20-54-65-63-68-2E-49-6E-63-2E
2025-03-10 12:05:25: USB 1A30|64: 5A-41-53-55-53-20-54-65-63-68-2E-49-6E-63-2E
2025-03-10 12:05:25: Input: \?\hid#vid_0b05&pid_1a30&mi_00&col01#8&21e4a3f7&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}
2025-03-10 12:05:26: WMI event 117
2025-03-10 12:05:26: WMI event 189
2025-03-10 12:05:26: Touchpad status:1
2025-03-10 12:05:26: Tablet: False Touchpad: True

@patrcza011 patrcza011 closed this as not planned Won't fix, can't repro, duplicate, stale Mar 10, 2025
@patrcza011 patrcza011 reopened this Mar 10, 2025
@seerge
Copy link
Owner

seerge commented Mar 11, 2025

@patrcza011 ok, thanks

I see that firmware notifies about possible tablet mode change (WMI event 189) but it doesn't actually change it automatically. As it keeps staying and being reported as off (Tablet: False)

On older Z13 and X13 (that also have tablet mode) windows does it automatically w/o any apps as it's supposed to
https://support.microsoft.com/en-us/windows/turn-tablet-mode-on-or-off-in-windows-add3fbce-5cb5-bf76-0f9c-8d7b30041f30#:~:text=On%20the%20Windows%20device%2C%20right,%3E%20System%20%3E%20Notifications%20%26%20actions%20.&text=In%20the%20Notifications%20%26%20actions%20window,and%20then%20select%20Tablet%20mode.

We can try to figure out what exactly does Asus Optimization service does, but it will require some effort :)

For that I will need you to follow this guide https://github.com/seerge/g-helper/wiki/_ACPI-Monitoring-and-Debugging

Just for Capture part do following

  1. Quit G-Helper completely
  2. Start only Asus Optimization Service
  3. In IRPMmon, select Monitoring -> Start capturing and Clear everything
  4. Disconnect keyboard and after some time connect it back (to trigger Tablet mode switches)
  5. In IRPMon - Stop Capturing and save captured data as a log via Action -> Save

@patrcza011
Copy link
Author

#3816 @seerge here it is - 4 first IDs kb detachment, last 4 IDs kb attachement

detachattach.log

@seerge
Copy link
Owner

seerge commented Mar 11, 2025

@patrcza011 ok, amazing! Thanks

What i see, AsusOptimization.exe doesn't seem to set any new settings, but it reads data from 2 endpoints

DSTS 060077 (this is already known to me - and it reports for Tablet State ON / OFF)
DSTS 120063 (this is something new)

Do I understand correctly that windows reacted correctly and turned Tablet mode ON and OFF correspondingly ?

If so - can you please try this build, it will also do DSTS 120063 just in case it triggers something. And please upload app log from it.

GHelper.zip

Thanks again for helping :)

@patrcza011
Copy link
Author

#3816 @seerge When I dumped log from IRPMon Tablet mode turned ON and OFF correctly. Now I tested that build (without any asus services) and Tablet Mode did not switch correcty. Logs below

2025-03-11 22:31:48: Listener exited: Operation failed after some time.
2025-03-11 22:31:48: WMI event 117
2025-03-11 22:31:48: WMI event 189
2025-03-11 22:31:48: Touchpad status:1
2025-03-11 22:31:48: Tablet: 0 | TabletCheck 0 Touchpad: True
2025-03-11 22:31:48: Restarting listener 1
2025-03-11 22:31:48: Input available: \?\hid#vid_0b05&pid_18c6&mi_00&col01#8&2705afbb&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030} 18C6 64
2025-03-11 22:31:48: USB 18C6|64: 5A-41-53-55-53-20-54-65-63-68-2E-49-6E-63-2E
2025-03-11 22:31:48: Input: \?\hid#vid_0b05&pid_18c6&mi_00&col01#8&2705afbb&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}
2025-03-11 22:31:49: HID Device Event: Checking for new ASUS Mice
2025-03-11 22:31:49: Input available: \?\hid#vid_0b05&pid_18c6&mi_00&col01#8&2705afbb&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030} 18C6 64
2025-03-11 22:31:49: USB 18C6|64: 5A-41-53-55-53-20-54-65-63-68-2E-49-6E-63-2E
2025-03-11 22:31:49: Input: \?\hid#vid_0b05&pid_18c6&mi_00&col01#8&2705afbb&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}
2025-03-11 22:32:18: HID Device Event: Checking for new ASUS Mice
2025-03-11 22:32:18: USB 18C6|64: 5A-41-53-55-53-20-54-65-63-68-2E-49-6E-63-2E
2025-03-11 22:32:18: USB 1A30|64: 5A-41-53-55-53-20-54-65-63-68-2E-49-6E-63-2E
2025-03-11 22:32:18: Input: \?\hid#vid_0b05&pid_1a30&mi_00&col01#8&21e4a3f7&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}
2025-03-11 22:32:19: HID Device Event: Checking for new ASUS Mice
2025-03-11 22:32:19: USB 18C6|64: 5A-41-53-55-53-20-54-65-63-68-2E-49-6E-63-2E
2025-03-11 22:32:19: USB 1A30|64: 5A-41-53-55-53-20-54-65-63-68-2E-49-6E-63-2E
2025-03-11 22:32:19: Input: \?\hid#vid_0b05&pid_1a30&mi_00&col01#8&21e4a3f7&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}
2025-03-11 22:32:20: WMI event 117
2025-03-11 22:32:20: WMI event 189
2025-03-11 22:32:20: Touchpad status:1
2025-03-11 22:32:20: Tablet: 0 | TabletCheck 1 Touchpad: True

@seerge
Copy link
Owner

seerge commented Mar 11, 2025

@patrcza011 ok, thanks for checking

DSTS 120063 seem to be responsible for checking if keyboard is connected or not.

The problem is that I can't find anywhere online how to force a tablet mode in windows 11, as all documentation says it should be automated

Can you try to run following command in powershell as admin to see if it toggles that by any chance ?

 Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\ImmersiveShell" -Name "TabletMode" -Value 1

@seerge
Copy link
Owner

seerge commented Mar 11, 2025

Or if that one does not work, try another one

Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" -Name "TaskbarSi" -Value 2; Stop-Process -Name explorer -Force; Start-Process explorer

@seerge
Copy link
Owner

seerge commented Mar 11, 2025

If both things don't work, I have another idea to verify. It could be that AsusOptimization runs some special init command when it starts, that would force firmware/hardware communicate about keyboard connection with windows directly.

Can you try to start IRPMon Capture then manually start AsusOptimization service and see what it recorded on start ?

@patrcza011
Copy link
Author

#3816 both thing do not work. Below there is captured log when I launch AsusOptimization service. GHelper closed and all other asus services disabled ofc.

enableservice.log

@seerge
Copy link
Owner

seerge commented Mar 12, 2025

@patrcza011 great, thanks.

I see that it mostly reads a lot of different data about device, but it also runs couple of extra commands next to that. I have copied them into this build ,let me know if it makes any difference.

GHelper.zip

Btw, do I understand correctly that as soon as you Stop AsusOptimization service - Tablet mode immediately stops toggling ?

And on a side note, does this setting in windows enable Tablet mode for you ?

Image

I.e. what exactly changes in windows when it switches to Tablet mode, is it only taskbar behavior or something else ?

@patrcza011
Copy link
Author

patrcza011 commented Mar 12, 2025

#3816 Yes, as soon as AsusOptimization service is stopped tablet mode toggling stops working. eg. when I stop services in tablet mode or after disabling and reboot - it stucks in tablet mode, when I stop in laptop mode it stucks in laptop mode to next reboot. And yes - I have checked Optimize taskbar for touch interactions constantly. Also I checked given build and It does not fix it. When I enable AsusOptimization services it instantly fixes issue.

@seerge
Copy link
Owner

seerge commented Mar 12, 2025

@patrcza011 ok, that's a pity.

Then I'm pretty much out of ideas how it toggles Tablet mode. Especially considering that official windows documentation says it's now "automatic" in win11 :)

Can you check for AsusOptimization folder under C:\ProgramData\ASUS\ ? And if so - it could be some config files in it. They could (potentially) contain what exactly this service is supposed to launch when you press a side button, like a ScreenXpert.

@patrcza011
Copy link
Author

patrcza011 commented Mar 12, 2025

#3816 @seerge in C:\ProgramData\ASUS\ASUS System Control Interface\AsusOptimization there is only Customization.ini with that content

[Main]
legal=1
[FunctionKeyLock]
default=1
value=1
[BatteryHealthCharging]
version=4
value=100
[AINoiseCancelingMicrophone]
manufacturer=0
version=5
value=0
time="2025/03/07 23:53:12:764"
[AINoiseCancelingSpeaker]
manufacturer=0
value=0
[TaskFirst]
value=0
[WiFiSmartConnect]
value=0

also there is ATKOS2Help.dll in ASUS Keyboard Hotkeys folder

@seerge
Copy link
Owner

seerge commented Mar 12, 2025

@patrcza011 ok, it's not there.

May be it's in the registry then.

Check Computer\HKEY_LOCAL_MACHINE\SOFTWARE\ASUS\ASUS System Control Interface\AsusOptimization\ASUS Keyboard Hotkeys with regedit app

@seerge
Copy link
Owner

seerge commented Mar 12, 2025

@patrcza011 by the way, I just had another idea to check what AsusOptimization service does to toggle Tablet mode. May be it's some registry key that it modifies.


  1. Download and launch https://learn.microsoft.com/en-us/sysinternals/downloads/procmon
  2. Go to filters in it and add 2 filters as on screenshot (with green checkbox)
    Image
  3. Click on [CAPTURE] icon
  4. Launch detach or attach keyboard (to trigger Tablet toggle)
  5. Check what Process Monitor captured and post it here.

Thanks

@seerge
Copy link
Owner

seerge commented Mar 12, 2025

And this how registry changes look in Process Monitor

Image

@patrcza011
Copy link
Author

@seerge #3186

Here it is. Firstly I detached kb, and later attached.
Logfile.CSV

It has something with common with this
https://learn.microsoft.com/en-us/windows-hardware/customize/desktop/unattend/microsoft-windows-gpiobuttons-convertibleslatemode

@seerge
Copy link
Owner

seerge commented Mar 12, 2025

@patrcza011 ok, great!

What happens if you manually set HKLM\System\CurrentControlSet\Control\PriorityControl\ConvertibleSlateMode to 1 or 0 using regedit ?

@patrcza011
Copy link
Author

@seerge #3816 It instantly changes to tablet when 0 and laptop when 1

@seerge
Copy link
Owner

seerge commented Mar 12, 2025

@patrcza011 amazing.

So 0 - is tablet mode, and 1 is laptop.

Can you try this build (w/o asus services running). Please run it as admin, cause changing registry value requires permissions.

GHelper.zip

Thanks!

@patrcza011
Copy link
Author

@seerge #3816 it works

seerge added a commit that referenced this issue Mar 12, 2025
@seerge
Copy link
Owner

seerge commented Mar 12, 2025

@patrcza011 great! So it's not swapped ? (it's just a bit confusing, i was expecting 1 to be a Tablet mode)

@patrcza011
Copy link
Author

@seerge #3816 It is not swapped. There is small check to add - when I reboot with keyboard attached it stays in tablet mode but when I detach and attach again it goes back to laptop mode as should.

seerge added a commit that referenced this issue Mar 12, 2025
@seerge
Copy link
Owner

seerge commented Mar 12, 2025

@patrcza011 try this build, it should check for a tablet mode every time app starts (and also when power source changes or app detects wake up from hibernation).

GHelper.zip

@seerge
Copy link
Owner

seerge commented Mar 12, 2025

@patrcza011 and separate kudos for a quick responses and lots of debug data that you have provided here :)

Since you are so helpful, and already have IRMon installed, can you help with another pending issue for Z13

What I need is to find what endpoint is responsible for setting "memory allocation" in Armoury Crate.

It would be to catch with IRPMmon what AC does when you open memory allocation setting screen (to find how it reads current value) and also what happens when you change the value.

@patrcza011
Copy link
Author

@seerge this build works as intended. I'd try to catch "memory allocation" - first I gonna install AC :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question Further information is requested
Projects
None yet
Development

No branches or pull requests

2 participants