#!/bin/sh
#############################################################
# List 1-wire devices
#############################################################
path="${0%/*}"
. "$path/inc/gwhw.inc"

script="${0##*/}"

usage() {
	die 'gwhw 1w [CMD]'
}

CMD="${1:-list}"; shift
#############################################################
getval=false
case "${CMD}" in
	v*|V*) # CMD=values
		getval=true
	;;
	l*|L*) # CMD=list
		:
	;;
	*) usage
esac

ls -1 /sys/bus/w1/devices/ 2>/dev/null | awk '/^..-[0-9a-f]{12}$/' | \
while read addr; do
	val=
	info=
	if [ "${addr}" = "$(cat /usr/local/etc/telem/w1_internal 2>/dev/null)" ]; then
		info="(internal)"
	fi
	$getval && val="$(awk -F'=' '/ t/{print $2/1000}' "/sys/bus/w1/devices/${addr}/w1_slave" 2>/dev/null)"
	printf "%-16s %-8s %s\n" "${addr}" "${val}" "${info}"
done
