Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 26 Nov 2006 14:31:59 +1100 (EST)
From:      Ian Smith <smithi@nimnet.asn.au>
To:        "M. Warner Losh" <imp@bsdimp.com>
Cc:        freebsd-acpi@freebsd.org
Subject:   Re: How do I...
Message-ID:  <Pine.BSF.3.96.1061126142335.1087A-100000@gaia.nimnet.asn.au>
In-Reply-To: <20061125.160917.1628359610.imp@bsdimp.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, 25 Nov 2006, M. Warner Losh wrote:

 > In message: <4568AA2F.4050602@root.org>
 >             Nate Lawson <nate@root.org> writes:
 > : M. Warner Losh wrote:
 > : > ... run a command when there's < 1% battery life left?
 > : > 
 > : > Warner
 > : 
 > : You add support here in acpi_cmbat.c:
 > :      /* XXX If all batteries are critical, perhaps we should suspend. */
 > :      if (sc->bst.state & ACPI_BATT_STAT_CRITICAL) {
 > :      	if ((sc->flags & ACPI_BATT_STAT_CRITICAL) == 0) {
 > : 	    sc->flags |= ACPI_BATT_STAT_CRITICAL;
 > : 	    device_printf(dev, "critically low charge!\n");
 > : 	}
 > :      }
 > : 
 > : Use the acpi_NotifyMumble function to send a value to devd.  You 
 > : probably want to make sure you're off AC power also since you may still 
 > : have that crit state when plugged in.  So read the value of AC status 
 > : (see kern_power.c for how to do this) before sending the notify.
 > 
 > I was thinking of sending the critical message as well as for each %
 > of battery life that changed.  I just wanted to make sure that it
 > wasn't being done already and i was captain clueless.
 > 
 > Warner

I suspect what you're after is basically the functionality previously
provided by apmd for APM battery % {dis,}charging (and other) power
related events, where you could define in apmd.conf, eg from mine:

apm_battery 20% discharging {
        exec "logger -p user.notice battery status low [20%]";
        exec "echo T250L8CE-GE-C >>/dev/speaker";
}

Me too .. and here's where Nate says 'well write it then!' :)

Cheers, Ian




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.3.96.1061126142335.1087A-100000>