• 1
  • 5
  • 6
  • 7(current)
  • 8
  • 9
  • 11
Win XBMC crashes when XBOX-controller disconnects
#91
If someone is able to compile from source please test this: https://github.com/wsoltys/xbmc/commits/native_joystick
It uses directinput instead of the old joystick interface. It seems to respond in the same way like the old code.
the button presses work fine but how can I navigate with the controller? I'm too dump to use our own software Smile
Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.
Reply
#92
im getting crashes again...very less often....i think is a problem with xbmc focus...it happens sometimes when load bluesoleil from advanced launcher....and sometimes when i back from sleep
Reply
#93
(2012-05-13, 01:14)achaw Wrote: im getting crashes again...

with the sources from my repo? Can you debug where in XBMC it crashes/freezes?
Please try to change DISCL_EXCLUSIVE in DISCL_NONEXCLUSIVE (WINJoystick.cpp l:112)
Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.
Reply
#94
If some were to up a test build, I'd be more than glad to help test.
Reply
#95
Hi Evil-B can you make the fixed files available again plz? Only tried the SDL Quit, and it didn't solve the problem, wanted to try the other one..... Smile
Reply
#96
Here No Reinit:
http://ryushare.com/x5cxgzzoubqn/XBMC_NoReinit.zip

And Here's SDL Quit:
http://ryushare.com/qc6dvh4pj3mt/XBMC_SDL_Quit.zip

Note that with reinit you won't be able to use your controller to control XBMC directly, instead you'll need to use a program like eventghost or xpadder (I think?) to send keyboard commands from the controller.
Reply
#97
I tested the NoReinit copy that Atsumori kindly uploaded and it resolved my issue when installed on top of the latest nightly build (May 25th).

This problem took me a bit to track down because I thought Rom Collection Browser was causing it since that's when I noticed the issues starting. It wasn't until I unplugged the wireless 360 adapter and witnessed XBMC crash in front of me that I realized where the problem was coming from, which led me to this thread. Like others either unplugging the wireless adapter, pulling the batteries from a controller or simply letting one of them time out would almost always cause XBMC to crash. The computer in question is running Windows 7 64-bit Ultimate.

With this test build I'm able to view videos and hot swap controllers without issue. I'll report back if I notice any stability issues but if anyone else is experiencing this problem there's at least a temporary workaround. I don't use controllers to navigate the GUI so others may not find this fix as useful as I did.

Thank you so much to everyone involved for coming up with a solution, compiling it and hosting it for us non-programmers to test out! If I can be of any help with error logs let me know and I'll gladly collect some data for you.
Reply
#98
Many thanks atsumori - I can give that a try now. This problem is driving me nuts!
Reply
#99
Ah, don't thank me, thank evil-B and WiSo who both put in a lot of time tracking down the bug location and implementing solutions. I'm just the uploader Wink

Glad it worked for you guys though!
Reply
I tried the NoReinit with the nightly build dated 5/28, no luck.
Unless I did something wrong...I grabbed the nightly build and the NoReinit XBMC.exe, and replaced the XBMC.exe in the build with the NoReinit one. No videos would play.

Is there any type of solution for using the current actual release build? I'm using Eden and while I wouldn't mind having to re do all of my settings, I would like to have a solution that works with the most stable build.


EDIT: I've been using Xpadder if that makes a difference.
Reply
(2012-05-30, 22:05)NewUser1 Wrote: I tried the NoReinit with the nightly build dated 5/28, no luck.
Unless I did something wrong...I grabbed the nightly build and the NoReinit XBMC.exe, and replaced the XBMC.exe in the build with the NoReinit one. No videos would play.

Is there any type of solution for using the current actual release build? I'm using Eden and while I wouldn't mind having to re do all of my settings, I would like to have a solution that works with the most stable build.


EDIT: I've been using Xpadder if that makes a difference.

Especially now that Bitstreaming AE is now integrated into the Nightly's. The controller fix and Bitstreaming were the two things I was after in the non-stable releases, to have them together would put me on a Gravy Train with Biscuit Wheels.
Frodo Win 8 Pro x64
Fractal Design Node 605 (looks amazing)
i5 3570K, Asus P8Z77V LK
2x80GB Intel 320 SSD, 4TB NAS
GTX 670x2 SLI, 16GB GSkill Ares
Onkyo RC360 with Paradigm piece-by-piece 5.1 build
Nyxboard and AHK full controlled via XBox Controller
Reply
Would be nice if some of you guys could test out the latest nightly http://mirrors.xbmc.org/nightlies/win32/...master.exe.
It uses DirectInput and it would be nice to know if its worse or better than before. It still reinits the joysticks and we need to see if this can stay in.
Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.
Reply
(2012-06-04, 07:18)WiSo Wrote: Would be nice if some of you guys could test out the latest nightly http://mirrors.xbmc.org/nightlies/win32/...master.exe.
It uses DirectInput and it would be nice to know if its worse or better than before. It still reinits the joysticks and we need to see if this can stay in.

Firstly, many thanks for the new gamepad code Smile

I don't know about crashes because I never had them with the SDL code, but the code for the hats is wrong: m_HatState isn't resetted so only works the first time you press a direction. A fix could be:

Code:
xbmc/input/windows/WINJoystick.cpp |    8 ++++----
1 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/xbmc/input/windows/WINJoystick.cpp b/xbmc/input/windows/WINJoystick.cpp
index 0296844..5b4bc38 100644
--- a/xbmc/input/windows/WINJoystick.cpp
+++ b/xbmc/input/windows/WINJoystick.cpp
@@ -283,16 +283,16 @@ void CJoystick::Update()
         hatId = h + 1;
         j = numj-1;
         if ( (js.rgdwPOV[0] > JOY_POVLEFT) || (js.rgdwPOV[0] < JOY_POVRIGHT) )
-          m_HatState |= SDL_HAT_UP;
+          m_HatState = SDL_HAT_UP;

         if ( (js.rgdwPOV[0] > JOY_POVFORWARD) && (js.rgdwPOV[0] < JOY_POVBACKWARD) )
-          m_HatState |= SDL_HAT_RIGHT;
+          m_HatState = SDL_HAT_RIGHT;

         if ( (js.rgdwPOV[0] > JOY_POVRIGHT) && (js.rgdwPOV[0] < JOY_POVLEFT) )
-          m_HatState |= SDL_HAT_DOWN;
+          m_HatState = SDL_HAT_DOWN;

         if ( js.rgdwPOV[0] > JOY_POVBACKWARD )
-          m_HatState |= SDL_HAT_LEFT;
+          m_HatState = SDL_HAT_LEFT;
       }
     }


I guess that setting m_HatState to SDL_HAT_CENTERED after the hat is centered could be another solution.

Also, it would be nice to be able to log when an axis is pressed because some id's changed from the SDL code and I had to debug it to get the right ones.

btw, I submitted a patch that fixes the gamepad with dvd menus. Could you review it?
Reply
thanks for the heads up but your code is wrong as well as m_HatState can take at least two flags (down and right for example).
Thats code from the sdl layer which sets sdl centered at the beginning: http://hg.libsdl.org/SDL/file/9a65b2bd4e...ick.c#l259
Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.
Reply
(2012-06-04, 21:42)WiSo Wrote: thanks for the heads up but your code is wrong as well as m_HatState can take at least two flags (down and right for example).
Thats code from the sdl layer which sets sdl centered at the beginning: http://hg.libsdl.org/SDL/file/9a65b2bd4e...ick.c#l259

I see. IMHO, taking in consideration two directions at the same time is a bit pointless for a media center app. So a proper fix would be m_HatState = SDL_HAT_CENTERED; before the if's, just like the SDL code.

[edit] I see you already pulled that fix before Smile
Reply
  • 1
  • 5
  • 6
  • 7(current)
  • 8
  • 9
  • 11

Logout Mark Read Team Forum Stats Members Help
XBMC crashes when XBOX-controller disconnects0