ryanrudolfoba / SteamDeck-BIOS-Manager

Easily flash, downgrade, unlock, backup, block/ unblock BIOS updates.
https://youtu.be/Q1965gH9xig?si=f2cU86hSj6b8FiYG
90 stars 6 forks source link

BIOS failed to write #2

Open SwithinR opened 11 months ago

SwithinR commented 11 months ago

I've just experienced a BIOS write failure. [EDIT: the deck has become responsive again on its own about an hour and a half later and completed the BIOS installation.]

The deck was on stable channel OS 3.5, BIOS 119 as of yesterday. Followed the steps outlined in the youtube video, with no issues until the final step. (Cloned SteamDeck-BIOS-Manager from git, made script executable, ran script, performed manual backup out of habit, downloaded BIOS files, blocked auto-updates, selected BIOS v116 to flash.)

Upon starting the write command, the script began backing up the BIOS. I was looking at another screen when progress hit 100%, but I did notice the screen turn off after a reasonable period. At this point, the steam deck remained turned off - the charging indicator remained lit, but all plugged in peripherals (a mouse and keyboard) remained dark, and there was no audible fan or system activity. After ten minutes of silence I tried prompting it to wake up with the power button without success. I also tried the CMOS reset key combination, just in case, and did hear the three tone chime but noticed no other activity from the deck.

Possible contributing factors: I have reflashed the BIOS with a chip programmer in the past, using the methods described here, although it has been stable for months and recently updated to 119 successfully. Undervolt settings at the time of the issue were adjusted through the setup menu to -50/-40/-40 (they were -60/-40/-40 before the 116-119 update.) VRAM was set to 4G, but all other BIOS settings were stock, presuming the 119 update overwrote all the now-inaccessible settings. No other bootable media was connected to the deck. The only other system settings altered are those collected here, except for the retbleed mitigations. The only hardware modification is the Jsaux Vented Backplate.

Not sure if I've done something incorrectly, or if there's a sneaky conflict in here somewhere, but I hope this feedback helps. I'm just going to go ahead and flash in my backup manually. I'll be doing this overseen by the same expert who walked me through it the first time, but for RL reasons it might not be soon. I'll attempt to reproduce these steps while I've still got the case open and the clamps handy to see if it happens again.

EDIT: I am at an absolute loss as to what's happening. I was about to put the deck away and thought to hit the power button one more time, and the deck turned on and the update is progressing. It is two hours and several attempts later. Update complete, 116 is installed.

This was certainly strange. I did time it to ten minutes of unresponsiveness, and I did attempt to power it on several times after that, so something weird was happening, but I'm at a loss.

ryanrudolfoba commented 11 months ago

That's interesting. All the script does is download the BIOS from gitlab repo, backup, check the md5 hash and finally flash using the documented steps in the evlav gitlab repo.

Maybe once you restore from backup, try flash the BIOS manually and see if you get the same behavior?

SwithinR commented 11 months ago

Thanks for the quick reply! I'm not sure if you caught my update, but the BIOS installation finally went through. Something about my system really screwed up the process, but now that it's stable (and I don't have the BIOS voltage adapter for the chip programmer necessary to do the work alone) I don't think I want to risk trying to repro this in case it stays inert next time.

I totally didn't mean to question your script, btw. If other folks were having trouble I'd expect to see it in the youtube comments, and those seem 100% in the clear. I'm pretty sure it's something about my system tweaks or history that triggered this behavior, but I can't diagnose it. I just thought I'd mention it in case you had any insights, and while you do give a disclaimer it might be worth a note that the update process can possibly be upset by user modifications. I probably should have reverted things as close to stock as possible before fiddling with the BIOS anyway, it only takes a minute.

I also don't know why it came back to life, and I'm honestly surprised by that. The gremlins got bored? I'll take the win.

Thanks for the tool! I'll probably use it again when the need arises. One last question, just in cast you know the answer: after blocking auto BIOS updates, checking for software updates through the Steam menu gives me the message

"Update Error An error was encountered during the update process, please try again."

I'm assuming that's it failing some BIOS check, but afterwards the status reads "Up to date: check x time ago" as if it succeeded. Do you know if regular OS updates will continue to be discovered and applied while BIOS updates are blocked?

ryanrudolfoba commented 11 months ago

No worries I'm just totally curios about the behavior. I'm glad you got your Steam Deck back to a working state.

The signed BIOS file included in every SteamOS install is located in /usr/share/jupiter_bios. This file gets applied automatically if the installed BIOS is lower than the BIOS in this location.

If you select the item BLOCK, what it does is it moves the signed BIOS file located in /usr/share/jupiter_bios to /usr/share/jupiter_bios/bak. The system cant find it so it cant install it automatically. In turn, you get the "UPDATE ERROR" because it cant find the BIOS file. Once you select UNBLOCK, it restores the file to the correct location and the system can apply it automatically as needed.

You will still get Steam client or SteamOS updates even if the setting is set to BLOCK. But take note that if it is a SteamOS update, then it will overwrite the BLOCK item and it will automatically apply the BIOS update if needed.

papibaquigrafo4 commented 9 months ago

Just had the exact same thing happened to me. Also on 119 stable channel, was downgrading to 116 and now my deck is black screen after booting. When I press the power button the fan turns up for half a second and then, 7 seconds off, then full speed. But nothing on the screen. I managed to make a backup of the bios and put on my server, so, at least there's hope that I can flash it with the ch341a, that I order today. I am absolutely sad since I live in a country in which rma is not possible. The OP said that he tried all the obvious things on the internet, as I did it too, but mine still on black screen after like 6 hours of trying. Anyways, just posting this here so, it's a warning for everyone in 119 trying to downgrade. To OP - any ideas on why or how exactly your came back from the land of the dead? You left it off and later tried or left it on and running and when you saw it was working? Other relevant info Trackpads seems to be working, the screen is not backlit and fans are full speed

Seriously valve needs to create some easier way to flash the bios other than using a ch341a. Flashdrive or a SD card with the bios in the root. Man, Im so sad, rn.

ryanrudolfoba commented 9 months ago

119 was released Oct 26, and this repo was created Nov18. Ive tested downgrading 119 manually and via this script multiple times during that time, so i dunno why it failed on yours. Maybe you have undervolt setting while in 119 and since undervolt settings dont exist in 116 it freezes?

With that said since trackpad works theres a good chance maybe a CMOS reset can recover it. Turn off steam deck, then press 3dots + voldown + power. LED will blink for about 10secs, pause, blink again for 10sec, pause and finally boot. Hopefully it shows up a display.

If you can confirm if you are using stock settings on 119 or undervolt settings i will update the github with this info as a warning to revert to stock settings first before downgrading the 119.

ryanrudolfoba commented 9 months ago

Additional - if ssh is enabled and you remember the IP address of the deck maybe you can ssh on it. Check which BIOS it is on, see if it downgraded to 116.

papibaquigrafo4 commented 9 months ago

Makes sense. I didn't reset my settings on 119 before downgrading. I've tried the CMOS recover multiple times, and nothing. About ssh, I didn't tried. I'll check that now. If the deck gets a connection with my router and see if it hooks on any IP. I left it running overnight, let's see how that goes. I'll keep you posted.

papibaquigrafo4 commented 9 months ago

Yeah, tried again the CMOS reset, and it just blinks eternally, with the fan running and trackpads vibrating on touch. Doesn't seem to be booting or anything else cause there's no sound. Also, ssh, my router doesn't detect any new connection. So, I don't think it will work, I've tried to connect all 3 different IPS in my network and nothing.... Yeah, my last hope is the ch341a.

lzq960605 commented 8 months ago

什么

Yeah, tried again the CMOS reset, and it just blinks eternally, with the fan running and trackpads vibrating on touch. Doesn't seem to be booting or anything else cause there's no sound. Also, ssh, my router doesn't detect any new connection. So, I don't think it will work, I've tried to connect all 3 different IPS in my network and nothing.... Yeah, my last hope is the ch341a.

Me too. Even with the battery removed and the combination keys unable to reset the BIOS settings, I have logged in to RAM 3200. I have already ordered the ch341a package, which will arrive in 2-3 days. I have noticed that others have restored the backup BIOS through ch341a, and I hope I can successfully save it

lzq960605 commented 8 months ago

I installed the OC kernel module installation program before overclocking the RAM, which caused me to be unable to reset the BIOS default settings no matter how I unplugged the battery or combined the keys. The programmer still has a few hours to deliver...