working version

Dependencies:   mbed mbed-rtos SimpleDMA FreescaleIAP eeprom

Fork of CDMS_CODE_FM_28JAN2017 by samp Srinivasan

Revision:
356:197c93dc2012
Parent:
353:e1803e801e20
--- a/COM_POWER_ON_TX.h	Tue Mar 28 08:50:07 2017 +0000
+++ b/COM_POWER_ON_TX.h	Sat Feb 10 09:06:26 2018 +0000
@@ -116,10 +116,23 @@
     if( !(gFLAGS & COM_TX_FLAG) ){
         gFLAGS = gFLAGS | COM_TX_FLAG;
         //gPC.puts("Inside COM_TX_FLAG\r\n");
-        gFLAGS = gFLAGS | BAE_SW_EN_FLAG ;
+        if ((BAE_STATUS & 0x03) == 1)
+        {
+            gFLAGS = gFLAGS | BAE_SW_EN_FLAG ;
+        }
         if( gFLAGS & BAE_SW_EN_FLAG ){
             /*WARNING: INFINITE WHILE LOOP POSSIBLE: if standby ack received and bcn tx main status = 0*/
             bool retryFlag = true;
+            pdir_ss1=PTE->PDIR;
+            i2c_count_cdms_bae = 0;
+            gPC.printf("\npdir %d\n",pdir_ss1); 
+            while(((pdir_ss1 & 0x03000000)!=0x03000000)&& i2c_count_cdms_bae<30)   //SDA and SCL are high - bus idle
+            {
+                wait_us(10000);
+                pdir_ss1=PTE->PDIR;
+                i2c_count_cdms_bae++;
+                gPC.printf("waiting for i2c to clear\n"); 
+            }
             while( retryFlag == true ){
                 Base_tm *tm_ptr = NULL;
                 gPC.puts("setting Bcn off\r\n");
@@ -146,7 +159,7 @@
                 else{
                     gPC.puts("not A0\r\n");
                     SW_RST_BAE();
-                    wait_ms(100);
+                    wait_ms(2000);
                     Base_tm *tm_ptr2 = NULL;
                     gPC.puts("settin bcn off\r\n");
                     SET_BCN_STANDBY(tm_ptr2);
@@ -213,6 +226,7 @@
         }
         else{
             gPC.puts("RF_SW_CNTRL_TX\r\n");
+            gPC.printf("You so cool Man");
             RF_SW_CNTRL_TX = 1;
             Thread::wait(25);
             RF_SW_CNTRL_TX = 0;
@@ -253,8 +267,8 @@
         }
         get_tc_list(power_on_tm->next_TM, 0x00);
         /*Call Sign, ACK_L1, TC_LIST*/
-        /*snd_tm.head_pointer(power_on_tm_head);*/
-        /*transmit_adf();*/
+        snd_tm.head_pointer(power_on_tm_head);
+        transmit_adf();
         uint8_t transmissionPass = 0xFF;
         /*PENDING: get acknowledgement of transmission*/
         /*deleting the telemetry*/