while [ true ]
 do
  GPGGAdata=`cat /dev/tts/1 | head -n 5 | grep GPGGA`
  [ $GPGGAdata ] && {
   GPGGAtime=`echo $GPGGAdata | cut -f2 -d ","`
   GPGGAlat=`echo $GPGGAdata | cut -f3 -d ","`
   GPGGAlatdir=`echo $GPGGAdata | cut -f4 -d ","`
   GPGGAlon=`echo $GPGGAdata | cut -f5 -d ","`
   GPGGAlondir=`echo $GPGGAdata | cut -f6 -d ","`
   GPGGAfix=`echo $GPGGAdata | cut -f7 -d ","`
   GPGGAsats=`echo $GPGGAdata | cut -f8 -d ","`
   GPGGAalt=`echo $GPGGAdata | cut -f10 -d ","`
   GPGGAaltunits=`echo $GPGGAdata | cut -f11 -d ","`
  }
  
  GPRMCdata=`cat /dev/tts/1 | head -n 4 | grep GPRMC`
  [ $GPRMCdata ] && {
   GPRMCspeed=`echo $GPRMCdata | cut -f8 -d ","`
   GPRMCcourse=`echo $GPRMCdata | cut -f9 -d ","`
  } 
  echo $GPGGAtime Lat:$GPGGAlat$GPGGAlatdir Lon:$GPGGAlon$GPGGAlondir Alt:$GPGGAalt$GPGGAaltunits Fix:$GPGGAfix Satellites:$GPGGAsats Speed:$GPRMCspeed Heading:$GPRMCcourse

 done