# $FreeBSD: ports/sysutils/upsd/files/upsd.conf,v 1.2 1999/08/31 02:00:16 peter Exp $
#
# UPS Daemon
# The Wild Wind Communications, 1995, 1996
#
# See file LICENSE for the distribution terms of this software.
#

ups "smart-ups" (230) proto "apc-smart" {
	device			"/dev/cuaa0"
	speed			2400
	read-timeout		2
	write-block-size	1
	write-block-delay	50
	queue-size		64
}

every 5 { # check events every 5 seconds
	nop
}

on "initialize" != "SM" {
	poll "initialize"
	after 60 every 60 {
		log emerg "Cannot put the UPS into smart mode!"
	}
}

every 600 {
	tune "high-transfer-point"		264
	tune "low-transfer-point"		196
	tune "line-alarm"			"0"
	tune "line-sensitivity"			"L"
	tune "low-batteries-duration"		2
	tune "nominal-voltage"			220
	tune "shutdown-delay"			20
	tune "wakeup-batteries-capacity"	25
	tune "wakeup-delay"			0
#	tune "batteries-replaced"		"01/01/77"
#	tune "label"				"WildWind"
}

every 300 {			# poll the UPS
	poll "last-test"
#	poll "light-test"
	poll "line-frequency"
	poll "line-maxvac"
	poll "line-minvac"
	poll "line-voltage"
	poll "load"
	poll "recharge"
	poll "temperature"
	poll "vdc"
	poll "voltage"

	log notice "last test: %last-test%, light test: %light-test%"
	log notice "frequency: %line-frequency%, maxvac: %line-maxvac%, minvac: %line-minvac%, voltage: %line-voltage%"
	log notice "load: %load%, recharge: %recharge%, temp: %temperature%, vdc: %vdc%, output voltage: %voltage%"

	on "load" > 95 {
		log alert "UPS load is too high: %load%"
	}
}

on "line-fail" {
	log emerg "*** ALERT! Source power line failed, save your work! ***"
}

on "line-fail" after 30 {
	log emerg "*** ALERT! System shutdown in 30 seconds, LOGOUT NOW! ***"
}

on "line-restore" {
	log emerg "Source power line restored, you may continue your work."
}

on "line-fail" after 60 {
	log emerg "*** ALERT! THE SYSTEM IS SHUTTING DOWN! ***"

	poll "shutdown"
	poll "shutdown"
	poll "power-test"
	poll "power-test"
	poll "shutdown"
	poll "shutdown"

	sleep 2

	exec "/sbin/halt &"

	poll "power-test"
	poll "shutdown"
	poll "power-test"
	poll "shutdown"
	poll "power-test"
	poll "shutdown"
	poll "power-test"

	sleep 1000	# let us wait peacefully
}
