<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://www.thinkwiki.org/w/index.php?action=history&amp;feed=atom&amp;title=Talk%3AACPI_sleep_power_drain_test_script</id>
	<title>Talk:ACPI sleep power drain test script - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://www.thinkwiki.org/w/index.php?action=history&amp;feed=atom&amp;title=Talk%3AACPI_sleep_power_drain_test_script"/>
	<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Talk:ACPI_sleep_power_drain_test_script&amp;action=history"/>
	<updated>2026-06-10T05:42:12Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.31.12</generator>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Talk:ACPI_sleep_power_drain_test_script&amp;diff=27061&amp;oldid=prev</id>
		<title>Mcgiver: /* Another ACPI testing script */</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Talk:ACPI_sleep_power_drain_test_script&amp;diff=27061&amp;oldid=prev"/>
		<updated>2006-12-16T16:15:59Z</updated>

		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Another ACPI testing script&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 16:15, 16 December 2006&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot; &gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=Another ACPI testing script=&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=Another ACPI testing script=&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Another ACPI testing script I wrote (/modified the existing one) for more than one battery and integration in &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;current &lt;/del&gt;scripts (i.e. the Ubuntu suspend system)&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Another ACPI testing script I wrote (/modified the existing one) for more than one battery&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;, &lt;/ins&gt;and integration in &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;existing suspend &lt;/ins&gt;scripts (i.e. the Ubuntu suspend system)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;most people will go fine with the original, just for the case someone prefers support for more than one battery.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;most people will go fine with the original, just for the case someone prefers support for more than one battery.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Mcgiver</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Talk:ACPI_sleep_power_drain_test_script&amp;diff=27060&amp;oldid=prev</id>
		<title>Mcgiver at 16:15, 16 December 2006</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Talk:ACPI_sleep_power_drain_test_script&amp;diff=27060&amp;oldid=prev"/>
		<updated>2006-12-16T16:15:05Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;=Another ACPI testing script=&lt;br /&gt;
Another ACPI testing script I wrote (/modified the existing one) for more than one battery and integration in current scripts (i.e. the Ubuntu suspend system)&lt;br /&gt;
&lt;br /&gt;
most people will go fine with the original, just for the case someone prefers support for more than one battery.&lt;br /&gt;
I'm not quite sure if the results will be exact for multiple Batteries, since I experience an extra drain when my Thinkpad is switching.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Part 1 must be executed before suspending, Part 2 afterwards.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Part 1:&lt;br /&gt;
 #!/bin/sh&lt;br /&gt;
 # test script for measuring power drain during suspend-to-ram with ACPI&lt;br /&gt;
 # execute before suspend&lt;br /&gt;
 # in ubuntu: save in /etc/acpi/suspend.d/&lt;br /&gt;
 &lt;br /&gt;
 # default settings, change if needed&lt;br /&gt;
 LOG=/var/log/battery.log&lt;br /&gt;
 DATEFILE=/tmp/BATTESTDATE&lt;br /&gt;
 BATFILE=/tmp/BATTESTLOAD&lt;br /&gt;
 &lt;br /&gt;
 # save system time&lt;br /&gt;
 hwclock --systohc&lt;br /&gt;
 &lt;br /&gt;
 # get start values&lt;br /&gt;
 date &amp;gt;&amp;gt; $LOG&lt;br /&gt;
 DATE_BEFORE=`date +%s`&lt;br /&gt;
 &lt;br /&gt;
 echo $DATE_BEFORE &amp;gt;$DATEFILE&lt;br /&gt;
 #get battery states&lt;br /&gt;
 BAT_BEFORE=0&lt;br /&gt;
 BATS_DISCHARGING=0&lt;br /&gt;
 for b in /proc/acpi/battery/*; do&lt;br /&gt;
 	CBAT=`grep 'remaining capacity' $b/state | awk '{print $3}'`&lt;br /&gt;
 	BAT_BEFORE=`echo &amp;quot;$BAT_BEFORE + $CBAT&amp;quot;	|bc`&lt;br /&gt;
 	&lt;br /&gt;
 	if grep -q '^charging state:.*discharging' $b/state; then&lt;br /&gt;
 		BATS_DISCHARGING=`echo &amp;quot;$BATS_DISCHARGING + 1&amp;quot; |bc`&lt;br /&gt;
 	fi&lt;br /&gt;
 done&lt;br /&gt;
 &lt;br /&gt;
 echo $BAT_BEFORE &amp;gt;$BATFILE&lt;br /&gt;
 &lt;br /&gt;
 if [ $BATS_DISCHARGING -eq 0 ]; then&lt;br /&gt;
 	echo '!!! Not running on battery power while going to sleep!' &amp;gt;&amp;gt; $LOG&lt;br /&gt;
 fi&lt;br /&gt;
&lt;br /&gt;
Part 2:&lt;br /&gt;
 #!/bin/sh&lt;br /&gt;
 # test script for measuring power drain during suspend-to-ram with ACPI&lt;br /&gt;
 # execute after suspend&lt;br /&gt;
 # in ubuntu: save in /etc/acpi/resume.d/&lt;br /&gt;
 &lt;br /&gt;
 # default settings, change if needed&lt;br /&gt;
 LOG=/var/log/battery.log&lt;br /&gt;
 DATEFILE=/tmp/BATTESTDATE&lt;br /&gt;
 BATFILE=/tmp/BATTESTLOAD&lt;br /&gt;
 BATTERY=BAT0&lt;br /&gt;
 THRESHOLD=1000&lt;br /&gt;
 &lt;br /&gt;
 # restore system time&lt;br /&gt;
 hwclock --hctosys &lt;br /&gt;
 &lt;br /&gt;
 DATE_BEFORE=`cat $DATEFILE`&lt;br /&gt;
 BAT_BEFORE=`cat $BATFILE`&lt;br /&gt;
 rm -f $BATFILE&lt;br /&gt;
 rm -f $DATEFILE&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 # get end values&lt;br /&gt;
 DATE_AFTER=`date +%s`&lt;br /&gt;
 &lt;br /&gt;
 #get battery states&lt;br /&gt;
 BAT_AFTER=0&lt;br /&gt;
 BATS_DISCHARGING=0&lt;br /&gt;
 for b in /proc/acpi/battery/*; do&lt;br /&gt;
 	CBAT=`grep 'remaining capacity' $b/state | awk '{print $3}'`&lt;br /&gt;
 	BAT_AFTER=`echo &amp;quot;$BAT_AFTER + $CBAT&amp;quot;	|bc`&lt;br /&gt;
 	&lt;br /&gt;
 	if grep -q '^charging state:.*discharging' $b/state; then&lt;br /&gt;
 		BATS_DISCHARGING=`echo &amp;quot;$BATS_DISCHARGING + 1&amp;quot; |bc`&lt;br /&gt;
 	fi&lt;br /&gt;
 done&lt;br /&gt;
 &lt;br /&gt;
 if [ $BATS_DISCHARGING -eq 0 ]; then&lt;br /&gt;
 	echo '!!! Not running on battery power while waking up!' &amp;gt;&amp;gt; $LOG&lt;br /&gt;
 fi&lt;br /&gt;
 &lt;br /&gt;
 # do the calculations &lt;br /&gt;
 DIFF=`echo &amp;quot;$BAT_AFTER - $BAT_BEFORE&amp;quot; | bc`&lt;br /&gt;
 SECONDS=`echo &amp;quot;$DATE_AFTER - $DATE_BEFORE&amp;quot; | bc`&lt;br /&gt;
 USAGE=`echo &amp;quot;($DIFF * 60 * 60) / ($SECONDS)&amp;quot; | bc`&lt;br /&gt;
 &lt;br /&gt;
 # output the results&lt;br /&gt;
 echo &amp;quot;before: $BAT_BEFORE mWh&amp;quot; &amp;gt;&amp;gt; $LOG&lt;br /&gt;
 echo &amp;quot;after: $BAT_AFTER mWh&amp;quot; &amp;gt;&amp;gt; $LOG&lt;br /&gt;
 echo &amp;quot;diff: $DIFF mWh&amp;quot; &amp;gt;&amp;gt; $LOG&lt;br /&gt;
 echo &amp;quot;seconds: $SECONDS sec&amp;quot; &amp;gt;&amp;gt; $LOG&lt;br /&gt;
 echo &amp;quot;result: $USAGE mW&amp;quot; &amp;gt;&amp;gt; $LOG&lt;br /&gt;
 if [ $USAGE -gt -$THRESHOLD ]&lt;br /&gt;
 then&lt;br /&gt;
     echo &amp;quot;Power drain seems ok&amp;quot; &amp;gt;&amp;gt; $LOG&lt;br /&gt;
 else&lt;br /&gt;
     echo &amp;quot;Power drain seems a little high&amp;quot; &amp;gt;&amp;gt; $LOG&lt;br /&gt;
 fi&lt;br /&gt;
 if [ $SECONDS -lt 1200 ]&lt;br /&gt;
 then&lt;br /&gt;
     echo &amp;quot;!!! The notebook was suspended less than 20 minutes.&amp;quot; &amp;gt;&amp;gt; $LOG&lt;br /&gt;
     echo &amp;quot;!!! To get representative values please let the notebook sleep&amp;quot; &amp;gt;&amp;gt; $LOG&lt;br /&gt;
     echo &amp;quot;!!! for at least 20 minutes.&amp;quot; &amp;gt;&amp;gt; $LOG&lt;br /&gt;
 fi&lt;br /&gt;
 echo &amp;quot;&amp;quot; &amp;gt;&amp;gt; $LOG&lt;/div&gt;</summary>
		<author><name>Mcgiver</name></author>
		
	</entry>
</feed>