         // done with chip, so get ready for next reading
         channels[i].ready_next(); // Re-arm for next measurement, clear TDC INTB
       
-        channels[i].ts = (channels[i].PICstop * (uint64_t)PICTICK_PS) - channels[i].tof;
+        channels[i].ts = (channels[i].PICstop * PICTICK_PS) - channels[i].tof;
         
         if (channels[i].totalize++ > 1) {  // first few readings likely to be bogus
 //          print_unsigned_picos_as_seconds(PICcount);Serial.print(" ");

  }
  
  AVG_CYCLES = 0x00;  // 0x00 for 1 measurement cycle
  NUM_STOP = 0x00;    // SHOULD BE 0x00 for 1 stop but that doesn't work

  reg_byte = CALIBRATION2_PERIODS | AVG_CYCLES | NUM_STOP;
  write(CONFIG2, reg_byte);  

   
  PICcount = 0;
  pinMode(COARSEint, INPUT);
  pinMode(STOP_A, INPUT);
  pinMode(STOP_B, INPUT);
  pinMode(STOPAint, INPUT);
  pinMode(STOPBint, INPUT);
  
  enableInterrupt(COARSEint, coarseTimer, RISING);
  enableInterrupt(STOP_A, catch_stopA, RISING);
  enableInterrupt(STOP_B, catch_stopB, RISING);
  
//  attachInterrupt(digitalPinToInterrupt(COARSEint), coarseTimer, FALLING); // falling edge avoids timing issue
//  attachInterrupt(digitalPinToInterrupt(STOPAint), catch_stopA, RISING); 
