GAFBlizzard / chatpad-super-driver

Automatically exported from code.google.com/p/chatpad-super-driver
Other
26 stars 6 forks source link

Blue screen results from unplugging controller while control utility is running #8

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
If the control utility is running and the controller is unplugged, a blue 
screen crash may be produced.  In fact, it may ALWAYS be produced.  This is a 
bug with one of the chatpad/keyboard/mouse drivers and should be fixed in the 
next update.

As a workaround, be careful to kill the chatpad control utility by bringing the 
command prompt to the foreground and pressing Control-C on a normal 
(non-chatpad) Windows keyboard.  The control utility should then exit, and you 
can safely disconnect the wired controller.

Original issue reported on code.google.com by gtsche...@gmail.com on 6 Jan 2011 at 5:23

GoogleCodeExporter commented 9 years ago
I'd just like to add (in the hopes that this project hasn't died) that these 
drivers are very close to doing everything I need from them and I appreciate 
the work you've put in.

Unfortunately this issue is a bit of a bummer since no matter how I close the 
control utility, I always get the BSoD on unplugging the controller - and I 
frequently switch the controller between my laptop and Xbox.

I've identified three processes related to it 
(win7_amd64_chatpad_control_test3.exe, cmd.exe, and conhost.exe). For all the 
methods below I've ensured all three have disappeared from the Processes tab of 
Task Manager before unplugging the controller.
So far I've tried:
- closing the control utility with Ctrl+C
- closing the control utility by clicking the X in the corner
- terminating the win7_amd64_chatpad_control_test3.exe process via Task Manager 
and via a VBScript file.

Once it's closed, I can reopen it again with no extra error messages and the 
Chatpad works as normal. But at no point can I unplug the controller without 
getting a BSoD, and unless anyone has a solution, I'm going to have to only use 
a secondary controller for the Xbox :(

Thanks for any help.

Original comment by miniy...@gmail.com on 20 Dec 2011 at 7:10

GoogleCodeExporter commented 9 years ago
Just an update here for in case anyone else is having issues with this. I've 
discovered a workaround which is to disable the 'Xbox 360 Controller Filter 
Driver for Chatpad' in Device Manager. I then unplug the controller and 
re-enable it once I've plugged it back in.

Original comment by miniy...@gmail.com on 26 Feb 2012 at 12:10

GoogleCodeExporter commented 9 years ago
my laptop would not even bluescreen when i unplugged the controller, it would 
just completely crash and reboot, I set up some batch files and used devcon to 
fix it:

   chatpadenable.bat
devcon rescan            ##just as a precaution
devcon enable "USB\VID_045E&PID_028E"   ##value may be different
cd "C:\Program Files\chatpad"      ##chatpad control program location
chatpad_control_amd64

   chatpaddisable.bat
taskkill /F /IM chatpad_control_amd64.exe
devcon disable "USB\VID_045E&PID_028E"    ##value may be different
devcon rescan                    ##may be mandatory
mp1 "C:\Program Files 
(x86)\Frogatto\modules\frogatto\sounds\trapdoor-open2.wav" ##audible 
notification, mp1 (freeware) with a sound file from a freeware game, not 
necessary

>>DEVICE DRIVER MUST ALREADY BE DISABLED ON SYSTEM BOOT FOR THIS TO WORK 
CORRECTLY<<

Have not taken enough time (and am likely not to) to see if the rescans are 
really necessary, added batch time is diminutive and failures try my time and 
patience.

Original comment by crimsons...@gmail.com on 23 Mar 2013 at 8:37

GoogleCodeExporter commented 9 years ago
it seems you can only do this once per windows session or it still crashes

Original comment by crimsons...@gmail.com on 23 Mar 2013 at 11:22

GoogleCodeExporter commented 9 years ago
That is the method I'm currently using when required. Fortunately I don't need 
to unplug the controller much these days but I haven't had an issue in a while. 
I haven't found a need for rescans either.

Original comment by miniy...@gmail.com on 23 Mar 2013 at 11:30

GoogleCodeExporter commented 9 years ago
Is this even being worked on anymore? I tried to contact the developer but they 
never answered, would like to find someone to continue working on this, it just 
seems too good to leave it in this state.

Original comment by crimsons...@gmail.com on 25 Mar 2013 at 9:49

GoogleCodeExporter commented 9 years ago
No, I think it's as good as it gets. Shame - if those last couple of bugs could 
be worked out it'd be awesome. Still, it's good enough for me - I use it every 
day - so thanks to the developer for putting in the time to even get to this 
stage :) 

Original comment by miniy...@gmail.com on 25 Mar 2013 at 11:07

GoogleCodeExporter commented 9 years ago
It is very nice, just wish someone could fix this bug.

Original comment by crimsons...@gmail.com on 25 Mar 2013 at 11:18

GoogleCodeExporter commented 9 years ago
Has anyone found a version of the driver that does NOT produce this?  I thought 
there was one that possibly fixed it but I never rebuilt all the versions.

Original comment by gtsche...@gmail.com on 1 Apr 2013 at 7:26

GoogleCodeExporter commented 9 years ago
It might be the winvista_i386_test, just a guess since it's the most recent 
build on here.

Original comment by crimsons...@gmail.com on 3 Apr 2013 at 3:56

GoogleCodeExporter commented 9 years ago
Hmm, if anyone has had a BSOD on unplugging the winvista_i386_test that would 
be good to know.  Though, it's not like anyone ever uses Windows Vista, so 
that's not really feasible.  :P

Original comment by gtsche...@gmail.com on 13 Apr 2013 at 5:53

GoogleCodeExporter commented 9 years ago
Don't think you are going to get anyone to test that, no one uses windows Vista 
since 7 is the exact same thing without all the bugs (well, before the service 
pack updates at least). Any progress updates?

Original comment by crimsons...@gmail.com on 8 May 2013 at 10:00

GoogleCodeExporter commented 9 years ago
I'm currently using win7_amd64_chatpad_control_test3 on 64-bit windows 8 - I 
just checked and unplugging the controller did not reproduce a BSOD! :)

This might be something that's been fixed with Win 8 since I'm sure doing the 
same thing in Win 7 did cause a BSOD.

Thanks for your work, gtsche..., very much appreciated!

Original comment by miniy...@gmail.com on 28 May 2013 at 4:19

GoogleCodeExporter commented 9 years ago
And the chatpad fully works? Been waffling about upgrading for a while now. Not 
really a proper solution but I would update to win8 if that meant this would be 
fixed.

Original comment by crimsons...@gmail.com on 28 May 2013 at 4:30

GoogleCodeExporter commented 9 years ago
Yes it fully works; I use JoyToKey for the main controller so don't use the 
chatpad driver for mouse etc 95% of the time (occasionally useful for user 
logon screen etc where JoyToKey doesn't work) so can't comment on the full 
functionality of that aspect though.
Obviously I also can't guarantee it will work with your system! It's a case of 
try it and see. Perhaps you could try with a virtual machine, or do a complete 
backup of Windows 7 beforehand if you're worried?
Personally I haven't any major issues with Windows 8 despite not being a fan of 
ModernUI (I just don't use it so it doesn't bother me) and it does have some 
nice features like improved file copy paste and task manager features so I 
reckon it's worth the upgrade anyway.

Original comment by miniy...@gmail.com on 28 May 2013 at 8:03

GoogleCodeExporter commented 9 years ago
yeah, I grabbed up a copy of the win8 install disk and am putting it on a new 
partition on my second drive to test, if this works I'll do a full upgrade from 
win7 on my main partition on my main drive, so you used the executable from 
https://code.google.com/p/chatpad-super-driver/downloads/detail?name=win7_amd64_
chatpad_control_test3.exe&can=2&q= with 
https://code.google.com/p/chatpad-super-driver/downloads/detail?name=chatpad_0_0
_3a_win7.zip&can=2&q= ?

Original comment by crimsons...@gmail.com on 28 May 2013 at 8:10

GoogleCodeExporter commented 9 years ago
That looks right, the exe is definitely the same. I've lost the original 
downloaded zip but I've got the files in a folder called the same version 
number as the exe so should be the same.

Original comment by miniy...@gmail.com on 28 May 2013 at 8:28

GoogleCodeExporter commented 9 years ago
Actually, I can't even seem to install the drivers, I get "Failed to update 
chatpad filter device driver 0xe000022f". I've run dseo but it doesn't seem to 
have any effect,  also made sure i had visual C++

Original comment by crimsons...@gmail.com on 28 May 2013 at 11:19

GoogleCodeExporter commented 9 years ago
Ah yes, the other issue that I have (and had in Win7 also) is that I never 
could permanently disable digitally signed driver requirement :(
I have to do so every time on reboot, and it's a PITA compared to Win7 as you 
have to do it from within Windows before restart and there's about 8 steps :/
Fortunately I only need to restart once every few weeks normally, but still :/

Original comment by miniy...@gmail.com on 28 May 2013 at 11:23

GoogleCodeExporter commented 9 years ago
how did you install the drivers in win8?

Original comment by crimsons...@gmail.com on 28 May 2013 at 11:27

GoogleCodeExporter commented 9 years ago
I presume by disabling digital driver enforcement (manually on startup) but 
it's been so long now I've forgotten.

Original comment by miniy...@gmail.com on 28 May 2013 at 11:28

GoogleCodeExporter commented 9 years ago
Was finally able to install after running around trying to disable signature 
enforcement, but one I got everything running the same thing still happened 
when I unplugged the controller. 

Original comment by crimsons...@gmail.com on 29 May 2013 at 12:41

GoogleCodeExporter commented 9 years ago
Hmmm, bummer. Guess it must be something specific to my setup..

If you'd like you can play around with these two batch commands:
devcon enable "USB\VID_045E&PID_028E&REV_0110"
devcon disable "USB\VID_045E&PID_028E&REV_0110" (assuming the PID is the same)
and this vbscript file:

'Terminate all processes involving the name <strProcessToKill>
Option Explicit
Dim strComputer, strProcessToKill, objWMIService, colProcess, objProcess

strComputer = "."
strProcessToKill = "win7_amd64_chatpad_control_test3.exe"
Set objWMIService = GetObject("winmgmts:" _ 
   & "{impersonationLevel=impersonate}!\\" _ 
   & strComputer _ 
   & "\root\cimv2") 
Set colProcess = objWMIService.ExecQuery _
   ("Select * from Win32_Process Where Name = '" & strProcessToKill & "'")
For Each objProcess in colProcess
'   msgbox "... terminating " & objProcess.Name
   objProcess.Terminate()
Next

In theory if you run the disable batch code followed by the vbscript file you 
shouldn't have an issue.
I've been running the test3 file via task scheduler with administrator 
privileges as well by the way in case that's the trick.

Original comment by miniy...@gmail.com on 29 May 2013 at 7:31

GoogleCodeExporter commented 9 years ago
(you have to run the enable batch file before you can start test3)

Original comment by miniy...@gmail.com on 29 May 2013 at 7:32

GoogleCodeExporter commented 9 years ago
I had trouble getting the driver to work on Windows 8 64-bit Using the test 2 
file worked for me as well as the the chatpad_control_amd64 file. For some 
reason test 3 would connect but not work. As far as the crash and reset, it 
crashes no matter what. Even if I try to disable the Xbox 360 Controller Filter 
Driver for Chatpad, it tells me I need to restart to complete the action. If I 
just ignore the message to not restart it crashes anyway.

Original comment by dom.cama...@gmail.com on 30 May 2013 at 4:50

GoogleCodeExporter commented 9 years ago
Just for the record I have no problem testing any potential fixes. I'm really 
looking forward to this being fixed, I don't care about any extra characters 
being added or anything nonessential to this bug being updated, once this is 
fixed I can finally start using it regularly. Though, it would be nice if the 
drivers were signed, it would definitely take a lot of hassle out of its use, 
but if that's not possible it is not necessary and far from priority.

Original comment by crimsons...@gmail.com on 29 Jun 2013 at 3:58

GoogleCodeExporter commented 9 years ago
Also, has winvista_i386_test been checked yet? I can test it with a virtual 
machine but that's the best I can do (google code needs post editing)

Original comment by crimsons...@gmail.com on 29 Jun 2013 at 4:08