ndeadly / MissionControl

Use controllers from other consoles natively on your Nintendo Switch via Bluetooth. No dongles or other external hardware neccessary.
GNU General Public License v2.0
2.51k stars 138 forks source link

[BUG] Crash on Atmosphere 0.19.0 #222

Closed rashevskyv closed 3 years ago

rashevskyv commented 3 years ago

изображение

Report from atmosphere\fatal_errors report_0891ee95.zip

On console FW11.0.1, Atmosphere launched through hekate 5.5.5 fss0

ndeadly commented 3 years ago

Yeah, I'm aware it's not working. On top of needing to be recompiled for the atmosphere update, there have been some breaking changes to the bluetooth service under the hood that will likely require a few days for me to reverse engineer and update the module before it will work.

rashevskyv commented 3 years ago

Thank you for answer!

ndeadly commented 3 years ago

Oh, I just realised you were getting this error on 11.0.1. You should be able to simply recompile with the latest Atmosphere-libs to fix that. Otherwise wait a few days for a new official release with 12.0.0 support.

OperationNT414C commented 3 years ago

I am in the same situation: migration on Atmosphere 0.19.0 but still on FW 11.0.1.

I try to compile with the Atmosphere-libs/libnx but unfortunatly, it seems that several classes you use in "bluetooth_types.hpp" cannot be found: 23 | typedef BtdrvDeviceClass DeviceClass; 30 | typedef BtdrvBluetoothSspVariant SspVariant; 31 | typedef BtdrvBluetoothTransport Transport; 32 | typedef BtdrvBluetoothDiscoveryState DiscoveryState; 33 | typedef BtdrvBluetoothBondState BondState; 40 | typedef BtdrvBleEventType BleEventType; 41 | typedef BtdrvBleEventInfo BleEventInfo; 43 | typedef BtdrvHidConnectionState HidConnectionState; 44 | typedef BtdrvHidReportData HidReportData;

There is also this class used in "bluetooth_ble.cpp" which cannot be found: 30 | BleEventType g_current_event_type;

Do you have any idea of what my environment misses?

ndeadly commented 3 years ago

@OperationNT414C which branch are you trying to build? I force pushed to my libnx fork during development a while back, which may have broken the public master branch. You should build from the develop branch. If that's not working let me know

impeeza commented 3 years ago

If you read the post from @ndeadly you can recompile the module your self or WAIT for the next release get published.

ndeadly commented 3 years ago

@impeeza they are trying to build the module ;)

OperationNT414C commented 3 years ago

Ok, I did not get that the libnx was forked (I downloaded the source from Github webpage so it created an empty "libnx" folder that I filled with the libnx current master). By the way, "develop" branch has the exact same errors on official "libnx". So, if I get it right, I have to build with "Atmosphere-0.19.0/libraries" (which needs a recent "libnx" to be built) and "libnx" from the fork you made months ago. Does it have a chance to work in the end? :-) I am trying it right now (libnx fork takes time to build on my old computer) but, if it fails, I will wait for the next release.

EDIT: Tons of conflicts between libnx and Atmosphere-libs, I will be patient. Thank you anyway. :-)

ndeadly commented 3 years ago

There are build instructions here that tell you exactly how to do it. I guess you missed them if you downloaded from github. Yeah, you need to checkout the project on git, switch to the develop branch and then build and install the libnx fork, Atmosphere-libs and finally MissionControl

See how you go. I might try and make a build and throw it up here if I have a moment.

ndeadly commented 3 years ago

Tons of conflicts between libnx and Atmosphere-libs, I will be patient. Thank you anyway. :-)

Ahh there might be conflicts with the updated Atmosphere-libs actually. When I built and tested before I was using an updated version of the libnx fork (I'd been preparing for a release just prior to 12.0.0)

OperationNT414C commented 3 years ago

Yes, I saw those instrcutions but I missed the fact that it was forked sub-modules (so I took my current build of Atmosphere 0.19.0 that I made to remove some unpleasant checks in "loader.kip" :-) ). If I have to rebuild Atmosphere-libs, it would take me litteraly 3 hours. As it is late now, I think being lazy is the best solution. :-)

dracula99gr commented 3 years ago

On the description you mention that it will not cause crash on atmosphere 19.1, but it does for me. Do you want me to send you a log or something or are you aware of something else that might be issue?

EDIT: Nevermind I am blind! I confused 16.1 with 19.1

ndeadly commented 3 years ago

https://github.com/ndeadly/MissionControl/releases/tag/v0.5.0-alpha

OperationNT414C commented 3 years ago

Tested and work like a charm on Atmosphere 0.19.1 with FW 11.0.1 Thank you so much for the rumble feature (on DS4 controller)!

NSCCODELAB commented 3 years ago

I'm on FW 10.2.0 but it crashes with v0.5.x MC. Rumble function only works on 11.0.x + FW?

ndeadly commented 3 years ago

@NSCCODELAB which ams version? Make sure you're on 0.19.3 and MC 0.5.0-alpha.3. If it's still crashing with those post the error report.

Rumble should work on any firmware, but not all controllers are supported currently. Only those from major consoles.

NSCCODELAB commented 3 years ago

I'm on AMS 18.1, FW 10.2.0 Why did Mission Control crashes when I tried AMS 19.1.x (I haven't tried it on the new versions yet). AMS 19.1 crashes with Mission Control 0.5.0, I am using a DS4.

ndeadly commented 3 years ago

@NSCCODELAB atmosphere will crash if it tries to launch a sysmodule compiled with an incompatible libstratosphere. This will happen if you use a recent build with an old atmosphere release for example. If you want to run the recent mission control releases you'll need to update your atmosphere. If you got a crash with ams 0.19.1 you were probably trying to use a build of mission control made for 0.19.2 or greater. Save yourself the hassle and just update to the latest versions

NSCCODELAB commented 3 years ago

19D6759A-9A4E-40C0-A258-D4164E22F751

Just update like you said, got this error in every boot. Press power then it boots on AMS 19.3 and rumble works fine.

Just this error on boot.

NSCCODELAB commented 3 years ago

Some games crashes too.

ndeadly commented 3 years ago

This is not a mission control problem

OperationNT414C commented 3 years ago

I think you are booting with Hekate. In that case, to "solve" this issue, just remove the word "noldrchk" from "/bootloader/hekate_ipl.ini" file. Atmosphère should load fine (but probably not with a feature you expect).