Hi,

I want to use standard BMAC CCA mechanism. i.e to take radio samples, and if
there are 5 samples with no outliers then Medium is Busy,
For transmit, take one sample if its below the current Noise floor then
medium is free.

I just need to know that how the cc2420 transiver get to know that its
receiving a valid byte ?
I mean, if i am using PacketIndicator, and EnergyIndicator for CCA, then
cc2420 chip is doing the CCA for us ?


Thanks
Obaid
PS: TinyOS2.x code for CCA ()

 task void getCca() {
    uint8_t detects = 0;
  .........

      atomic {
        for( ; ccaChecks < MAX_LPL_CCA_CHECKS && call SendState.isIdle();
ccaChecks++) {
          if(*call PacketIndicator.isReceiving(*)) {
            signal PowerCycle.detected();
            return;
          }

          if(*call EnergyIndicator.isReceiving()*) {
            detects++;
            if(detects > MIN_SAMPLES_BEFORE_DETECT) {
              signal PowerCycle.detected();
              return;
            }
            // Leave the radio on for upper layers to perform some
transaction
          }
        }
      }

    }
  }
_______________________________________________
Tinyos-help mailing list
[email protected]
https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help

Reply via email to