 
   switch ( operation_mode ) {
     
-    case 0: rxRequestFrequencyAndMode(Icom706, frequency, mode);
-            break;
-
-    case 1: rxSetFrequency(Icom706, frequency, mode);  // set right frequency
-            break;
-
-    case 2: rxSetMode(Icom706, frequency, mode);  // set right mode
-            break;
-
-    default: ;
+    case 0: 
+      rxRequestFrequencyAndMode(Icom706, frequency, mode);
+      break;
+
+    case 1: 
+      rxSetFrequency(Icom706, frequency, mode);  // set right frequency
+      break;
+
+    case 2: 
+      rxSetMode(Icom706, frequency, mode);  // set right mode
+      break;
+
+    case 3: 
+      if ( (millis() - rx_init) > 5000 ) {
+        rxRequestFrequencyAndMode(Icom706, frequency, mode);
+        rx_init = millis();
+      }
+      break;
+
+    default:
+      ;
   }
 
 #if defined (__AVR__)

void loop() {

  static unsigned long loop_init = millis();
  
  byte mode = Icom706.getMode();
  uint32_t frequency = Icom706.getFrequency();

    }
    
  } // rxSerial.available()

  // display of frequency and mode from time to time
  if ( millis() - loop_init > 2000 ) {
