Listing 1. The Feeder PBASIC Code '{$STAMP BS2} cmd VAR Byte temp VAR Word LineSnsrPwr CON 10 LineSnsrIn CON 9 Sense VAR Word SStart VAR Word main: DEBUG "Waiting for Command", CR SERIN 7, 84, [cmd] DEBUG "Received Command: ", cmd, CR IF cmd = "B" THEN feed GOTO main feed: DEBUG "Feed the kitty!", CR HIGH LineSnsrPwr ' activate sensor HIGH LineSnsrIn ' discharge QTI cap PAUSE 1 RCTIME LineSnsrIn, 1, SStart DEBUG "First Reading: ", DEC SStart, CR GOTO sensor feed2: IF Sense < (SStart - 200) THEN pastfirst IF Sense > (SStart + 200) THEN stopfeed FOR temp = 1 TO 100 PULSOUT 0,600 GOTO sensor sensor: HIGH LineSnsrPwr ' activate sensor HIGH LineSnsrIn ' discharge QTI cap PAUSE 1 RCTIME LineSnsrIn, 1, Sense GOTO feed2 pastfirst: DEBUG "Past First!", CR SStart = Sense GOTO sensor stopfeed: DEBUG DEC Sense, CR GOTO main