Fixing crashes in handheld mode

  • Thread starter Thread starter WarfareD
  • Start date Start date
  • Views Views 3,265
  • Replies Replies 8

WarfareD

Member
Newcomer
Joined
May 5, 2022
Messages
11
Reaction score
3
Trophies
0
Age
37
Location
Wrocław
XP
88
Country
Poland
So I've bought myself a used Switсh v1, with Atmosphere and a ton of different homebrews installed. Overall, it was a great package, but there is one issue - a lot of games are unstable and tend to crash.

Some games don't crash at all (Darkest Dungeon, Cave Story), some crash about once per 20-60 minutes (Mario Rabbids, Diablo 3), and some crash all the time (Hades, Mudrunner, Mario Cart). The game usually starts lagging for a second and then throws the following modal: "The software was closed because an error occurred." This is mainly in a handheld mode, haven't played much in docked but it seems to be ok.

My guess was that the issue was either with all those installed homebrews or with the SD card itself. So I've bought a new SD card and installed the latest Kefir on it. Unfortunately, crashes didn't stop, even though it started to happen a more rarely.

Is there anything else I can do or check?
 
Most of the time, a clean install of the latest version of Atmosphere and sigpatches do solve these problems.
If could be some hardware issue like a dirty SD card reader or some faulty connector.
 
I suppose you don't have a nand backup, right? I would start from scratch. Delete all your games (make a big cleanup). While you're at it, also remove the tickets. I think DBI can do that. Then install atmosphere on a clean SD card. This guide should cover most important things. Don't forget to make a nand backup first.

Switch Hacking Is Easy
 
  • Like
Reactions: binkinator
Thank you all for your quick responses!
Yes, I don't have a backup from the initial state. Ofc I created a new backup yesterday before installing Kefir, but I don't think it will help.
Regarding reinstalling the Atmosphere from scratch - yes, I've tried that. A brand new SD card fresh from the shop, and the latest Kefir that contains the latest Atmosphere and Hekate. As I've mentioned, now it takes a bit more time to crash, but haven't fixed the issue.

>>Possibly heat related? Are the games that crash more intense compute-wise than the ones that don’t?
Yes, that's the case - simple games work just fine. And the more demanding the game, the faster it crashes.
After I found that overclocking homebrew was installed, I went to check the temperature. However, it showed about only 35-40 after the crash, which should be fine. Still looks like a memory leak or something.
Is it possible to view crash log details? The built in Error History is always empty.
Also, is there some kind of sysjobs that are installed not on the SD card, but on the internal memory that might lead to crashes?

>>If could be some hardware issue like a dirty SD card reader or some faulty connector
It could be, though it seems running the game from the internal memory doesn't change things. I'll try to clean the SD card reader anyway, hope it will help because replacing it completely might be a bit challenging.
 
Thank you all for your quick responses!
Yes, I don't have a backup from the initial state. Ofc I created a new backup yesterday before installing Kefir, but I don't think it will help.
Regarding reinstalling the Atmosphere from scratch - yes, I've tried that. A brand new SD card fresh from the shop, and the latest Kefir that contains the latest Atmosphere and Hekate. As I've mentioned, now it takes a bit more time to crash, but haven't fixed the issue.

>>Possibly heat related? Are the games that crash more intense compute-wise than the ones that don’t?
Yes, that's the case - simple games work just fine. And the more demanding the game, the faster it crashes.
After I found that overclocking homebrew was installed, I went to check the temperature. However, it showed about only 35-40 after the crash, which should be fine. Still looks like a memory leak or something.
Is it possible to view crash log details? The built in Error History is always empty.
Also, is there some kind of sysjobs that are installed not on the SD card, but on the internal memory that might lead to crashes?

>>If could be some hardware issue like a dirty SD card reader or some faulty connector
It could be, though it seems running the game from the internal memory doesn't change things. I'll try to clean the SD card reader anyway, hope it will help because replacing it completely might be a bit challenging.
Do you have overclocking profiles installed? They might be mucking with your clock settings…per game.

E: https://github.com/retronx-team/sys-clk#relevant-files
E2: report_xxxxx.bin — AFE parser helps you read atmosphere reports. (unfortunately you need files to read to begin with, but that doesn’t seem to be the case here)
 
If it's a heat issue, and your clean Atmosphere install isn't using any overclocking, then maybe hardware is to blame. Could check the whole cooling setup, make sure the thermal paste is transmitting the heat to the metal shielding, new thermal paste definitely wouldn't hurt here. IDK if the heat could cause intermittent issues with any particular components or anything, there are smarter people with more hardware knowledge around here.
 
Do you have overclocking profiles installed? They might be mucking with your clock settings…per game.

E2: report_xxxxx.bin — AFE parser helps you read atmosphere reports. (unfortunately you need files to read to begin with, but that doesn’t seem to be the case here)
sys-clk is not installed on a clean Kefir. I've double-checked the SD card and couldn't find any config, overlay or sysmodule. And I guess the previous owner couldn't install it on system memory, right?

Thank you for the link, I've found logs location. Both fatal reports and errors folders are empty, only crash_reports for the last day were there. Unfortunately, it's mostly thread dumps, no meaningful exception there. The only pieces I could get:
Type: User Break
Address: nnSdk + some address
Thread Name: NxSystemThread
LR: _ZN2nn4diag6detail5AbortEPKNS_6ResultE
ReturnAddress: _ZN2nn4diag6detail18OnAssertionFailureENS0_13AssertionTypeEPKcS4_S4_iS4_z
So I guess logs won't help much here.

If it's a heat issue, and your clean Atmosphere install isn't using any overclocking, then maybe hardware is to blame. Could check the whole cooling setup, make sure the thermal paste is transmitting the heat to the metal shielding, new thermal paste definitely wouldn't hurt here. IDK if the heat could cause intermittent issues with any particular components or anything, there are smarter people with more hardware knowledge around here.
Doesn't seems to be a heat issue. I've just double-checked the temperature - after about 20 minutes of Mario Cart 8, which ended up in another crash, it was 43°. Seems to be perfectly fine as I see other people play at 50°+ without any issues.
 
I've made significant progress with this issue, will describe it here in case anyone would have the same one or is just plain curious. I had quite a lot of try-errors, but I'll try to keep it short.

After removing all the homebrew/plugins/themes, replacing SD card, clean install of Atmosphere/Hekate/sigpatches, cleaning all contacts with pressured air, and replacing SD card reader, the crashes in handheld were still present. I was betting on SD card reader issue because replacing SD card significantly prolonged the time till crash, and cleaning with pressured air made it even worse than it was in the beginning, however replacing it didn't change a thing.

Then I've got an idea - if the console works ok in dock mode, maybe I can force it to work in dock mode even in handheld? ReverseNX-Tool does exactly that, but it didn't help. What helped is that recommendation about overclocking games in forced dock mode. With handheld_charging_gpu=768 and handheld_charging_mem=1600 settings in sys-clk, I've got 0 crashes so far.

What's bad is that this works only when the console is charging. Without charge, games keep crashing, most probably due to the 460MHz cap on GPU in chargeless mode. This is not much of a deal since I can always bring a powerbank when necessary, but still bothers me a bit, so I'll keep my investigation.

If anyone knows how to overcome this chargeless cap or even has an idea what might be the root cause of such issue, I would appreciate your help.

Quick update: this fork https://github.com/jope82/sys-clk-uncapped-gpu-and-other-extras allows to disable GPU cap mentioned above, so no crashes in the chargeless mode now.

Quick update 2: turned out memory OC is not needed, GPU is enough.
 
Last edited by WarfareD,

Site & Scene News

Popular threads in this forum