     return !cferror ;
     
 }
+
 
 void setup()
 {

           //
           if ( notsosmart_beacon ) {
              if ( position_changed ) {
                 update_beacon = UPDATE_BEACON_MOVING ; 
                 position_changed = false ;
                 lastpositionsent = false ;
              } else {
                 if (lastpositionsent) { 
                    update_beacon = UPDATE_BEACON_FIXED ;
                    lastpositionsent = false ;
                 } 
              } 
           } else { 
              // add this to make sure the location is sent first time thru the loop
              if (lastpositionsent) {
                 update_beacon = UPDATE_BEACON_FIXED ;
                 lastpositionsent = false ;
              }
           } 

            continue ;
        }


        if ( cmode ) { 
            continue ;
        }


        if ( c ==  '#'  || ccnt > 48 ) {
            cmode = true ;
            continue ;
        }


        if (pnmode) {
            // if the parameter number is not found, then punt and ignore the line
            if ( ccnt > 9 ) {
                cmode = true ;
                cferror = true ; 
                pnmode = false ;
