raiguard / ModernGadgets

Sleek, minimalist, information-dense gadgets for the modern desktop. Inspired by the AddGadgets.com system monitoring gadgets. Built on the Rainmeter platform.
MIT License
300 stars 32 forks source link

Battery Meter #206

Closed Erichssf closed 4 years ago

Erichssf commented 4 years ago

The battery meter is no showing all the details. It shows the actualy percentage of how charged the battery is, but everything reads at 0, and I can't find any documentation on what needs done to make it read it.

raiguard commented 4 years ago

Please try these troubleshooting steps.

Erichssf commented 4 years ago

Those steps didn’t make it work.

From: raiguard notifications@github.com Sent: Sunday, May 3, 2020 6:46 PM To: raiguard/ModernGadgets ModernGadgets@noreply.github.com Cc: Erichssf batmanssf@gmail.com; Author author@noreply.github.com Subject: Re: [raiguard/ModernGadgets] Battery Meter (#206)

Please try these troubleshooting steps https://github.com/raiguard/ModernGadgets/wiki/PerfMon-Troubleshooting .

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/raiguard/ModernGadgets/issues/206#issuecomment-623203601 , or unsubscribe https://github.com/notifications/unsubscribe-auth/AKBAN4OBTZMPU2ADFINYRJLRPX65BANCNFSM4MYDUPZA . https://github.com/notifications/beacon/AKBAN4LPCHNYD23YJHWVFMTRPX65BA5CNFSM4MYDUPZKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEUSVKEI.gif

Erichssf commented 4 years ago

BatteryMeter

raiguard commented 4 years ago

Could you open the Rainmeter log (right-click the tray icon, click "About") and tell me if there are any errors there?

Erichssf commented 4 years ago

Yep, there were some errors for Battery Meter:

Erichssf commented 4 years ago

RainmeterLog

Erichssf commented 4 years ago

this is what the file consists of:

[Variables] ; COLORS colorBatteryFull=107,238,98 colorBatteryCharging=255,246,42 colorBatteryLow=236,28,70 colorBatteryCritical=255,0,0 colorBatteryNoBattery=#colorDim#

batteryLifetimeFormat=%#H hr %M min remaining

showChargeInfo=1 autoFailover=0 chargeUnits=Amps playCriticalWarningSound=1 batteryCriticalWarningSound=C:\Windows\Media\ringout.wav

raiguard commented 4 years ago

Huh, that's not very helpful. All it's telling me is that it's dividing by zero. Try enabling auto-failover?

@SilverAzide Is this why you added a HWiNFO option to your battery meter? Perhaps I should do the same.

Erichssf commented 4 years ago

enabled it, no change.

SilverAzide commented 4 years ago

Hi @raiguard! No, the auto-failover feature was for machines with multiple batteries. (It would allow the Battery Meter to switch to the next available battery once the first was exhausted.)

It looks like the [MeasureBatteryVoltage] measure, which is using the ActiveNet plugin, is returning zero (the measures should be disabled in this case). This could be due in turn to [MeasureBatteryInstance] returning something wrong.

@Erichssf, please try the following: Open the About screen, and on the Skins tab, select the Battery Meter and let us know what the [MeasureBatteryStatus], [MeasureBatteryInstance], and [MeasureBatteryVoltage] measures are returning (they should have a value and not be grayed out). Also, check the Plugins tab and ensure ActiveNet.dll is listed. Finally, open a PowerShell prompt and enter the following (all on one line):

gwmi -Namespace root\wmi -Query 'select InstanceName, ChargeRate, DischargeRate, RemainingCapacity, Voltage from BatteryStatus where Voltage > 0'

Erichssf commented 4 years ago

They look to have a value range (see attached pic).

ActiveNet.dll is listed in the plugins.

Ran the command in the PowerSHell and still no change, its still not change.

From: SilverAzide notifications@github.com Sent: Monday, May 4, 2020 9:39 AM To: raiguard/ModernGadgets ModernGadgets@noreply.github.com Cc: Erichssf batmanssf@gmail.com; Mention mention@noreply.github.com Subject: Re: [raiguard/ModernGadgets] Battery Meter (#206)

Hi @raiguard https://github.com/raiguard ! No, the auto-failover feature was for machines with multiple batteries. (It would allow the Battery Meter to switch to the next available battery once the first was exhausted.)

It looks like the [MeasureBatteryVoltage] measure, which is using the ActiveNet plugin, is returning zero. This could be due in turn to [MeasureBatteryInstance] returning something wrong.

@Erichssf https://github.com/Erichssf , please try the following: Open the About screen, and on the Skins tab, select the Battery Meter and let us know what the [MeasureBatteryInstance] and [MeasureBatteryVoltage] measures are returning (they should have a value and not be grayed out). Also, check the Plugins tab and ensure ActiveNet.dll is listed. Finally, open a PowerShell prompt and enter the following (all on one line):

gwmi -Namespace root\wmi -Query 'select InstanceName, ChargeRate, DischargeRate, RemainingCapacity, Voltage from BatteryStatus where Voltage > 0'

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/raiguard/ModernGadgets/issues/206#issuecomment-623503770 , or unsubscribe https://github.com/notifications/unsubscribe-auth/AKBAN4KS6QM225BY3GISZKLRP3HQBANCNFSM4MYDUPZA . https://github.com/notifications/beacon/AKBAN4LGLHQFEPWJFX33LM3RP3HQBA5CNFSM4MYDUPZKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEUU6TGQ.gif

SilverAzide commented 4 years ago

Sorry, I didn't make it clear what I was looking for. Can you run the PowerShell command again and post the results here? The command isn't supposed to fix anything, it is supposed to report your battery info so I can see it., Also, can you post a screenshot of the About screen showing those measure values?

Erichssf commented 4 years ago

I included screen shots of both in my previous email, did they not come through?

The power shell command did not display anything.

I will post the screen shots in the thread on GitHub.

From: SilverAzide notifications@github.com Sent: Monday, May 4, 2020 1:28 PM To: raiguard/ModernGadgets ModernGadgets@noreply.github.com Cc: Erichssf batmanssf@gmail.com; Mention mention@noreply.github.com Subject: Re: [raiguard/ModernGadgets] Battery Meter (#206)

Sorry, I didn't make it clear what I was looking for. Can you run the PowerShell command again and post the results here? The command isn't supposed to fix anything, it is support to report your battery info so I can see it., Also, can you post a screenshot of the About screen showing those measure values?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/raiguard/ModernGadgets/issues/206#issuecomment-623629228 , or unsubscribe https://github.com/notifications/unsubscribe-auth/AKBAN4NZQ3BCDUBNW3Z5KATRP4CKJANCNFSM4MYDUPZA . https://github.com/notifications/beacon/AKBAN4J6XYLBXWGABIGUUGLRP4CKJA5CNFSM4MYDUPZKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEUV5HLA.gif

Erichssf commented 4 years ago

BattMeasure PowerShellcommand

Erichssf commented 4 years ago

I copied and pasted the command, but decided to type it all out, and this is what is displayed:

Annotation 2020-05-04 134028

SilverAzide commented 4 years ago

Well... there's your problem, LOL. According to Windows, you have no battery, or your battery is dead. (Your last screenshot has a typo in the command, which is why you see the red error text.)

One more time, can you post the results of the following PowerShell command. This one should list something instead of nothing...

gwmi -Namespace root\wmi -Query 'select * from BatteryStatus'

If that doesn't show anything, try:

gwmi -Class Win32_Battery

Erichssf commented 4 years ago

The first command did not display anything. The second command did though:

PSresults

SilverAzide commented 4 years ago

Huh... The fact that the first command is failing completely is the reason you are not seeing anything. Rainmeter's PowerPlugin sees a battery, but the ActiveNet plugin cannot fetch the battery details for your machine. You are out of luck, I'm afraid, and this Battery Meter will not work for you. (@raiguard, an HWiNFO variant could resolve this issue, but maybe it would have the same problems.)

Any chance you have ACPI disabled? One way to know is to open your Device Manager app. If you have ACPI enabled, you will see the following:

image

If ACPI is disbled, you will see "Standard PC". ACPI is a BIOS-level setting, so don't change it, otherwise Windows will see the change and try reinstalling drivers and re-configuring itself.

Erichssf commented 4 years ago

Based on all the info, I am gonna go out on a limb and say it’s maybe because it’s an ARM based machine. It’s the Samsung Galaxy Book S

From: SilverAzide notifications@github.com Sent: Monday, May 4, 2020 3:47 PM To: raiguard/ModernGadgets ModernGadgets@noreply.github.com Cc: Erichssf batmanssf@gmail.com; Mention mention@noreply.github.com Subject: Re: [raiguard/ModernGadgets] Battery Meter (#206)

Huh... The fact that the first command is failing completely is the reason you are not seeing anything. Rainmeter's PowerPlugin sees a battery, but the ActiveNet cannot fetch the battery details for your machine. You are out of luck, I'm afraid, and this Battery Meter will not work for you. (@raiguard https://github.com/raiguard , an HWiNFO variant would resolve this issue.)

Any chance you have ACPI disabled? One way to know is to open your Device Manager app. If you have ACPI enabled, you will see the following:

https://user-images.githubusercontent.com/2706567/81011636-496cf400-8e26-11ea-999a-3f274846a0d6.png

ACPI is a BIOS-level setting, so don't change it, otherwise Windows will see the change and try reinstalling drivers and re-configuring itself.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/raiguard/ModernGadgets/issues/206#issuecomment-623696417 , or unsubscribe https://github.com/notifications/unsubscribe-auth/AKBAN4IWXLPFKWOHFQB2FITRP4SS5ANCNFSM4MYDUPZA . https://github.com/notifications/beacon/AKBAN4JI2DTY664L3QIIJSTRP4SS5A5CNFSM4MYDUPZKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEUWNUII.gif

SilverAzide commented 4 years ago

OHHHH.... OK! You might want to have led with that, LOL! :-D Good to know, tho! I appreciate it!

You're the first person I've heard from with an ARM machine. If you don't mind, would you be able to run RegEdit and post a screenshot of your registry at the following path:

\HKEY_LOCAL_MACHINE\HARDWARE\DESCRIPTION\System\CentralProcessor\0

I'm dying to know what this branch of the registry looks like on an ARM CPU! An Intel example:

image

Erichssf commented 4 years ago

It's not bad so far. I picked it up, cause I wanted something light weight and still fairly powerful, to pretty much take with me where ever i go (instead of lugging around my gaming laptop) and getting it through Verizon it has it's own cellular LTE internet connection.

RegEd

SilverAzide commented 4 years ago

Thanks! I've scoured the internet for this information and no one has posted a screenshot like this or described what the ARM processor looks like under Windows. This is great info! @raiguard, now we know exactly what's needed for our CPU Meters. :)

Erichssf commented 4 years ago

The CPU metering seems to work just fine actually. Network meter, works well. Disk meter, no issues. I don't use the GPU meter, so can't tell ya on that one. Only issue is the Battery Meter.

BTW, I love the Modern Gadgets, I use them on all my computers. 😎

On Tue, May 5, 2020, 5:44 AM SilverAzide notifications@github.com wrote:

Thanks! I've scoured the internet for this information and no one has posted a screenshot like this or described what the ARM processor looks like under Windows. This is great info! @raiguard https://github.com/raiguard, now we know exactly what's needed for our CPU Meters. :)

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/raiguard/ModernGadgets/issues/206#issuecomment-623982112, or unsubscribe https://github.com/notifications/unsubscribe-auth/AKBAN4KVRWGTVQAK3YMKK43RP7UZZANCNFSM4MYDUPZA .

SilverAzide commented 4 years ago

Yeah, there is only one way I know of to get battery voltage and it is via an undocumented API. It has worked in all Windows versions since at least WinXP days, but it looks like on ARM the API doesn't exist. That's why that WMI query you did isn't returning anything.

If you open your Admin Tools and select Performance Monitor, then in the Performance Monitor branch select the green "plus" to add a counter, do you see a counter called "Battery Status" as shown below? I'm guess you do NOT have this, since this is the "undocumented" API.

image

raiguard commented 4 years ago

Also, if you have HWiNFO, could you confirm whether or not it gets the battery statistics? If it does, then I can add a HWiNFO version of battery meter that will work in your situation.

And thanks for the regedit screenshot! That is indeed helpful. :D

SilverAzide commented 4 years ago

Hi @raiguard ! Sorry for clogging up your github issue with all my yammering, LOL. Looks like the ActiveNet options for getting voltage, charge rate, etc. are no longer needed. Only "instance name" seems to be of value now; the new UsageMonitor plugin can do the rest. Maybe PerfMon could do this too and I just never noticed. Oh well, it wouldn't be the first time the plugin duplicated existing functionality...

I'd be surprised if HWiNFO supports ARM processors (https://www.hwinfo.com/about-software/supported-components/) but it would be great if it does!

Erichssf commented 4 years ago

Nope, no battery status listed there ☹

From: SilverAzide notifications@github.com Sent: Tuesday, May 5, 2020 9:17 AM To: raiguard/ModernGadgets ModernGadgets@noreply.github.com Cc: Erichssf batmanssf@gmail.com; Mention mention@noreply.github.com Subject: Re: [raiguard/ModernGadgets] Battery Meter (#206)

Yeah, there is only one way I know of to get battery voltage and it is via an undocumented API. It has worked in all Windows versions since at least WinXP days, but it looks like on ARM the API doesn't exist. That's why that WMI query you did isn't returning anything.

If you open your Admin Tools and select Performance Monitor, then in the Performance Monitor branch select the green "plus" to add a counter, do you see a counter called "Battery Status" as shown below? I'm guess you do NOT have this, since this is the "undocumented" API.

https://user-images.githubusercontent.com/2706567/81076061-2ccdcc00-8eb9-11ea-9f50-c3f64caef568.png

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/raiguard/ModernGadgets/issues/206#issuecomment-624082783 , or unsubscribe https://github.com/notifications/unsubscribe-auth/AKBAN4OVRP7W3XUBYXL24GTRQANWNANCNFSM4MYDUPZA . https://github.com/notifications/beacon/AKBAN4PVO6B6ZSZV4NBYM6DRQANWNA5CNFSM4MYDUPZKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEUZL6XY.gif

Erichssf commented 4 years ago

I will DL HWinfo and try it.

It’s been awhile since I used HWinfo on any machines though

From: raiguard notifications@github.com Sent: Tuesday, May 5, 2020 10:11 AM To: raiguard/ModernGadgets ModernGadgets@noreply.github.com Cc: Erichssf batmanssf@gmail.com; Mention mention@noreply.github.com Subject: Re: [raiguard/ModernGadgets] Battery Meter (#206)

Also, if you have HWiNFO, could you confirm whether or not it gets the battery statistics? If it does, then I can add a HWiNFO version of battery meter that will work in your situation.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/raiguard/ModernGadgets/issues/206#issuecomment-624114077 , or unsubscribe https://github.com/notifications/unsubscribe-auth/AKBAN4LKIXNANPJZSEC4HVLRQAUBFANCNFSM4MYDUPZA . https://github.com/notifications/beacon/AKBAN4OXBJ6Z5NTHIZFYVTLRQAUBFA5CNFSM4MYDUPZKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEUZTTHI.gif

Erichssf commented 4 years ago

Downloaded HWInfo, here are some screenshots:

NotPluggedIn PluggedIn SensorPluggedIn SensorUnplugged

SilverAzide commented 4 years ago

Great!

Erichssf commented 4 years ago

Well, I suppose this issue can be closed. If you need/want any info from an ARM machine to test things, let me know I would be willing to help make your Modern Gadgets work across any machine :)

raiguard commented 4 years ago

Thank you! The information you provided was really helpful, I'll be sure to hit you up in the future if I have any other questions. Have a good day!

Erichssf commented 4 years ago

Welcome.

Have a good evening yourself 😊

From: raiguard notifications@github.com Sent: Wednesday, May 6, 2020 7:16 PM To: raiguard/ModernGadgets ModernGadgets@noreply.github.com Cc: Erichssf batmanssf@gmail.com; State change state_change@noreply.github.com Subject: Re: [raiguard/ModernGadgets] Battery Meter (#206)

Thank you! The information you provided was really helpful, I'll be sure to hit you up in the future if I have any other questions. Have a good day!

— You are receiving this because you modified the open/close state. Reply to this email directly, view it on GitHub https://github.com/raiguard/ModernGadgets/issues/206#issuecomment-624957237 , or unsubscribe https://github.com/notifications/unsubscribe-auth/AKBAN4JLC5M4EYWPDOBLZCDRQH4VTANCNFSM4MYDUPZA . https://github.com/notifications/beacon/AKBAN4L3CE2UVVG4BESELS3RQH4VTA5CNFSM4MYDUPZKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEVABONI.gif

SilverAzide commented 4 years ago

Hi @Erichssf and @raiguard... sorry to continue this thread after it is closed. Perhaps a new issue would be more appropriate, or we could continue this topic on the Rainmeter forum so more people could contribute. One thing that would be very useful would be to try HWiNFO and the GPU Meter. GPU Meters (both raiguard's and mine) tend to expect AMD or nVidia (and perhaps Intel) GPUs. I, at least, have never seen what Qualcomm's GPU looks like with respect to HWiNFO. @raiguard, didn't you find some secret trick to dump out all the sensor IDs and etc. into a file? If @Erichssf could dump his HWiNFO data somehow, we could get our GPU Meters to handle Qualcomm's GPU (if they don't already).

Erichssf commented 4 years ago

I will play around with it when I get home today

On Thu, May 7, 2020, 7:13 AM SilverAzide notifications@github.com wrote:

Hi @Erichssf https://github.com/Erichssf and @raiguard https://github.com/raiguard... sorry to continue this thread after it is closed. Perhaps a new issue would be more appropriate. One thing that would be very useful would be to try HWiNFO and the GPU Meter. GPU Meters (both raiguard's and mine) tend to expect AMD or nVidia (and perhaps Intel) GPUs. I, at least, have never seen what Qualcomm's GPU looks like with respect to HWiNFO. @raiguard https://github.com/raiguard, didn't you find some secret trick to dump out all the sensor IDs and etc. into a file? If @Erichssf https://github.com/Erichssf could dump his HWiNFO data somehow, we could get our GPU Meters to handle Qualcomm's GPU (if they don't already).

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/raiguard/ModernGadgets/issues/206#issuecomment-625217388, or unsubscribe https://github.com/notifications/unsubscribe-auth/AKBAN4JR2OHOSVLRIQYURGLRQKQWHANCNFSM4MYDUPZA .

Erichssf commented 4 years ago

Well, as you can see based on this screenshot, HWinfo does not have any sensors for the GPU on this ARM machine. But it does have the battery info, so if the battery meter can use HWinfo, that's how the battery info can be displayed.

Erichssf commented 4 years ago

forgot the screenshot LOL

HWinfo Shared Mem

SilverAzide commented 4 years ago

Well, it was a noble try! I'm just shocked HWiNFO worked as well as it did, especially since the HWiNFO docs do not list the CPU as being supported at all. Thank you very much for your time and effort!

Erichssf commented 4 years ago

Anytime. If you need/want any more info about the ARM system, just let me know :)