         PCMSK0 = RFM23B_INT_MASK;
         PCMSK2 = SERIALRX_INT_MASK;
     }
-
-
-
-    /****************************/
-    OTV0P2BASE::serialPrintAndFlush(F("scratchspace TX: "));
-    OTV0P2BASE::serialPrintAndFlush(((uint16_t) TX_WorkspaceSize));
-    OTV0P2BASE::serialPrintAndFlush(F(", RX: "));
-    OTV0P2BASE::serialPrintAndFlush(((uint16_t) RX_WorkspaceSize));
-    OTV0P2BASE::serialPrintlnAndFlush();
-    /****************************/
-
-
-
 
     PrimaryRadio.listen(true);
     // Do early 'wake-up' stats transmission if possible

static_assert(OTV0P2BASE::FullStatsMessageCore_MAX_BYTES_ON_WIRE <= STATS_MSG_MAX_LEN, "FullStatsMessageCore_MAX_BYTES_ON_WIRE too big");
static_assert(OTV0P2BASE::MSG_JSON_MAX_LENGTH+1 <= STATS_MSG_MAX_LEN, "MSG_JSON_MAX_LENGTH too big"); // Allow 1 for trailing CRC.

    // Allow space in buffer for:
    //   * buffer offset/preamble
    //   * max binary length, or max JSON length + 1 for CRC + 1 to allow detection of oversize message
    //   * terminating 0xff
    // Buffer need be no larger than leading length byte + typical 64-byte radio module TX buffer limit + optional terminator.
//    constexpr uint8_t MSG_BUF_SIZE = 1 + 64 + 1;

    // Allow space in workspace for:
    //   * Msg buffer
    //   *
    //   * Decode routine
//    constexpr uint8_t scratchSpaceNeededHere = MSG_BUF_SIZE;
//    constexpr size_t workspaceSize = OTRadioLink::SimpleSecureFrame32or0BodyTXBase::generateSecureOFrameRawForTX_total_scratch_usage_OTAESGCM_2p0 + scratchSpaceNeededHere;
    uint8_t workspace[TX_WorkspaceSize];
    OTV0P2BASE::ScratchSpaceL sW(workspace, sizeof(workspace));

    // Send binary *or* JSON on each attempt so as not to overwhelm the receiver.

static constexpr uint8_t RFM23B_INT_MASK = (1 << (PIN_RFM_NIRQ&7));
// Mask for Port D input change interrupts.
static constexpr uint8_t SERIALRX_INT_MASK = (1 << 0); // Serial RX

//========================================
// LOCAL FUNCTIONS
