StarLabsLtd / firmware

69 stars 5 forks source link

[StarBook Mk VI - ITE] Charging stops intermittently #95

Closed david-mohr closed 1 year ago

david-mohr commented 1 year ago

After the latest update, having followed along with the other charging issues (#89, #90), a new issue has appeared:

Sean-StarLabs commented 1 year ago

What percentage is the battery and what's the colour of the charging LED when it stops charging?

david-mohr commented 1 year ago

100% and the LED is unlit

Sean-StarLabs commented 1 year ago

Sounds right - it shouldn't start charging again until its dropped below 95%

david-mohr commented 1 year ago

It's now at 87% and still falling (power is still plugged in)

Sean-StarLabs commented 1 year ago

Okay - it might not be able the two chargers - can I ask why you have two connected?

david-mohr commented 1 year ago

It's not intentional... the USB-c is just for my monitor (and its usb hub). If you think it's sufficient to just use that as the charger, then I can remove the DC jack and see how that goes.

Sean-StarLabs commented 1 year ago

Depends on the monitor, but worth a try

david-mohr commented 1 year ago

It's a dell S2718D. It worked for a while, but eventually it disconnected the power and the display, and then went into a tight loop connecting and disconnecting the monitor. Now when I connect the monitor, it will accept power, but not recognise the monitor (monitor says there's no signal). I'll try switching over to DC jack and HDMI instead.

cichy1173 commented 1 year ago

It's a dell S2718D. It worked for a while, but eventually it disconnected the power and the display, and then went into a tight loop connecting and disconnecting the monitor. Now when I connect the monitor, it will accept power, but not recognise the monitor (monitor says there's no signal). I'll try switching over to DC jack and HDMI instead.

Do you use Star Labs original charger?

david-mohr commented 1 year ago

@cichy1173 yes

cichy1173 commented 1 year ago

@cichy1173 yes

Please, try different charger. I had almost the same problem with original charger and USB-C Hub. Laptop charged 100%, and it started disconnecting and connecting. I changed charger, and everything is fine. I think, I need to report this charger issue. I think the charger may have broken.

david-mohr commented 1 year ago

Interesting! I've got the same issue now that I'm not using the usb-c connection to the monitor, gets to 100% and will continually disconnect/connect: not dipping to 95%, LED is pink/purple while "charging". Only lasts a couple of seconds then it disconnects again.

Sean-StarLabs commented 1 year ago

Do you use Star Labs original charger?

Where does the charger factor in? If it's a PD monitor, it should have its own supply?

cichy1173 commented 1 year ago

Do you use Star Labs original charger?

Where does the charger factor in? If it's a PD monitor, it should have its own supply?

No. The monitor does not have a PD. I connect the monitor to a usb-c hub together with a usb-c charger (I connect the charger to this hub) and then the hub to the laptop.

I have tested the charger together with other computers (and without using the usb-c hub) and there too the charger behaves strangely - for example the keyboard on the Huawei Matebook x Pro started flashing like broken. As with the Starbook, changing the charger helped here too. I wonder if the charger from the starbook kit might not be defective.

Sean-StarLabs commented 1 year ago

The Dell S2718D used for this issue does - your issue sounds completely different. Can you open a separate issue with the model of the Hub?

david-mohr commented 1 year ago

Just to clarify my situation:

Sean-StarLabs commented 1 year ago

Can you try https://github.com/StarLabsLtd/firmware/tree/master/StarBook/MkVI-Intel/ite/1.06 with coreboot 8.34?

david-mohr commented 1 year ago

sure thing. I haven't done an EFI update before, can I please confirm that these are the instructions that I need to follow? https://starlabsltd.github.io/firmware/methods/efi_shell/

Sean-StarLabs commented 1 year ago

Yup

david-mohr commented 1 year ago

thanks, I'll jump on it first thing in the morning

ghost commented 1 year ago

How do i update from EFI, have downloaded all files, put it on a fat32 USB in folder "Firmware", boot in EFI shell, and nothing happens.

Sean-StarLabs commented 1 year ago

Dont put it in the folder - it wont be able to find it

cichy1173 commented 1 year ago

How do i update from EFI, have downloaded all files, put it on a fat32 USB in folder "Firmware", boot in EFI shell, and nothing happens.

obraz I think Firmware is a name of memory stick, not folder.

ghost commented 1 year ago

Dont put it in the folder - it wont be able to find it

Oh, okey, thanks, and do i need download all files from https://github.com/StarLabsLtd/firmware/tree/master/StarBook/MkVI-Intel/ite/1.06

Sean-StarLabs commented 1 year ago

Just the zip file

ghost commented 1 year ago

Dont put it in the folder - it wont be able to find it

Oh, okey, thanks, and do i need download all files from https://github.com/StarLabsLtd/firmware/tree/master/StarBook/MkVI-Intel/ite/1.06

Just the zip file

Nothing happens, and can not unzip the file.

Sean-StarLabs commented 1 year ago

Nothing happens, and can not unzip the file.

You might be better of waiting for the stable release that'll come via the LVFS, but if you really want to install this testing update, this'll download and extract it:

wget https://raw.githubusercontent.com/StarLabsLtd/firmware/master/StarBook/MkVI-Intel/ite/1.06/efi-B6-I.zip
unzip efi-B6-I.zip 
ghost commented 1 year ago

Nothing happens, and can not unzip the file.

You might be better of waiting for the stable release that'll come via the LVFS, but if you really want to install this testing update, this'll download and extract it:

wget https://raw.githubusercontent.com/StarLabsLtd/firmware/master/StarBook/MkVI-Intel/ite/1.06/efi-B6-I.zip
unzip efi-B6-I.zip 

Okey, thats why. Can wait for the stable one :)

david-mohr commented 1 year ago

I seem to have a problem now that says "the laptop is plugged in, but still discharging" (DC jack only, no external monitor). Then after a short time, the power will disconnect and reconnect, but the error persists and the battery is still discharging.

Down to 8% battery, going to roll back to 1.05

david-mohr commented 1 year ago

No change, now sitting at 0% according to the OS. Saw there is now 1.07, will try that

david-mohr commented 1 year ago

I seem to be unable to install 1.07 (or I'm checking the installed version the wrong way). I have wiped the usb stick to ensure I have only files from the latest zip. Then I reboot into the EFI shell with the usb attached (although I have found that I need to unplug the usb stick while in the boot menu and plug it in again otherwise the EFI shell with detect the auto boot script, but not execute it).

Install seems to go fine and I power off the machine after it reboots to ensure I don't trigger the "overflow" mentioned in other tickets. I then power the machine on, log in and run fwupdmgr get-device, but it reports the embedded controller is still version 1.05. I assume I'm doing something wrong, I just can't figure out what it is.

david-mohr commented 1 year ago

As a side note, I've changed the power profile to "power saving" to see if that will help kick start the recharging.

david-mohr commented 1 year ago

An interesting development... I was moving my laptop to another room and it powered off (no battery left), but now it seems to be charging after powering it back on and booting up.

divico commented 1 year ago

I'm on 8.34/1.05 and I'm suddenly experiencing the same symptoms as described in #89 which are close those described here.

With only the DC jack plugged-in the LED is red and the battery won't charge. The gnome indicator is oscillating between charging and discharging.

I'll try to update as soon as I can

divico commented 1 year ago

I'm on 8.34/1.05 and I'm suddenly experiencing the same symptoms as described in #89 which are close those described here.

With only the DC jack plugged-in the LED is red and the battery won't charge. The gnome indicator is oscillating between charging and discharging.

I'll try to update as soon as I can

Ok in the meantime I could try 1.06 and 1.07. Same issue with both versions. I have now 2% battery left and no options left to charge my laptop, which unfortunately is now unusable. Please let me know if I can assist somehow fixing this ASAP. thx! I have max charge set to 60% in coreboot configurator, in case this is relevant.

BTW although I have found that I need to unplug the usb stick while in the boot menu and plug it in again otherwise the EFI shell with detect the auto boot script, but not execute it). I can confirm that. If one follows the official instruction it will never update. This important detail should be added to the official doc or fixed if it is not supposed to work like this.

divico commented 1 year ago

Is switching to AMI a workaround for all these charging issue?

cichy1173 commented 1 year ago

Is switching to AMI a workaround for all these charging issue?

You can downgrade to EC 1.01

divico commented 1 year ago

Is switching to AMI a workaround for all these charging issue?

You can downgrade to EC 1.01

Thanks, I can confirm downgrading from 1.07 to 1.01 with coreboot still on 8.34 immediately fixes the issue. Under the same conditions as before, the LED is solid red and the battery is now charging as reported by the gnome indicator. Just have to get used to the 1.01 fan curve 🙈

Sean-StarLabs commented 1 year ago

I seem to be unable to install 1.07 (or I'm checking the installed version the wrong way). I have wiped the usb stick to ensure I have only files from the latest zip. Then I reboot into the EFI shell with the usb attached (although I have found that I need to unplug the usb stick while in the boot menu and plug it in again otherwise the EFI shell with detect the auto boot script, but not execute it).

sudo nvramtool -w mirror_flag=Disable will stop it doing that.

BTW although I have found that I need to unplug the usb stick while in the boot menu and plug it in again otherwise the EFI shell with detect the auto boot script, but not execute it).

Sorry, don't follow - it's a paradox if it detects the script but doesn't execute it as they are one and the same. It's most likely the USB; the EFI shell is stuff is about 15 years old - no-one changes it because it works! Step by step, what happens when you follow the instructions?

Ok in the meantime I could try 1.06 and 1.07. Same issue with both versions.

The issue that @david-mohr mentioned is categorically fixed in 1.07 - whatever you experienced was different so you can you let me know:

divico commented 1 year ago

Sorry, don't follow - it's a paradox if it detects the script but doesn't execute it as they are one and the same. It's most likely the USB; the EFI shell is stuff is about 15 years old - no-one changes it because it works! Step by step, what happens when you follow the instructions?

In my case I cannot confirm that it does detect the script. Actually I think it doesn't detect the script. In all the cases the issue is that it won't update if the USB stick is inserted before the laptop is turned on. The only procedure that works for me is to turn on the machine with the USB stick disconnected, enter boot manager and insert the USB stick while in the boot manager. Then start the EFI shell and it works. I have a USB stick with an activity LED and I can clearly see that there is no activity on the USB if it is connected before turning on. If it is connected after entering the boot manager, I can clearly see that the activity LED is blinking immediately after plug-in the stick. It is of course not a big issue but if you don't know and you strictly follow the documentation which says

Your USB Flash Drive is now ready. Leave it connected, connect your laptop charger and then turn off your laptop. Turn your laptop back on and boot to the EFI Shell...

then it will not work. At least in my (our?) case.

divico commented 1 year ago

The issue that @david-mohr mentioned is categorically fixed in 1.07 - whatever you experienced was different so you can you let me know:

Ok thanks for the clarification.

Sean-StarLabs commented 1 year ago

BIOS version coreboot 8.34

8.34 had the mirror flag forced (coreboot updates the EC) - did you check the EC version after installing it? Just added 8.36 which doesn't have the mirror flag forced, so you can use any version of the EC and coreboot won't intervene.

Sean-StarLabs commented 1 year ago

Then start the EFI shell, and it works. I have a USB stick with an activity LED, and I can clearly see that there is no activity on the USB if it is connected before turning on.

Which port? And when you follow the instructions (i.e. have it connected before turning on), does the USB appear int he EFI Shell?

david-mohr commented 1 year ago

Just a quick update on my testing of 1.07:

Tomorrow I will test with both connected.

aaron-gh commented 1 year ago

Can confirm the charger will connect and disconnect when using coreboot if the battery is at the max charge level or close. Not sure about this with USB C but with dc jack charging this seems to be an issue.

Sean-StarLabs commented 1 year ago

will connect and disconnect

What are you counting as a disconnect?

Oh, and what does cat /sys/class/dmi/id/ec_firmware_release say?

Sean-StarLabs commented 1 year ago

Ah, it finally happened to me - it's LEARN running awry, which explains why it works for days and then doesn't. Fixed that in 1.10.

divico commented 1 year ago

BIOS version coreboot 8.34

8.34 had the mirror flag forced (coreboot updates the EC) - did you check the EC version after installing it? Just added 8.36 which doesn't have the mirror flag forced, so you can use any version of the EC and coreboot won't intervene. Yes I was running 8.34 and 1.05 for sure

divico commented 1 year ago

Then start the EFI shell, and it works. I have a USB stick with an activity LED, and I can clearly see that there is no activity on the USB if it is connected before turning on.

Which port? And when you follow the instructions (i.e. have it connected before turning on), does the USB appear int he EFI Shell?

I noticed the issue when using the top right USB-A port, but I haven't tried with the other ports. No the USB stick would no show up in the boot manager list unless it is removed and inserted again, then it would appear. This was happening as I had the battery at 2% and the issue that the battery would not charge. In the meantime I downgraded to EC 1.01, while still on 8.34 and I could not reproduce it, i.e. it works as described in your documentation and I tested all 3 USB A ports. I rolled back to the versions 8.34 / 1.05 (those installed when I had the issue) but I could not reproduce the issue neither. Now I upgraded to 8.36 and 1.10 and it also works as intended. Hence, at the moment I'm unable to reproduce the issue, no matter which versions. Since I had the charging issue at that time, could it be that the EC was in a weird state and would somehow not detect/enable the port when turned on? I don't know.

divico commented 1 year ago

Ah, it finally happened to me - it's LEARN running awry, which explains why it works for days and then doesn't. Fixed that in 1.10.

Running coreboot 8.36and EC 1.10 does not fix the issue for me. With only the DC jack connected, the battery full (LED purple, 63% with max charge set to 60% in coreboot), it will disconnected and reconnect randomly (at least it feels random).

Interestingly, I can systematically reproduce the following:

  1. DC jack connected (only), LED purple, battery 63% with max charge set to 60%
  2. Turn on laptop, stop at GDM login screen. The battery symbol says correctly that power is connected.
  3. Login into a user session. Right after the session has opened, the battery symbol says (wrongly) power is disconnected. Wait ~2 seconds and observe how the symbol switches to power connected.

From there on it will regularly disconnected and reconnect.

A few outputs, hope it helps.

cat /sys/class/dmi/id/ec_firmware_release
1.10
sudo ./ectool -d
EC RAM:

00: 01 0a 00 00 01 00 00 00 00 bb dd 00 00 00 00 01 
10: 00 00 00 00 00 3e 2b 00 00 00 aa aa 00 00 00 00 
20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
40: 00 31 36 3a 35 30 3a 33 33 00 00 32 30 32 33 2f 
50: 30 34 2f 30 34 00 00 00 00 00 00 00 00 00 00 00 
60: 00 00 00 00 00 00 02 00 00 00 00 00 00 00 00 00 
70: 46 00 00 00 00 00 00 00 01 02 04 00 00 00 00 01 
80: 47 01 24 00 fc 15 1e 2d ea 15 00 00 02 00 00 f9 
90: 0d 07 2f 40 00 00 00 00 00 00 00 00 00 00 00 00 
a0: 00 00 00 00 33 90 14 00 00 00 00 00 00 00 00 00 
b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
c0: 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
sudo nvramtool -a
boot_option = Fallback
reboot_counter = 0x0
debug_level = Debug
hyper_threading = Enable
vtd = Enable
power_profile = Balanced
me_state = Disable
me_state_counter = 0x0
wireless = Enable
webcam = Enable
microphone = Enable
legacy_8254_timer = Disable
pci_hot_plug = Disable
kbl_timeout = 30 seconds
fn_ctrl_swap = Disable
max_charge = 60%
fan_mode = Quiet
mirror_flag = Disable
mirror_flag_counter = 0x0
power_on_after_fail = Disable
fn_lock_state = 0x1
trackpad_state = 0x0
kbl_brightness = 0x2
kbl_state = 0x1
uname -a
Linux starbook 6.2.9-arch1-1 #1 SMP PREEMPT_DYNAMIC Thu, 30 Mar 2023 14:51:14 +0000 x86_64 GNU/Linux