#!/bin/sh
PORT=$1
BAUD=$2
PROG=$3
while [ -z "$(pgrep ${PROG})" ]; do
    sleep 0.5
done
stty -F ${PORT} ${BAUD} raw -echo
while true; do
    NMEA="$(grep -m 1 '\$PLWRTEST,109,*\***' ${PORT})"
    case "${NMEA}" in
    *'$PLWRTEST,109,0*07'*)
        echo -e '$PLWRTEST,109,0*07\r\n' > ${PORT}
        MODE=0
        break
        ;;
    *'$PLWRTEST,109,1*06'*)
        echo -e '$PLWRTEST,109,1*06\r\n' > ${PORT}
        MODE=19
        break
        ;;
    *'$PLWRTEST,109,2*05'*)
        echo -e '$PLWRTEST,109,2*05\r\n' > ${PORT}
        MODE=18
        break
        ;;
    *'$PLWRTEST,109,SIGTERM*64'*)
        echo -e '$PLWRTEST,109,SIGTERM*64\r\n' > ${PORT}
        MODE=143
        break
        ;;
    esac
done

while [ -n "$(pgrep ${PROG})" ]; do
    pkill ${PROG}
    sleep 0.5
done

exit ${MODE}
