Jump to content

BeadaPanel "Error: LCD init failed" after wake from sleep, sometimes


Andrew Pafitis

Recommended Posts

I just got in the new 6.8" super wide BeadaPanel the other day and it's great when it's connected, but sometimes (not always) when coming back from sleep it goes to the screensaver and Aida64 shows "Error: LCD init failed" in the LCD preferences.

Disabling and re-enabling BeadaPanel support does nothing, but if I terminate Aida64 and relaunch it reconnects just fine.

Attaching some dump files if it helps. Let me know if there's anything else I can provide to help chase down this bug.

devdump.txt usbdump.txt

Link to comment
Share on other sites

  • 1 year later...

i reinstalled windows and tried to reimplement the kill script to force a restart of aida64, but for some reason the kill script doesn't work this time.

anyways, @Fiery i found this other post mentioning "lcd init failed" where you asked for a usbdump file so i started poking around. i took a usbdump file when it failed, after restarting aida when it was successfully connected, and after restarting a second time to be sure. i compared values from the 3 files and think believe i understand the problem here.

image.thumb.png.7887048c112292d4ac32ff7c4cc02e90.png

 

Under the section [ DevClass / USB Devices ] I found that the usb beadapanel device instance ID was logged as 20, however restarting aida64 the usbdump shows an instance id of 19 and is properly connected and displaying stats on my panel. Restarting aida64 the second time, panel connected again, and usbdump also still showing device instance id of 19.

I have a whole bunch of usb devices connected through several usb hubs, so I'm not sure of the exact root cause for the IDs to change, but it seems possibly related to usb selective suspend and when the pc wakes from sleep where the usb devices are reconnecting, where it seems the pc reindexes the usb devices (panel now at 19) but aida64 is looking for the index that was saved prior to going to sleep (20), and thus failing.

Is there any way to force aida64 to reindex the usb devices after waking from sleep, at some interval, or anything else without having to force a restart of the entire application? 

usbdump-init failed.txt usbdump-ok.txt usbdump-ok2.txt

Link to comment
Share on other sites

On 1/27/2023 at 12:45 AM, Andrew Pafitis said:

i reinstalled windows and tried to reimplement the kill script to force a restart of aida64, but for some reason the kill script doesn't work this time.

anyways, @Fiery i found this other post mentioning "lcd init failed" where you asked for a usbdump file so i started poking around. i took a usbdump file when it failed, after restarting aida when it was successfully connected, and after restarting a second time to be sure. i compared values from the 3 files and think believe i understand the problem here.

Under the section [ DevClass / USB Devices ] I found that the usb beadapanel device instance ID was logged as 20, however restarting aida64 the usbdump shows an instance id of 19 and is properly connected and displaying stats on my panel. Restarting aida64 the second time, panel connected again, and usbdump also still showing device instance id of 19.

I have a whole bunch of usb devices connected through several usb hubs, so I'm not sure of the exact root cause for the IDs to change, but it seems possibly related to usb selective suspend and when the pc wakes from sleep where the usb devices are reconnecting, where it seems the pc reindexes the usb devices (panel now at 19) but aida64 is looking for the index that was saved prior to going to sleep (20), and thus failing.

Is there any way to force aida64 to reindex the usb devices after waking from sleep, at some interval, or anything else without having to force a restart of the entire application?

Thank you for your test runs and the dumps.  And the issue is not related to USB device indexing, but rather the way the WinUsb API takes control of the arrival of USB devices after waking the computer up from sleep.  Apparently the WinUsb initialization fails if it is called to early after wakeup.  We'll implement a cycle to repeat the init procedure 10 times with delays between the trials in a hope that it will provide WinUsb more time to perform the init properly and give control over the BeadaPanel screen to AIDA64 more reliably than now.  I will post a message once the new beta build becomes available for download.

Link to comment
Share on other sites

  • 2 weeks later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



×
×
  • Create New...