     }
     value = top = 0;
     memset(stack, 0, sizeof stack);
-  } else if (c > ' ')
+  } else if (c == '>') {
+    // special case, send to specific band and group, and don't echo cmd
+    // input: band,group,node,header,data...
+    stack[top++] = value;
+    rf12_initialize(stack[2], bandToFreq(stack[0]), stack[1]);
+    rf12_sendNow(stack[3], stack + 4, top - 4);
+    rf12_sendWait(2);
+    rf12_config(0); // restore original band, etc
+    value = top = 0;
+    memset(stack, 0, sizeof stack);
+  } else if (' ' < c && c < 'A')
     showHelp();
 }
 

    if (top < sizeof stack)
      stack[top++] = value;
    value = 0;
  } else if ('a' <= c && c <='z' || 'A' <= c && c <= 'Z') {
    Serial.print("> ");
    for (byte i = 0; i < top; ++i) {
      Serial.print((int) stack[i]);

  
  if (!rf12_config())
    Serial.println("config save failed");
}

static byte bandToFreq (byte band) {
  return band == 8 ? RF12_868MHZ : band == 9 ? RF12_915MHZ : RF12_433MHZ;
}

// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
