Message is send twice



  • Hi all,
    I'm trying to detect when my generator runs, the external detection circuit works with no problems, but when the ProMini starts, it sends the message twice to the controller, although there was not a state change, see me code below

    void loop() {
       bool tripped = digitalRead(GENERATOR_PIN) == HIGH;
      wait(1000);
      if (tripped == 0) {
        wait(5000);
        Serial.println("Generator RUNNING");
        send(msgGENERATOR.set(1));
        sleep(digitalPinToInterrupt(GENERATOR_PIN), CHANGE, SLEEP_TIME);
        //send(msgGENERATOR.set(tripped?"1":"0"));
      }
      if (tripped == 1) {
        Serial.println("Generator NOT running - Not sending");
        wait(5000);
          bool tripped = digitalRead(GENERATOR_PIN) == HIGH;
          if (tripped == 1) {
            Serial.println("Generator NOT running - SENDING....");
            send(msgGENERATOR.set(0));
            sleep(digitalPinToInterrupt(GENERATOR_PIN), CHANGE, SLEEP_TIME);
          }
      }  
    }  
    

    The serial port output demonstrate the problem, I'm checking twice if the generator is running, but it does not seem to break out of the loop, any help please!!

    0 MCO:BGN:INIT NODE,CP=RRNNA--,VER=2.1.1
    4 TSM:INIT
    4 TSF:WUR:MS=0
    8 TSM:INIT:TSP OK
    10 TSM:INIT:STATID=11
    12 TSF:SID:OK,ID=11
    14 TSM:FPAR
    145 TSF:MSG:SEND,11-11-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK:
    587 TSF:MSG:READ,0-0-11,s=255,c=3,t=8,pt=1,l=1,sg=0:0
    593 TSF:MSG:FPAR OK,ID=0,D=1
    2152 TSM:FPAR:OK
    2152 TSM:ID
    2154 TSM:ID:OK
    2156 TSM:UPL
    2164 TSF:MSG:SEND,11-11-0-0,s=255,c=3,t=24,pt=1,l=1,sg=0,ft=0,st=OK:1
    2215 TSF:MSG:READ,0-0-11,s=255,c=3,t=25,pt=1,l=1,sg=0:1
    2222 TSF:MSG:PONG RECV,HP=1
    2224 TSM:UPL:OK
    2226 TSM:READY:ID=11,PAR=0,DIS=1
    2238 TSF:MSG:SEND,11-11-0-0,s=255,c=3,t=15,pt=6,l=2,sg=0,ft=0,st=OK:0100
    2289 TSF:MSG:READ,0-0-11,s=255,c=3,t=15,pt=6,l=2,sg=0:0100
    2304 TSF:MSG:SEND,11-11-0-0,s=255,c=0,t=17,pt=0,l=5,sg=0,ft=0,st=OK:2.1.1
    2320 TSF:MSG:SEND,11-11-0-0,s=255,c=3,t=6,pt=1,l=1,sg=0,ft=0,st=OK:0
    4335 TSF:MSG:SEND,11-11-0-0,s=6,c=0,t=3,pt=0,l=0,sg=0,ft=0,st=OK:
    4349 TSF:MSG:SEND,11-11-0-0,s=7,c=0,t=30,pt=0,l=0,sg=0,ft=0,st=OK:
    4358 MCO:REG:REQ
    4368 TSF:MSG:SEND,11-11-0-0,s=255,c=3,t=26,pt=1,l=1,sg=0,ft=0,st=OK:2
    4417 TSF:MSG:READ,0-0-11,s=255,c=3,t=27,pt=1,l=1,sg=0:1
    4423 MCO:PIM:NODE REG=1
    4427 MCO:BGN:STP
    5427 MCO:BGN:INIT OK,TSP=1
    Generator NOT running - Not sending
    Generator NOT running - SENDING....
    11440 TSF:MSG:SEND,11-11-0-0,s=6,c=1,t=2,pt=2,l=2,sg=0,ft=0,st=OK:0
    11446 MCO:SLP:MS=3600000,SMS=0,I1=1,M1=2,I2=255,M2=255
    11452 MCO:SLP:TPD
    11454 MCO:SLP:WUP=1
    Generator NOT running - Not sending
    Generator NOT running - SENDING....
    17469 TSF:MSG:SEND,11-11-0-0,s=6,c=1,t=2,pt=2,l=2,sg=0,ft=0,st=OK:0
    17475 MCO:SLP:MS=3600000,SMS=0,I1=1,M1=2,I2=255,M2=255
    17481 MCO:SLP:TPD
    
    

  • Mod

    Try adding some more debug prints of variables on serial an try to understand why it loops twice



  • From your log i can see that your node goes to sleep, and immediately wakes up again.
    I don't know the value of your SLEEP_TIME, but i guess it's not a value close to 0.
    It looks like your sleep() cycle is interrupted by a change on your GENERATOR_PIN.
    What if you inserted a short pause just before going to sleep, just after send(msgGENERATOR)?

    Another way to handle interrupts:
    Your code uses an interrupt to detect changes of the generator status, but you handle possible changes outside the interrupt-handler (the code that is executed whenever there was a change on the pin). Your sleep function can exit in two ways: by interrupt OR by the SLEEP_TIME expiring. Your code does the same in both cases. Even if there was no change on the pin, but the timer expired, a message will be send.
    If you only want to send a message when there was actually a change of signal on the pin, i would use an interrupt-handler that detects any change, and let the loop() code know about it.

    volatile bool generator_pin_changed = false;
    volatile int generator_pin_value;
    void generator_pin_interrupt_handler() {
      generator_pin_changed = true;
      generator_pin_value = digitalRead(GENERATOR_PIN);
    }
    
    void setup() {
      attachInterrupt(digitalPinToInterrupt(GENERATOR_PIN), generator_pin_interrupt_handler, CHANGE);
    }
    
    void loop() {
      if (generator_pin_changed) {
        generator_pin_changed = false;  /* reset for next detection */
        if (generator_pin_value == LOW) {
          Serial.println("Generator RUNNING");
          send(msgGENERATOR.set(1));
        } else {
          Serial.println("Generator NOT running - SENDING....");
          send(msgGENERATOR.set(0));
        }
      }
      wait(200);
      /* sleep again if the timer expired. stop sleeping if woken up by an interrupt. */
      while (sleep(digitalPinToInterrupt(GENERATOR_PIN), CHANGE, SLEEP_TIME) < 0);
    }
    


  • @core_c Thanks so much, this did the trick, thanks again!!!



  • @core_c I spoke to soon, looks like it detects the change, but does not do anything, I made the unsigned long SLEEP_TIME = 0;

    0 MCO:BGN:INIT NODE,CP=RRNNA--,VER=2.1.1
    4 TSM:INIT
    4 TSF:WUR:MS=0
    8 TSM:INIT:TSP OK
    10 TSM:INIT:STATID=11
    12 TSF:SID:OK,ID=11
    14 TSM:FPAR
    145 TSF:MSG:SEND,11-11-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK:
    405 TSF:MSG:READ,0-0-11,s=255,c=3,t=8,pt=1,l=1,sg=0:0
    411 TSF:MSG:FPAR OK,ID=0,D=1
    2152 TSM:FPAR:OK
    2152 TSM:ID
    2154 TSM:ID:OK
    2156 TSM:UPL
    2164 TSF:MSG:SEND,11-11-0-0,s=255,c=3,t=24,pt=1,l=1,sg=0,ft=0,st=OK:1
    2215 TSF:MSG:READ,0-0-11,s=255,c=3,t=25,pt=1,l=1,sg=0:1
    2222 TSF:MSG:PONG RECV,HP=1
    2224 TSM:UPL:OK
    2226 TSM:READY:ID=11,PAR=0,DIS=1
    2238 TSF:MSG:SEND,11-11-0-0,s=255,c=3,t=15,pt=6,l=2,sg=0,ft=0,st=OK:0100
    2289 TSF:MSG:READ,0-0-11,s=255,c=3,t=15,pt=6,l=2,sg=0:0100
    2304 TSF:MSG:SEND,11-11-0-0,s=255,c=0,t=17,pt=0,l=5,sg=0,ft=0,st=OK:2.1.1
    2320 TSF:MSG:SEND,11-11-0-0,s=255,c=3,t=6,pt=1,l=1,sg=0,ft=0,st=OK:0
    4335 TSF:MSG:SEND,11-11-0-0,s=6,c=0,t=3,pt=0,l=0,sg=0,ft=0,st=OK:
    4349 TSF:MSG:SEND,11-11-0-0,s=7,c=0,t=30,pt=0,l=0,sg=0,ft=0,st=OK:
    4358 MCO:REG:REQ
    4368 TSF:MSG:SEND,11-11-0-0,s=255,c=3,t=26,pt=1,l=1,sg=0,ft=0,st=OK:2
    4417 TSF:MSG:READ,0-0-11,s=255,c=3,t=27,pt=1,l=1,sg=0:1
    4423 MCO:PIM:NODE REG=1
    4427 MCO:BGN:STP
    interupt
    1
    5429 MCO:BGN:INIT OK,TSP=1
    1
    Generator NOT running - SENDING....
    5441 TSF:MSG:SEND,11-11-0-0,s=6,c=1,t=2,pt=2,l=2,sg=0,ft=0,st=OK:0
    5648 MCO:SLP:MS=0,SMS=0,I1=1,M1=1,I2=255,M2=255
    5652 MCO:SLP:TPD
    5654 MCO:SLP:WUP=1
    5857 MCO:SLP:MS=0,SMS=0,I1=1,M1=1,I2=255,M2=255
    5861 MCO:SLP:TPD
    5863 MCO:SLP:WUP=1
    6066 MCO:SLP:MS=0,SMS=0,I1=1,M1=1,I2=255,M2=255
    6070 MCO:SLP:TPD
    

  • Mod

    Why sleep time = 0?



  • @esawyja I don't really know what your goal is, but is it correct to send a 1 if the generator is running, and to send a 0 when it's not running?
    It seems more logical to send a 1 to enable a device, and 0 to disable it.

    Could it be that you disable the generator, and it simply is not responding anymore?



  • @core_c Hi

    Does it really matter, it's just the way the external circuitry is set up, it pulls to a low when the generator is running, I get get it working with this below, but I'm afraid my coding skills are not that good

    void loop() {
       bool tripped = digitalRead(GENERATOR_PIN) == HIGH;
       Serial.print("value of tripped = ");
       Serial.println(tripped);
       wait(1000);
       if ((tripped == 0) && ( tripped != oldValue)) {
          Serial.println("Generator RUNNING - Not sending");
          wait(1000);
          bool tripped = digitalRead(GENERATOR_PIN) == HIGH;
          if (tripped == 0) {
            Serial.println("Generator RUNNING - SENDING");
            send(msgGENERATOR.set(1));
            wait(10000);
            send(msgGENERATOR.set(1));
            oldValue = tripped;
            read_batt();
          }
        }
      
      if ((tripped == 1) && ( tripped != oldValue)) {
        Serial.println("Generator NOT running - Not sending");
        wait(1000);
        bool tripped = digitalRead(GENERATOR_PIN) == HIGH;
        if (tripped == 1) {
            Serial.println("Generator NOT running - SENDING....");
            send(msgGENERATOR.set(0));
            wait(10000);
            send(msgGENERATOR.set(0));
            oldValue = tripped;
            read_batt();
        }
      }  
    sleep(digitalPinToInterrupt(GENERATOR_PIN), CHANGE, SLEEP_TIME);    
    }  
      
    void read_batt() {
      wait(15000);
      int sensorValue = analogRead(BATTERY_SENSE_PIN);
      float batteryV = sensorValue * volt_value;
      send(batt_msg.set(batteryV,2));
      return;  
    }
    


  • @esawyja No, it does not matter if it's active low or active high. I was only thinking that it could be an oversight.. something wrong in code that someone (possibly) keeps missing because they are assuming that that part of the code is correct.

    About what you said previously: "looks like it detects the change, but does not do anything":
    Correct me if i'm wrong, but this looks like it detects, and does something:

    interupt
    1
    5429 MCO:BGN:INIT OK,TSP=1
    1
    Generator NOT running - SENDING....
    5441 TSF:MSG:SEND,11-11-0-0,s=6,c=1,t=2,pt=2,l=2,sg=0,ft=0,st=OK:0
    

    After that, when the generator did not change state anymore, you will see a stream of only sleep/wake-up messages (a stream, because sleeptime is 0). I see that stream start at 5648.

    In your current program, i'm curious if that second send() is really needed (the last send in the "send,wait(10000),send" sequence).
    But anyway, your skills got it working.. ✔



  • @core_c thanks, just a bit worried about my programming skills, yes the reason for the double send is that sometimes I get st=NACK and I'm worried about missing the start , stop message, hence I send the message twice, I don't know how to detect the st=NACK, thanks for the help


  • Hero Member

    @esawyja send will return a boolean result which you can use to determine if the message was successful. For an example have a look at this post



  • @Boots33 Thanks so much, I'll have a look



  • @esawyja In your last program, your battery level is only send when the generator changed state.
    Probably you want to let the battery report it's level at regular intervals, independent of the generator state.
    Boots33 pointed out how to know if a message has been sent succesfully.
    Here is a version of your sketch that does both things:

    #define RETRY_TIMES 3
    #define RETRY_WAIT 10000
    #define BATTERY_REPORT_INTERVAL 60000
    
    int oldValue;
    uint32_t battery_report_time;
    
    volatile bool generator_pin_changed = false;
    volatile int generator_pin_value;
    void generator_pin_interrupt_handler() {
      generator_pin_changed = true;
      generator_pin_value = digitalRead(GENERATOR_PIN);
    }
    
    void setup() {
      oldValue = digitalRead(GENERATOR_PIN);
      sendGeneratorMsg(oldValue==HIGH?0:1);
      battery_report_time = millis() + BATTERY_REPORT_INTERVAL;
      attachInterrupt(digitalPinToInterrupt(GENERATOR_PIN), generator_pin_interrupt_handler, CHANGE);
    }
    
    void loop() {
      int value = digitalRead(GENERATOR_PIN);
      if (value != oldValue) {
        oldValue = value;
        if (value == LOW) {
          Serial.println("Generator RUNNING - SENDING");
          sendGeneratorMsg(1);
        } else {
          Serial.println("Generator NOT running - SENDING....");
          sendGeneratorMsg(0);
        }
      }
      long sleep_time_left = battery_report_time - millis();
      if (sleep_time_left < 0) {
        battery_report_time = millis() + BATTERY_REPORT_INTERVAL;
        sleep_time_left = BATTERY_REPORT_INTERVAL;
        read_batt();
      }
      sleep(digitalPinToInterrupt(GENERATOR_PIN), CHANGE, sleep_time_left);    
    }  
    
    void sendGeneratorMsg(int state) {
      for (int i=0; i<RETRY_TIMES; i++) {
        if (send(msgGENERATOR.set(state))) {
          Serial.println("Generator message sent");
          return;
        }
        wait(RETRY_WAIT);
      }
      Serial.println("Failed to send generator message");
    }
    
    void read_batt() {
      wait(15000);
      int sensorValue = analogRead(BATTERY_SENSE_PIN);
      float batteryV = sensorValue * volt_value;
      send(batt_msg.set(batteryV,2));
    }
    

    EDIT: I have changed ^^the code^^ with the suggestions i made in my next post.



  • @core_c thanks so much, I will try it ASAP and provide feedback, thanks again!



  • @core_c This works a treat, but I don't get the battery readings, if I look at the debug log, the MS seems to become quite large

    71362 MCO:SLP:MS=9681,SMS=0,I1=1,M1=1,I2=255,M2=255
    71366 MCO:SLP:TPD
    71370 MCO:SLP:WUP=-1
    71372 MCO:SLP:MS=9671,SMS=0,I1=1,M1=1,I2=255,M2=255
    71378 MCO:SLP:TPD
    71380 MCO:SLP:WUP=1
    71383 MCO:SLP:MS=9660,SMS=0,I1=1,M1=1,I2=255,M2=255
    71389 MCO:SLP:TPD
    71391 MCO:SLP:WUP=1
    Generator RUNNING - SENDING 
    71401 TSF:MSG:SEND,11-11-0-0,s=6,c=1,t=2,pt=2,l=2,sg=0,ft=0,st=OK:1
    Generator message sent
    81424 MCO:SLP:MS=4294966915,SMS=0,I1=1,M1=1,I2=255,M2=255
    81430 MCO:SLP:TPD
    81432 MCO:SLP:WUP=1
    81434 MCO:SLP:MS=4294966905,SMS=0,I1=1,M1=1,I2=255,M2=255
    81440 MCO:SLP:TPD
    81444 MCO:SLP:WUP=1
    Generator NOT running - SENDING...
    81498 TSF:MSG:SEND,11-11-0-0,s=6,c=1,t=2,pt=2,l=2,sg=0,ft=0,st=OK:0
    Generator message sent
    91521 MCO:SLP:MS=4294956818,SMS=0,I1=1,M1=1,I2=255,M2=255
    91527 MCO:SLP:TPD
    

    Any suggestions please?



  • @core_c Sorry me again, here I made
    #define BATTERY_REPORT_INTERVAL 2000
    and printed the value

    battery_report_time = millis() + BATTERY_REPORT_INTERVAL;
    Serial.print("Battery report time is = ");
    Serial.println(battery_report_time);

    It looks like the sleep uses the time left over, as it prints faster and faster on the serial port and then the MS value just increases 10 fold

    21035 TSF:MSG:SEND,11-11-0-0,s=6,c=1,t=2,pt=2,l=2,sg=0,ft=0,st=OK:0
    Battery report time is = 23043
    21043 MCO:BGN:INIT OK,TSP=1
    21049 MCO:SLP:MS=1994,SMS=0,I1=1,M1=1,I2=255,M2=255
    21053 MCO:SLP:TPD
    21057 MCO:SLP:WUP=1
    21059 MCO:SLP:MS=1984,SMS=0,I1=1,M1=1,I2=255,M2=255
    21065 MCO:SLP:TPD
    21067 MCO:SLP:WUP=-1
    21069 MCO:SLP:MS=1974,SMS=0,I1=1,M1=1,I2=255,M2=255
    21075 MCO:SLP:TPD
    21078 MCO:SLP:WUP=-1
    21080 MCO:SLP:MS=1963,SMS=0,I1=1,M1=1,I2=255,M2=255
    21086 MCO:SLP:TPD
    21088 MCO:SLP:WUP=-1
    21092 MCO:SLP:MS=1951,SMS=0,I1=1,M1=1,I2=255,M2=255
    21096 MCO:SLP:TPD
    21100 MCO:SLP:WUP=-1
    ......
    ......
    22878 MCO:SLP:MS=165,SMS=0,I1=1,M1=1,I2=255,M2=255
    22882 MCO:SLP:TPD
    22884 MCO:SLP:WUP=-1
    22888 MCO:SLP:MS=155,SMS=0,I1=1,M1=1,I2=255,M2=255
    22892 MCO:SLP:TPD
    22896 MCO:SLP:WUP=-1
    22898 MCO:SLP:MS=145,SMS=0,I1=1,M1=1,I2=255,M2=255
    22904 MCO:SLP:TPD
    22906 MCO:SLP:WUP=-1
    22908 MCO:SLP:MS=135,SMS=0,I1=1,M1=1,I2=255,M2=255
    22915 MCO:SLP:TPD
    22917 MCO:SLP:WUP=-1
    22919 MCO:SLP:MS=124,SMS=0,I1=1,M1=1,I2=255,M2=255
    22925 MCO:SLP:TPD
    22927 MCO:SLP:WUP=-1
    22931 MCO:SLP:MS=112,SMS=0,I1=1,M1=1,I2=255,M2=255
    22935 MCO:SLP:TPD
    22937 MCO:SLP:WUP=-1
    22941 MCO:SLP:MS=102,SMS=0,I1=1,M1=1,I2=255,M2=255
    22945 MCO:SLP:TPD
    22947 MCO:SLP:WUP=-1
    22951 MCO:SLP:MS=92,SMS=0,I1=1,M1=1,I2=255,M2=255
    22958 MCO:SLP:TPD
    22960 MCO:SLP:WUP=-1
    22962 MCO:SLP:MS=81,SMS=0,I1=1,M1=1,I2=255,M2=255
    22968 MCO:SLP:TPD
    22970 MCO:SLP:WUP=-1
    22972 MCO:SLP:MS=71,SMS=0,I1=1,M1=1,I2=255,M2=255
    22978 MCO:SLP:TPD
    22980 MCO:SLP:WUP=-1
    22982 MCO:SLP:MS=61,SMS=0,I1=1,M1=1,I2=255,M2=255
    22988 MCO:SLP:TPD
    22990 MCO:SLP:WUP=-1
    22992 MCO:SLP:MS=51,SMS=0,I1=1,M1=1,I2=255,M2=255
    22999 MCO:SLP:TPD
    23001 MCO:SLP:WUP=-1
    23005 MCO:SLP:MS=38,SMS=0,I1=1,M1=1,I2=255,M2=255
    23009 MCO:SLP:TPD
    23011 MCO:SLP:WUP=-1
    23015 MCO:SLP:MS=28,SMS=0,I1=1,M1=1,I2=255,M2=255
    23019 MCO:SLP:TPD
    23021 MCO:SLP:WUP=-1
    23025 MCO:SLP:MS=18,SMS=0,I1=1,M1=1,I2=255,M2=255
    23029 MCO:SLP:TPD
    23031 MCO:SLP:WUP=-1
    23035 MCO:SLP:MS=8,SMS=0,I1=1,M1=1,I2=255,M2=255
    23040 MCO:SLP:TPD
    23044 MCO:SLP:WUP=-1
    23046 MCO:SLP:MS=4294967293,SMS=0,I1=1,M1=1,I2=255,M2=255
    23052 MCO:SLP:TPD
    

    After this, there is nothing more on the serial port



  • @esawyja You are right. I made a mistake. This should fix it:
    Change this line:

    uint32_t sleep_time_left = battery_report_time - millis();
    

    into this:

    long sleep_time_left = battery_report_time - millis();
    

    A variable of type long can hold a negative number, but an unsigned long (same as uint32_t) can never hold a negative number (because it is unsigned, no sign, no minus sign, no negative).
    So, if (sleep_time_left < 0) will never be true.. That was the mistake.

    I was also wondering if the generator would produce interrupts without using attachInterrupt().
    Without that, you can still poll the generator pin, and see if the value changed (what is happening now), but the sleep() cycle would not be interrupted when the pin changed.
    To be on the safe side, i would also add the following to your code:

    void setup() {
      attachInterrupt(digitalPinToInterrupt(GENERATOR_PIN), generator_pin_interrupt_handler, CHANGE);
    }
    

    Hopefully that'll make it work as intended.



  • @core_c Thanks for that
    I had to change the battery reading routine to this below, else when it gets to the routine, it stays there and never get back to the loop, I hope it makes sense

    void read_batt() {
      wait(15000);
      int sensorValue = analogRead(BATTERY_SENSE_PIN);
      float batteryV = sensorValue * volt_value;
      send(batt_msg.set(batteryV,2));
      long sleep_time_left = battery_report_time - millis();
      battery_report_time = millis() + BATTERY_REPORT_INTERVAL;
      sleep_time_left = BATTERY_REPORT_INTERVAL;
      return;
    }
    

    If I add this to setup, I get the following error

      battery_report_time = millis() + BATTERY_REPORT_INTERVAL;
      Serial.print("Battery report time is = ");
      Serial.println(battery_report_time);
     attachInterrupt(digitalPinToInterrupt(GENERATOR_PIN), generator_pin_interrupt_handler, CHANGE);  
    }
    
    
    gen_run_sketch:54: error: 'generator_pin_interrupt_handler' was not declared in this scope
    
      attachInterrupt(digitalPinToInterrupt(GENERATOR_PIN), generator_pin_interrupt_handler, CHANGE);  
    
                                                            ^
    
    exit status 1
    'generator_pin_interrupt_handler' was not declared in this scope
    


  • @esawyja attachInterrupt() should only be done once, in the setup() function.



  • @core_c I'm sorry I do not understand, must I replace this in loop

    sleep(digitalPinToInterrupt(GENERATOR_PIN), CHANGE, sleep_time_left);  
    

    With this in setup?

    attachInterrupt(digitalPinToInterrupt(GENERATOR_PIN), generator_pin_interrupt_handler, CHANGE);
    

    Sorry for all the questions!! This is sooo confusing to me, it also seems that the battery level is not sending, I left it running for 12 hours plus and never got a reading, the line
    #define BATTERY_REPORT_INTERVAL 60000
    Does this define that the battery level must be send ever 60000 milli seconds?


  • Mod

    If it is a battery powered node you need to use the sleep function to put the node into low power mode.



  • @esawyja i made the changes for you in my post made earlier^^



  • @core_c Thanks so much, I will try these changes!



  • About your battery level send question, here's some explanation:
    The intention is to let your node sleep when nothing happens.
    Only when the generator pin changes, it interrupts the sleep cycle, and wakes up the node. It then checks the current generator pin state and sends the appropriate message. Then it goes to sleep again.
    However, it does not sleep forever. At regular intervals the battery level is send. So every BATTERY_REPORT_INTERVAL milliseconds the current sleep cycle ends (because the timer has counted down and reached its end), and the battery level is send.
    The program keeps doing this: Sleep, and wake up if the pin changed, and/or wake up when the battery level should be send.



  • @core_c Thanks, I will try all the changes, thanks again for the code!!



  • @core_c I'm still having problems with this, the generator running or not works a treat, but if I just reboot the node and leave it, it goes through the sleep from what I can see, but then nothing happens after that, it does not send the battery level, it just hangs. Also the #define BATTERY_REPORT_INTERVAL 3000 does not work correctly, I've set it to 3000 as a test and it definitely took longer than 3000 MS, the complete serial log is pasted below, I did not trigger the generator during this period

    0 MCO:BGN:INIT NODE,CP=RRNNA--,VER=2.1.1
    4 TSM:INIT
    4 TSF:WUR:MS=1000
    8 TSM:INIT:TSP OK
    10 TSM:INIT:STATID=11
    12 TSF:SID:OK,ID=11
    14 TSM:FPAR
    145 TSF:MSG:SEND,11-11-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK:
    395 TSF:MSG:READ,0-0-11,s=255,c=3,t=8,pt=1,l=1,sg=0:0
    401 TSF:MSG:FPAR OK,ID=0,D=1
    1007 MCO:BGN:STP
    1007 !MCO:SND:NODE NOT REG
    2152 TSM:FPAR:OK
    2152 TSM:ID
    2154 TSM:ID:OK
    2156 TSM:UPL
    2164 TSF:MSG:SEND,11-11-0-0,s=255,c=3,t=24,pt=1,l=1,sg=0,ft=0,st=OK:1
    2215 TSF:MSG:READ,0-0-11,s=255,c=3,t=25,pt=1,l=1,sg=0:1
    2222 TSF:MSG:PONG RECV,HP=1
    2224 TSM:UPL:OK
    2226 TSM:READY:ID=11,PAR=0,DIS=1
    2238 TSF:MSG:SEND,11-11-0-0,s=255,c=3,t=15,pt=6,l=2,sg=0,ft=0,st=OK:0100
    2289 TSF:MSG:READ,0-0-11,s=255,c=3,t=15,pt=6,l=2,sg=0:0100
    2304 TSF:MSG:SEND,11-11-0-0,s=255,c=0,t=17,pt=0,l=5,sg=0,ft=0,st=OK:2.1.1
    2320 TSF:MSG:SEND,11-11-0-0,s=255,c=3,t=6,pt=1,l=1,sg=0,ft=0,st=OK:0
    4327 MCO:REG:REQ
    4335 TSF:MSG:SEND,11-11-0-0,s=255,c=3,t=26,pt=1,l=1,sg=0,ft=0,st=OK:2
    4386 TSF:MSG:READ,0-0-11,s=255,c=3,t=27,pt=1,l=1,sg=0:1
    4392 MCO:PIM:NODE REG=1
    11018 TSF:MSG:SEND,11-11-0-0,s=6,c=1,t=2,pt=2,l=2,sg=0,ft=0,st=OK:0
    Generator message sent
    11026 MCO:BGN:INIT OK,TSP=1
    11030 MCO:SLP:MS=2996,SMS=0,I1=1,M1=1,I2=255,M2=255
    11036 MCO:SLP:TPD
    11038 MCO:SLP:WUP=-1
    11042 MCO:SLP:MS=2984,SMS=0,I1=1,M1=1,I2=255,M2=255
    11046 MCO:SLP:TPD
    11051 MCO:SLP:WUP=-1
    11053 MCO:SLP:MS=2973,SMS=0,I1=1,M1=1,I2=255,M2=255
    11059 MCO:SLP:TPD
    11061 MCO:SLP:WUP=-1
    11063 MCO:SLP:MS=2963,SMS=0,I1=1,M1=1,I2=255,M2=255
    11069 MCO:SLP:TPD
    11071 MCO:SLP:WUP=-1
    11073 MCO:SLP:MS=2953,SMS=0,I1=1,M1=1,I2=255,M2=255
    11079 MCO:SLP:TPD
    11081 MCO:SLP:WUP=-1
    11085 MCO:SLP:MS=2941,SMS=0,I1=1,M1=1,I2=255,M2=255
    11089 MCO:SLP:TPD
    11094 MCO:SLP:WUP=-1
    11096 MCO:SLP:MS=2930,SMS=0,I1=1,M1=1,I2=255,M2=255
    11102 MCO:SLP:TPD
    11104 MCO:SLP:WUP=-1
    11106 MCO:SLP:MS=2920,SMS=0,I1=1,M1=1,I2=255,M2=255
    11112 MCO:SLP:TPD
    11114 MCO:SLP:WUP=-1
    11118 MCO:SLP:MS=2908,SMS=0,I1=1,M1=1,I2=255,M2=255
    11122 MCO:SLP:TPD
    11124 MCO:SLP:WUP=-1
    11128 MCO:SLP:MS=2898,SMS=0,I1=1,M1=1,I2=255,M2=255
    11134 MCO:SLP:TPD
    11137 MCO:SLP:WUP=-1
    11139 MCO:SLP:MS=2887,SMS=0,I1=1,M1=1,I2=255,M2=255
    11145 MCO:SLP:TPD
    11147 MCO:SLP:WUP=-1
    11149 MCO:SLP:MS=2877,SMS=0,I1=1,M1=1,I2=255,M2=255
    11155 MCO:SLP:TPD
    11157 MCO:SLP:WUP=-1
    11161 MCO:SLP:MS=2865,SMS=0,I1=1,M1=1,I2=255,M2=255
    11165 MCO:SLP:TPD
    11167 MCO:SLP:WUP=-1
    11171 MCO:SLP:MS=2855,SMS=0,I1=1,M1=1,I2=255,M2=255
    11177 MCO:SLP:TPD
    11180 MCO:SLP:WUP=-1
    11182 MCO:SLP:MS=2844,SMS=0,I1=1,M1=1,I2=255,M2=255
    11188 MCO:SLP:TPD
    11190 MCO:SLP:WUP=-1
    11192 MCO:SLP:MS=2834,SMS=0,I1=1,M1=1,I2=255,M2=255
    11198 MCO:SLP:TPD
    11200 MCO:SLP:WUP=-1
    11204 MCO:SLP:MS=2822,SMS=0,I1=1,M1=1,I2=255,M2=255
    11208 MCO:SLP:TPD
    11212 MCO:SLP:WUP=-1
    11214 MCO:SLP:MS=2812,SMS=0,I1=1,M1=1,I2=255,M2=255
    11220 MCO:SLP:TPD
    11223 MCO:SLP:WUP=-1
    11225 MCO:SLP:MS=2801,SMS=0,I1=1,M1=1,I2=255,M2=255
    11231 MCO:SLP:TPD
    11233 MCO:SLP:WUP=-1
    11235 MCO:SLP:MS=2791,SMS=0,I1=1,M1=1,I2=255,M2=255
    11241 MCO:SLP:TPD
    11243 MCO:SLP:WUP=-1
    11247 MCO:SLP:MS=2779,SMS=0,I1=1,M1=1,I2=255,M2=255
    11251 MCO:SLP:TPD
    11255 MCO:SLP:WUP=-1
    11257 MCO:SLP:MS=2769,SMS=0,I1=1,M1=1,I2=255,M2=255
    11264 MCO:SLP:TPD
    11266 MCO:SLP:WUP=-1
    11268 MCO:SLP:MS=2758,SMS=0,I1=1,M1=1,I2=255,M2=255
    11274 MCO:SLP:TPD
    11276 MCO:SLP:WUP=-1
    11278 MCO:SLP:MS=2748,SMS=0,I1=1,M1=1,I2=255,M2=255
    11284 MCO:SLP:TPD
    11286 MCO:SLP:WUP=-1
    11290 MCO:SLP:MS=2736,SMS=0,I1=1,M1=1,I2=255,M2=255
    11294 MCO:SLP:TPD
    11298 MCO:SLP:WUP=-1
    11300 MCO:SLP:MS=2726,SMS=0,I1=1,M1=1,I2=255,M2=255
    11307 MCO:SLP:TPD
    11309 MCO:SLP:WUP=-1
    11311 MCO:SLP:MS=2715,SMS=0,I1=1,M1=1,I2=255,M2=255
    11317 MCO:SLP:TPD
    11319 MCO:SLP:WUP=-1
    11323 MCO:SLP:MS=2703,SMS=0,I1=1,M1=1,I2=255,M2=255
    11327 MCO:SLP:TPD
    11329 MCO:SLP:WUP=-1
    11333 MCO:SLP:MS=2693,SMS=0,I1=1,M1=1,I2=255,M2=255
    11339 MCO:SLP:TPD
    11341 MCO:SLP:WUP=-1
    11343 MCO:SLP:MS=2683,SMS=0,I1=1,M1=1,I2=255,M2=255
    11350 MCO:SLP:TPD
    11352 MCO:SLP:WUP=-1
    11354 MCO:SLP:MS=2672,SMS=0,I1=1,M1=1,I2=255,M2=255
    11360 MCO:SLP:TPD
    11362 MCO:SLP:WUP=-1
    11366 MCO:SLP:MS=2660,SMS=0,I1=1,M1=1,I2=255,M2=255
    11370 MCO:SLP:TPD
    11372 MCO:SLP:WUP=-1
    11376 MCO:SLP:MS=2650,SMS=0,I1=1,M1=1,I2=255,M2=255
    11382 MCO:SLP:TPD
    11384 MCO:SLP:WUP=-1
    11386 MCO:SLP:MS=2640,SMS=0,I1=1,M1=1,I2=255,M2=255
    11393 MCO:SLP:TPD
    11395 MCO:SLP:WUP=-1
    11397 MCO:SLP:MS=2629,SMS=0,I1=1,M1=1,I2=255,M2=255
    11403 MCO:SLP:TPD
    11405 MCO:SLP:WUP=-1
    11409 MCO:SLP:MS=2617,SMS=0,I1=1,M1=1,I2=255,M2=255
    11413 MCO:SLP:TPD
    11415 MCO:SLP:WUP=-1
    11419 MCO:SLP:MS=2607,SMS=0,I1=1,M1=1,I2=255,M2=255
    11425 MCO:SLP:TPD
    11427 MCO:SLP:WUP=-1
    11429 MCO:SLP:MS=2597,SMS=0,I1=1,M1=1,I2=255,M2=255
    11436 MCO:SLP:TPD
    11438 MCO:SLP:WUP=-1
    11440 MCO:SLP:MS=2586,SMS=0,I1=1,M1=1,I2=255,M2=255
    11446 MCO:SLP:TPD
    11448 MCO:SLP:WUP=-1
    11452 MCO:SLP:MS=2574,SMS=0,I1=1,M1=1,I2=255,M2=255
    11456 MCO:SLP:TPD
    11458 MCO:SLP:WUP=-1
    11462 MCO:SLP:MS=2564,SMS=0,I1=1,M1=1,I2=255,M2=255
    11468 MCO:SLP:TPD
    11470 MCO:SLP:WUP=-1
    11472 MCO:SLP:MS=2554,SMS=0,I1=1,M1=1,I2=255,M2=255
    11479 MCO:SLP:TPD
    11481 MCO:SLP:WUP=-1
    11483 MCO:SLP:MS=2543,SMS=0,I1=1,M1=1,I2=255,M2=255
    11489 MCO:SLP:TPD
    11491 MCO:SLP:WUP=-1
    11495 MCO:SLP:MS=2531,SMS=0,I1=1,M1=1,I2=255,M2=255
    11499 MCO:SLP:TPD
    11503 MCO:SLP:WUP=-1
    11505 MCO:SLP:MS=2521,SMS=0,I1=1,M1=1,I2=255,M2=255
    11511 MCO:SLP:TPD
    11513 MCO:SLP:WUP=-1
    11515 MCO:SLP:MS=2511,SMS=0,I1=1,M1=1,I2=255,M2=255
    11522 MCO:SLP:TPD
    11524 MCO:SLP:WUP=-1
    11526 MCO:SLP:MS=2500,SMS=0,I1=1,M1=1,I2=255,M2=255
    11532 MCO:SLP:TPD
    11534 MCO:SLP:WUP=-1
    11538 MCO:SLP:MS=2488,SMS=0,I1=1,M1=1,I2=255,M2=255
    11542 MCO:SLP:TPD
    11544 MCO:SLP:WUP=-1
    11548 MCO:SLP:MS=2478,SMS=0,I1=1,M1=1,I2=255,M2=255
    11554 MCO:SLP:TPD
    11556 MCO:SLP:WUP=-1
    11558 MCO:SLP:MS=2468,SMS=0,I1=1,M1=1,I2=255,M2=255
    11565 MCO:SLP:TPD
    11567 MCO:SLP:WUP=-1
    11569 MCO:SLP:MS=2457,SMS=0,I1=1,M1=1,I2=255,M2=255
    11575 MCO:SLP:TPD
    11577 MCO:SLP:WUP=-1
    11581 MCO:SLP:MS=2445,SMS=0,I1=1,M1=1,I2=255,M2=255
    11585 MCO:SLP:TPD
    11589 MCO:SLP:WUP=-1
    11591 MCO:SLP:MS=2435,SMS=0,I1=1,M1=1,I2=255,M2=255
    11597 MCO:SLP:TPD
    11599 MCO:SLP:WUP=-1
    11601 MCO:SLP:MS=2425,SMS=0,I1=1,M1=1,I2=255,M2=255
    11608 MCO:SLP:TPD
    11610 MCO:SLP:WUP=-1
    11612 MCO:SLP:MS=2414,SMS=0,I1=1,M1=1,I2=255,M2=255
    11618 MCO:SLP:TPD
    11620 MCO:SLP:WUP=-1
    11624 MCO:SLP:MS=2402,SMS=0,I1=1,M1=1,I2=255,M2=255
    11628 MCO:SLP:TPD
    11632 MCO:SLP:WUP=-1
    11634 MCO:SLP:MS=2392,SMS=0,I1=1,M1=1,I2=255,M2=255
    11640 MCO:SLP:TPD
    11642 MCO:SLP:WUP=-1
    11644 MCO:SLP:MS=2382,SMS=0,I1=1,M1=1,I2=255,M2=255
    11651 MCO:SLP:TPD
    11653 MCO:SLP:WUP=-1
    11655 MCO:SLP:MS=2371,SMS=0,I1=1,M1=1,I2=255,M2=255
    11661 MCO:SLP:TPD
    11663 MCO:SLP:WUP=-1
    11667 MCO:SLP:MS=2359,SMS=0,I1=1,M1=1,I2=255,M2=255
    11671 MCO:SLP:TPD
    11675 MCO:SLP:WUP=-1
    11677 MCO:SLP:MS=2349,SMS=0,I1=1,M1=1,I2=255,M2=255
    11683 MCO:SLP:TPD
    11685 MCO:SLP:WUP=-1
    11687 MCO:SLP:MS=2339,SMS=0,I1=1,M1=1,I2=255,M2=255
    11694 MCO:SLP:TPD
    11696 MCO:SLP:WUP=-1
    11698 MCO:SLP:MS=2328,SMS=0,I1=1,M1=1,I2=255,M2=255
    11704 MCO:SLP:TPD
    11706 MCO:SLP:WUP=-1
    11710 MCO:SLP:MS=2316,SMS=0,I1=1,M1=1,I2=255,M2=255
    11714 MCO:SLP:TPD
    11716 MCO:SLP:WUP=-1
    11720 MCO:SLP:MS=2306,SMS=0,I1=1,M1=1,I2=255,M2=255
    11726 MCO:SLP:TPD
    11728 MCO:SLP:WUP=-1
    11730 MCO:SLP:MS=2296,SMS=0,I1=1,M1=1,I2=255,M2=255
    11737 MCO:SLP:TPD
    11739 MCO:SLP:WUP=-1
    11741 MCO:SLP:MS=2285,SMS=0,I1=1,M1=1,I2=255,M2=255
    11747 MCO:SLP:TPD
    11749 MCO:SLP:WUP=-1
    11753 MCO:SLP:MS=2273,SMS=0,I1=1,M1=1,I2=255,M2=255
    11757 MCO:SLP:TPD
    11759 MCO:SLP:WUP=-1
    11763 MCO:SLP:MS=2263,SMS=0,I1=1,M1=1,I2=255,M2=255
    11769 MCO:SLP:TPD
    11771 MCO:SLP:WUP=-1
    11773 MCO:SLP:MS=2253,SMS=0,I1=1,M1=1,I2=255,M2=255
    11780 MCO:SLP:TPD
    11782 MCO:SLP:WUP=-1
    11784 MCO:SLP:MS=2242,SMS=0,I1=1,M1=1,I2=255,M2=255
    11790 MCO:SLP:TPD
    11792 MCO:SLP:WUP=-1
    11796 MCO:SLP:MS=2230,SMS=0,I1=1,M1=1,I2=255,M2=255
    11800 MCO:SLP:TPD
    11802 MCO:SLP:WUP=-1
    11806 MCO:SLP:MS=2220,SMS=0,I1=1,M1=1,I2=255,M2=255
    11812 MCO:SLP:TPD
    11814 MCO:SLP:WUP=-1
    11816 MCO:SLP:MS=2210,SMS=0,I1=1,M1=1,I2=255,M2=255
    11823 MCO:SLP:TPD
    11825 MCO:SLP:WUP=-1
    11827 MCO:SLP:MS=2199,SMS=0,I1=1,M1=1,I2=255,M2=255
    11833 MCO:SLP:TPD
    11835 MCO:SLP:WUP=-1
    11839 MCO:SLP:MS=2187,SMS=0,I1=1,M1=1,I2=255,M2=255
    11843 MCO:SLP:TPD
    11845 MCO:SLP:WUP=-1
    11849 MCO:SLP:MS=2177,SMS=0,I1=1,M1=1,I2=255,M2=255
    11855 MCO:SLP:TPD
    11857 MCO:SLP:WUP=-1
    11859 MCO:SLP:MS=2167,SMS=0,I1=1,M1=1,I2=255,M2=255
    11866 MCO:SLP:TPD
    11868 MCO:SLP:WUP=-1
    11870 MCO:SLP:MS=2156,SMS=0,I1=1,M1=1,I2=255,M2=255
    11876 MCO:SLP:TPD
    11878 MCO:SLP:WUP=-1
    11882 MCO:SLP:MS=2146,SMS=0,I1=1,M1=1,I2=255,M2=255
    11886 MCO:SLP:TPD
    11888 MCO:SLP:WUP=-1
    11892 MCO:SLP:MS=2134,SMS=0,I1=1,M1=1,I2=255,M2=255
    11898 MCO:SLP:TPD
    11900 MCO:SLP:WUP=-1
    11902 MCO:SLP:MS=2124,SMS=0,I1=1,M1=1,I2=255,M2=255
    11909 MCO:SLP:TPD
    11911 MCO:SLP:WUP=-1
    11913 MCO:SLP:MS=2113,SMS=0,I1=1,M1=1,I2=255,M2=255
    11919 MCO:SLP:TPD
    11921 MCO:SLP:WUP=-1
    11923 MCO:SLP:MS=2103,SMS=0,I1=1,M1=1,I2=255,M2=255
    11929 MCO:SLP:TPD
    11931 MCO:SLP:WUP=-1
    11935 MCO:SLP:MS=2091,SMS=0,I1=1,M1=1,I2=255,M2=255
    11939 MCO:SLP:TPD
    11943 MCO:SLP:WUP=-1
    11945 MCO:SLP:MS=2081,SMS=0,I1=1,M1=1,I2=255,M2=255
    11952 MCO:SLP:TPD
    11954 MCO:SLP:WUP=-1
    11956 MCO:SLP:MS=2070,SMS=0,I1=1,M1=1,I2=255,M2=255
    11962 MCO:SLP:TPD
    11964 MCO:SLP:WUP=-1
    11966 MCO:SLP:MS=2060,SMS=0,I1=1,M1=1,I2=255,M2=255
    11972 MCO:SLP:TPD
    11974 MCO:SLP:WUP=-1
    11978 MCO:SLP:MS=2048,SMS=0,I1=1,M1=1,I2=255,M2=255
    11982 MCO:SLP:TPD
    11984 MCO:SLP:WUP=-1
    11988 MCO:SLP:MS=2038,SMS=0,I1=1,M1=1,I2=255,M2=255
    11995 MCO:SLP:TPD
    11997 MCO:SLP:WUP=-1
    11999 MCO:SLP:MS=2027,SMS=0,I1=1,M1=1,I2=255,M2=255
    12005 MCO:SLP:TPD
    12007 MCO:SLP:WUP=-1
    12009 MCO:SLP:MS=2017,SMS=0,I1=1,M1=1,I2=255,M2=255
    12015 MCO:SLP:TPD
    12017 MCO:SLP:WUP=-1
    12019 MCO:SLP:MS=2007,SMS=0,I1=1,M1=1,I2=255,M2=255
    12025 MCO:SLP:TPD
    12027 MCO:SLP:WUP=-1
    12032 MCO:SLP:MS=1994,SMS=0,I1=1,M1=1,I2=255,M2=255
    12036 MCO:SLP:TPD
    12040 MCO:SLP:WUP=-1
    12042 MCO:SLP:MS=1984,SMS=0,I1=1,M1=1,I2=255,M2=255
    12048 MCO:SLP:TPD
    12050 MCO:SLP:WUP=-1
    12052 MCO:SLP:MS=1974,SMS=0,I1=1,M1=1,I2=255,M2=255
    12058 MCO:SLP:TPD
    12060 MCO:SLP:WUP=-1
    12062 MCO:SLP:MS=1964,SMS=0,I1=1,M1=1,I2=255,M2=255
    12068 MCO:SLP:TPD
    12070 MCO:SLP:WUP=-1
    12075 MCO:SLP:MS=1951,SMS=0,I1=1,M1=1,I2=255,M2=255
    12079 MCO:SLP:TPD
    12083 MCO:SLP:WUP=-1
    12085 MCO:SLP:MS=1941,SMS=0,I1=1,M1=1,I2=255,M2=255
    12091 MCO:SLP:TPD
    12093 MCO:SLP:WUP=-1
    12095 MCO:SLP:MS=1931,SMS=0,I1=1,M1=1,I2=255,M2=255
    12101 MCO:SLP:TPD
    12103 MCO:SLP:WUP=-1
    12105 MCO:SLP:MS=1921,SMS=0,I1=1,M1=1,I2=255,M2=255
    12111 MCO:SLP:TPD
    12113 MCO:SLP:WUP=-1
    12118 MCO:SLP:MS=1908,SMS=0,I1=1,M1=1,I2=255,M2=255
    12122 MCO:SLP:TPD
    12126 MCO:SLP:WUP=-1
    12128 MCO:SLP:MS=1898,SMS=0,I1=1,M1=1,I2=255,M2=255
    12134 MCO:SLP:TPD
    12136 MCO:SLP:WUP=-1
    12138 MCO:SLP:MS=1888,SMS=0,I1=1,M1=1,I2=255,M2=255
    12144 MCO:SLP:TPD
    12146 MCO:SLP:WUP=-1
    12148 MCO:SLP:MS=1878,SMS=0,I1=1,M1=1,I2=255,M2=255
    12154 MCO:SLP:TPD
    12156 MCO:SLP:WUP=-1
    12161 MCO:SLP:MS=1865,SMS=0,I1=1,M1=1,I2=255,M2=255
    12165 MCO:SLP:TPD
    12169 MCO:SLP:WUP=-1
    12171 MCO:SLP:MS=1855,SMS=0,I1=1,M1=1,I2=255,M2=255
    12177 MCO:SLP:TPD
    12179 MCO:SLP:WUP=-1
    12181 MCO:SLP:MS=1845,SMS=0,I1=1,M1=1,I2=255,M2=255
    12187 MCO:SLP:TPD
    12189 MCO:SLP:WUP=-1
    12191 MCO:SLP:MS=1835,SMS=0,I1=1,M1=1,I2=255,M2=255
    12197 MCO:SLP:TPD
    12199 MCO:SLP:WUP=-1
    12204 MCO:SLP:MS=1822,SMS=0,I1=1,M1=1,I2=255,M2=255
    12208 MCO:SLP:TPD
    12210 MCO:SLP:WUP=-1
    12214 MCO:SLP:MS=1812,SMS=0,I1=1,M1=1,I2=255,M2=255
    12220 MCO:SLP:TPD
    12222 MCO:SLP:WUP=-1
    12224 MCO:SLP:MS=1802,SMS=0,I1=1,M1=1,I2=255,M2=255
    12230 MCO:SLP:TPD
    12232 MCO:SLP:WUP=-1
    12234 MCO:SLP:MS=1792,SMS=0,I1=1,M1=1,I2=255,M2=255
    12240 MCO:SLP:TPD
    12242 MCO:SLP:WUP=-1
    12247 MCO:SLP:MS=1779,SMS=0,I1=1,M1=1,I2=255,M2=255
    12251 MCO:SLP:TPD
    12253 MCO:SLP:WUP=-1
    12257 MCO:SLP:MS=1769,SMS=0,I1=1,M1=1,I2=255,M2=255
    12263 MCO:SLP:TPD
    12265 MCO:SLP:WUP=-1
    12267 MCO:SLP:MS=1759,SMS=0,I1=1,M1=1,I2=255,M2=255
    12273 MCO:SLP:TPD
    12275 MCO:SLP:WUP=-1
    12277 MCO:SLP:MS=1749,SMS=0,I1=1,M1=1,I2=255,M2=255
    12283 MCO:SLP:TPD
    12285 MCO:SLP:WUP=-1
    12290 MCO:SLP:MS=1736,SMS=0,I1=1,M1=1,I2=255,M2=255
    12294 MCO:SLP:TPD
    12296 MCO:SLP:WUP=-1
    12300 MCO:SLP:MS=1726,SMS=0,I1=1,M1=1,I2=255,M2=255
    12306 MCO:SLP:TPD
    12308 MCO:SLP:WUP=-1
    12310 MCO:SLP:MS=1716,SMS=0,I1=1,M1=1,I2=255,M2=255
    12316 MCO:SLP:TPD
    12318 MCO:SLP:WUP=-1
    12320 MCO:SLP:MS=1706,SMS=0,I1=1,M1=1,I2=255,M2=255
    12326 MCO:SLP:TPD
    12328 MCO:SLP:WUP=-1
    12333 MCO:SLP:MS=1693,SMS=0,I1=1,M1=1,I2=255,M2=255
    12337 MCO:SLP:TPD
    12339 MCO:SLP:WUP=-1
    12343 MCO:SLP:MS=1683,SMS=0,I1=1,M1=1,I2=255,M2=255
    12349 MCO:SLP:TPD
    12351 MCO:SLP:WUP=-1
    12353 MCO:SLP:MS=1673,SMS=0,I1=1,M1=1,I2=255,M2=255
    12359 MCO:SLP:TPD
    12361 MCO:SLP:WUP=-1
    12363 MCO:SLP:MS=1663,SMS=0,I1=1,M1=1,I2=255,M2=255
    12369 MCO:SLP:TPD
    12371 MCO:SLP:WUP=-1
    12374 MCO:SLP:MS=1652,SMS=0,I1=1,M1=1,I2=255,M2=255
    12380 MCO:SLP:TPD
    12382 MCO:SLP:WUP=-1
    12386 MCO:SLP:MS=1640,SMS=0,I1=1,M1=1,I2=255,M2=255
    12390 MCO:SLP:TPD
    12394 MCO:SLP:WUP=-1
    12396 MCO:SLP:MS=1630,SMS=0,I1=1,M1=1,I2=255,M2=255
    12402 MCO:SLP:TPD
    12404 MCO:SLP:WUP=-1
    12406 MCO:SLP:MS=1620,SMS=0,I1=1,M1=1,I2=255,M2=255
    12412 MCO:SLP:TPD
    12414 MCO:SLP:WUP=-1
    12417 MCO:SLP:MS=1609,SMS=0,I1=1,M1=1,I2=255,M2=255
    12423 MCO:SLP:TPD
    12425 MCO:SLP:WUP=-1
    12429 MCO:SLP:MS=1597,SMS=0,I1=1,M1=1,I2=255,M2=255
    12433 MCO:SLP:TPD
    12437 MCO:SLP:WUP=-1
    12439 MCO:SLP:MS=1587,SMS=0,I1=1,M1=1,I2=255,M2=255
    12445 MCO:SLP:TPD
    12447 MCO:SLP:WUP=-1
    12449 MCO:SLP:MS=1577,SMS=0,I1=1,M1=1,I2=255,M2=255
    12455 MCO:SLP:TPD
    12457 MCO:SLP:WUP=-1
    12460 MCO:SLP:MS=1566,SMS=0,I1=1,M1=1,I2=255,M2=255
    12466 MCO:SLP:TPD
    12468 MCO:SLP:WUP=-1
    12472 MCO:SLP:MS=1554,SMS=0,I1=1,M1=1,I2=255,M2=255
    12476 MCO:SLP:TPD
    12478 MCO:SLP:WUP=-1
    12482 MCO:SLP:MS=1544,SMS=0,I1=1,M1=1,I2=255,M2=255
    12488 MCO:SLP:TPD
    12490 MCO:SLP:WUP=-1
    12492 MCO:SLP:MS=1534,SMS=0,I1=1,M1=1,I2=255,M2=255
    12498 MCO:SLP:TPD
    12500 MCO:SLP:WUP=-1
    12503 MCO:SLP:MS=1523,SMS=0,I1=1,M1=1,I2=255,M2=255
    12509 MCO:SLP:TPD
    12511 MCO:SLP:WUP=-1
    12515 MCO:SLP:MS=1511,SMS=0,I1=1,M1=1,I2=255,M2=255
    12519 MCO:SLP:TPD
    12521 MCO:SLP:WUP=-1
    12525 MCO:SLP:MS=1501,SMS=0,I1=1,M1=1,I2=255,M2=255
    12531 MCO:SLP:TPD
    12533 MCO:SLP:WUP=-1
    12535 MCO:SLP:MS=1491,SMS=0,I1=1,M1=1,I2=255,M2=255
    12541 MCO:SLP:TPD
    12544 MCO:SLP:WUP=-1
    12546 MCO:SLP:MS=1480,SMS=0,I1=1,M1=1,I2=255,M2=255
    12552 MCO:SLP:TPD
    12554 MCO:SLP:WUP=-1
    12558 MCO:SLP:MS=1468,SMS=0,I1=1,M1=1,I2=255,M2=255
    12562 MCO:SLP:TPD
    12564 MCO:SLP:WUP=-1
    12568 MCO:SLP:MS=1458,SMS=0,I1=1,M1=1,I2=255,M2=255
    12574 MCO:SLP:TPD
    12576 MCO:SLP:WUP=-1
    12578 MCO:SLP:MS=1448,SMS=0,I1=1,M1=1,I2=255,M2=255
    12584 MCO:SLP:TPD
    12587 MCO:SLP:WUP=-1
    12589 MCO:SLP:MS=1437,SMS=0,I1=1,M1=1,I2=255,M2=255
    12595 MCO:SLP:TPD
    12597 MCO:SLP:WUP=-1
    12601 MCO:SLP:MS=1425,SMS=0,I1=1,M1=1,I2=255,M2=255
    12605 MCO:SLP:TPD
    12607 MCO:SLP:WUP=-1
    12611 MCO:SLP:MS=1415,SMS=0,I1=1,M1=1,I2=255,M2=255
    12617 MCO:SLP:TPD
    12619 MCO:SLP:WUP=-1
    12621 MCO:SLP:MS=1405,SMS=0,I1=1,M1=1,I2=255,M2=255
    12627 MCO:SLP:TPD
    12630 MCO:SLP:WUP=-1
    12632 MCO:SLP:MS=1394,SMS=0,I1=1,M1=1,I2=255,M2=255
    12638 MCO:SLP:TPD
    12640 MCO:SLP:WUP=-1
    12644 MCO:SLP:MS=1382,SMS=0,I1=1,M1=1,I2=255,M2=255
    12648 MCO:SLP:TPD
    12650 MCO:SLP:WUP=-1
    12654 MCO:SLP:MS=1372,SMS=0,I1=1,M1=1,I2=255,M2=255
    12658 MCO:SLP:TPD
    12662 MCO:SLP:WUP=-1
    12664 MCO:SLP:MS=1362,SMS=0,I1=1,M1=1,I2=255,M2=255
    12670 MCO:SLP:TPD
    12673 MCO:SLP:WUP=-1
    12675 MCO:SLP:MS=1351,SMS=0,I1=1,M1=1,I2=255,M2=255
    12681 MCO:SLP:TPD
    12683 MCO:SLP:WUP=-1
    12685 MCO:SLP:MS=1341,SMS=0,I1=1,M1=1,I2=255,M2=255
    12691 MCO:SLP:TPD
    12693 MCO:SLP:WUP=-1
    12697 MCO:SLP:MS=1329,SMS=0,I1=1,M1=1,I2=255,M2=255
    12701 MCO:SLP:TPD
    12705 MCO:SLP:WUP=-1
    12707 MCO:SLP:MS=1319,SMS=0,I1=1,M1=1,I2=255,M2=255
    12713 MCO:SLP:TPD
    12716 MCO:SLP:WUP=-1
    12718 MCO:SLP:MS=1308,SMS=0,I1=1,M1=1,I2=255,M2=255
    12724 MCO:SLP:TPD
    12726 MCO:SLP:WUP=-1
    12728 MCO:SLP:MS=1298,SMS=0,I1=1,M1=1,I2=255,M2=255
    12734 MCO:SLP:TPD
    12736 MCO:SLP:WUP=-1
    12740 MCO:SLP:MS=1286,SMS=0,I1=1,M1=1,I2=255,M2=255
    12744 MCO:SLP:TPD
    12748 MCO:SLP:WUP=-1
    12750 MCO:SLP:MS=1276,SMS=0,I1=1,M1=1,I2=255,M2=255
    12756 MCO:SLP:TPD
    12759 MCO:SLP:WUP=-1
    12761 MCO:SLP:MS=1265,SMS=0,I1=1,M1=1,I2=255,M2=255
    12767 MCO:SLP:TPD
    12769 MCO:SLP:WUP=-1
    12771 MCO:SLP:MS=1255,SMS=0,I1=1,M1=1,I2=255,M2=255
    12777 MCO:SLP:TPD
    12779 MCO:SLP:WUP=-1
    12783 MCO:SLP:MS=1243,SMS=0,I1=1,M1=1,I2=255,M2=255
    12787 MCO:SLP:TPD
    12791 MCO:SLP:WUP=-1
    12793 MCO:SLP:MS=1233,SMS=0,I1=1,M1=1,I2=255,M2=255
    12800 MCO:SLP:TPD
    12802 MCO:SLP:WUP=-1
    12804 MCO:SLP:MS=1222,SMS=0,I1=1,M1=1,I2=255,M2=255
    12810 MCO:SLP:TPD
    12812 MCO:SLP:WUP=-1
    12814 MCO:SLP:MS=1212,SMS=0,I1=1,M1=1,I2=255,M2=255
    12820 MCO:SLP:TPD
    12822 MCO:SLP:WUP=-1
    12826 MCO:SLP:MS=1200,SMS=0,I1=1,M1=1,I2=255,M2=255
    12830 MCO:SLP:TPD
    12832 MCO:SLP:WUP=-1
    12836 MCO:SLP:MS=1190,SMS=0,I1=1,M1=1,I2=255,M2=255
    12843 MCO:SLP:TPD
    12845 MCO:SLP:WUP=-1
    12847 MCO:SLP:MS=1179,SMS=0,I1=1,M1=1,I2=255,M2=255
    12853 MCO:SLP:TPD
    12855 MCO:SLP:WUP=-1
    12857 MCO:SLP:MS=1169,SMS=0,I1=1,M1=1,I2=255,M2=255
    12863 MCO:SLP:TPD
    12865 MCO:SLP:WUP=-1
    12869 MCO:SLP:MS=1157,SMS=0,I1=1,M1=1,I2=255,M2=255
    12873 MCO:SLP:TPD
    12875 MCO:SLP:WUP=-1
    12879 MCO:SLP:MS=1147,SMS=0,I1=1,M1=1,I2=255,M2=255
    12886 MCO:SLP:TPD
    12888 MCO:SLP:WUP=-1
    12890 MCO:SLP:MS=1136,SMS=0,I1=1,M1=1,I2=255,M2=255
    12896 MCO:SLP:TPD
    12898 MCO:SLP:WUP=-1
    12900 MCO:SLP:MS=1126,SMS=0,I1=1,M1=1,I2=255,M2=255
    12906 MCO:SLP:TPD
    12908 MCO:SLP:WUP=-1
    12912 MCO:SLP:MS=1114,SMS=0,I1=1,M1=1,I2=255,M2=255
    12916 MCO:SLP:TPD
    12918 MCO:SLP:WUP=-1
    12922 MCO:SLP:MS=1104,SMS=0,I1=1,M1=1,I2=255,M2=255
    12929 MCO:SLP:TPD
    12931 MCO:SLP:WUP=-1
    12933 MCO:SLP:MS=1093,SMS=0,I1=1,M1=1,I2=255,M2=255
    12939 MCO:SLP:TPD
    12941 MCO:SLP:WUP=-1
    12943 MCO:SLP:MS=1083,SMS=0,I1=1,M1=1,I2=255,M2=255
    12949 MCO:SLP:TPD
    12951 MCO:SLP:WUP=-1
    12955 MCO:SLP:MS=1071,SMS=0,I1=1,M1=1,I2=255,M2=255
    12959 MCO:SLP:TPD
    12961 MCO:SLP:WUP=-1
    12965 MCO:SLP:MS=1061,SMS=0,I1=1,M1=1,I2=255,M2=255
    12972 MCO:SLP:TPD
    12974 MCO:SLP:WUP=-1
    12976 MCO:SLP:MS=1050,SMS=0,I1=1,M1=1,I2=255,M2=255
    12982 MCO:SLP:TPD
    12984 MCO:SLP:WUP=-1
    12986 MCO:SLP:MS=1040,SMS=0,I1=1,M1=1,I2=255,M2=255
    12992 MCO:SLP:TPD
    12994 MCO:SLP:WUP=-1
    12998 MCO:SLP:MS=1028,SMS=0,I1=1,M1=1,I2=255,M2=255
    13002 MCO:SLP:TPD
    13004 MCO:SLP:WUP=-1
    13008 MCO:SLP:MS=1018,SMS=0,I1=1,M1=1,I2=255,M2=255
    13015 MCO:SLP:TPD
    13017 MCO:SLP:WUP=-1
    13019 MCO:SLP:MS=1007,SMS=0,I1=1,M1=1,I2=255,M2=255
    13025 MCO:SLP:TPD
    13027 MCO:SLP:WUP=-1
    13029 MCO:SLP:MS=997,SMS=0,I1=1,M1=1,I2=255,M2=255
    13035 MCO:SLP:TPD
    13037 MCO:SLP:WUP=-1
    13039 MCO:SLP:MS=987,SMS=0,I1=1,M1=1,I2=255,M2=255
    13045 MCO:SLP:TPD
    13047 MCO:SLP:WUP=-1
    13051 MCO:SLP:MS=975,SMS=0,I1=1,M1=1,I2=255,M2=255
    13056 MCO:SLP:TPD
    13058 MCO:SLP:WUP=-1
    13062 MCO:SLP:MS=964,SMS=0,I1=1,M1=1,I2=255,M2=255
    13068 MCO:SLP:TPD
    13070 MCO:SLP:WUP=-1
    13072 MCO:SLP:MS=954,SMS=0,I1=1,M1=1,I2=255,M2=255
    13078 MCO:SLP:TPD
    13080 MCO:SLP:WUP=-1
    13082 MCO:SLP:MS=944,SMS=0,I1=1,M1=1,I2=255,M2=255
    13088 MCO:SLP:TPD
    13090 MCO:SLP:WUP=-1
    13092 MCO:SLP:MS=934,SMS=0,I1=1,M1=1,I2=255,M2=255
    13099 MCO:SLP:TPD
    13101 MCO:SLP:WUP=-1
    13105 MCO:SLP:MS=921,SMS=0,I1=1,M1=1,I2=255,M2=255
    13109 MCO:SLP:TPD
    13111 MCO:SLP:WUP=-1
    13115 MCO:SLP:MS=911,SMS=0,I1=1,M1=1,I2=255,M2=255
    13121 MCO:SLP:TPD
    13123 MCO:SLP:WUP=-1
    13125 MCO:SLP:MS=901,SMS=0,I1=1,M1=1,I2=255,M2=255
    13131 MCO:SLP:TPD
    13133 MCO:SLP:WUP=-1
    13135 MCO:SLP:MS=891,SMS=0,I1=1,M1=1,I2=255,M2=255
    13142 MCO:SLP:TPD
    13144 MCO:SLP:WUP=-1
    13146 MCO:SLP:MS=880,SMS=0,I1=1,M1=1,I2=255,M2=255
    13152 MCO:SLP:TPD
    13154 MCO:SLP:WUP=-1
    13158 MCO:SLP:MS=868,SMS=0,I1=1,M1=1,I2=255,M2=255
    13162 MCO:SLP:TPD
    13164 MCO:SLP:WUP=-1
    13168 MCO:SLP:MS=858,SMS=0,I1=1,M1=1,I2=255,M2=255
    13174 MCO:SLP:TPD
    13176 MCO:SLP:WUP=-1
    13178 MCO:SLP:MS=848,SMS=0,I1=1,M1=1,I2=255,M2=255
    13185 MCO:SLP:TPD
    13187 MCO:SLP:WUP=-1
    13189 MCO:SLP:MS=837,SMS=0,I1=1,M1=1,I2=255,M2=255
    13195 MCO:SLP:TPD
    13197 MCO:SLP:WUP=-1
    13199 MCO:SLP:MS=827,SMS=0,I1=1,M1=1,I2=255,M2=255
    13205 MCO:SLP:TPD
    13207 MCO:SLP:WUP=-1
    13211 MCO:SLP:MS=815,SMS=0,I1=1,M1=1,I2=255,M2=255
    13215 MCO:SLP:TPD
    13217 MCO:SLP:WUP=-1
    13221 MCO:SLP:MS=805,SMS=0,I1=1,M1=1,I2=255,M2=255
    13228 MCO:SLP:TPD
    13230 MCO:SLP:WUP=-1
    13232 MCO:SLP:MS=794,SMS=0,I1=1,M1=1,I2=255,M2=255
    13238 MCO:SLP:TPD
    13240 MCO:SLP:WUP=-1
    13242 MCO:SLP:MS=784,SMS=0,I1=1,M1=1,I2=255,M2=255
    13248 MCO:SLP:TPD
    13250 MCO:SLP:WUP=-1
    13252 MCO:SLP:MS=774,SMS=0,I1=1,M1=1,I2=255,M2=255
    13258 MCO:SLP:TPD
    13260 MCO:SLP:WUP=-1
    13264 MCO:SLP:MS=762,SMS=0,I1=1,M1=1,I2=255,M2=255
    13268 MCO:SLP:TPD
    13271 MCO:SLP:WUP=-1
    13275 MCO:SLP:MS=751,SMS=0,I1=1,M1=1,I2=255,M2=255
    13279 MCO:SLP:TPD
    13283 MCO:SLP:WUP=-1
    13285 MCO:SLP:MS=741,SMS=0,I1=1,M1=1,I2=255,M2=255
    13291 MCO:SLP:TPD
    13293 MCO:SLP:WUP=-1
    13295 MCO:SLP:MS=731,SMS=0,I1=1,M1=1,I2=255,M2=255
    13301 MCO:SLP:TPD
    13303 MCO:SLP:WUP=-1
    13305 MCO:SLP:MS=721,SMS=0,I1=1,M1=1,I2=255,M2=255
    13312 MCO:SLP:TPD
    13314 MCO:SLP:WUP=-1
    13318 MCO:SLP:MS=708,SMS=0,I1=1,M1=1,I2=255,M2=255
    13322 MCO:SLP:TPD
    13324 MCO:SLP:WUP=-1
    13328 MCO:SLP:MS=698,SMS=0,I1=1,M1=1,I2=255,M2=255
    13332 MCO:SLP:TPD
    13336 MCO:SLP:WUP=-1
    13338 MCO:SLP:MS=688,SMS=0,I1=1,M1=1,I2=255,M2=255
    13344 MCO:SLP:TPD
    13346 MCO:SLP:WUP=-1
    13348 MCO:SLP:MS=678,SMS=0,I1=1,M1=1,I2=255,M2=255
    13355 MCO:SLP:TPD
    13357 MCO:SLP:WUP=-1
    13359 MCO:SLP:MS=667,SMS=0,I1=1,M1=1,I2=255,M2=255
    13365 MCO:SLP:TPD
    13367 MCO:SLP:WUP=-1
    13371 MCO:SLP:MS=655,SMS=0,I1=1,M1=1,I2=255,M2=255
    13375 MCO:SLP:TPD
    13377 MCO:SLP:WUP=-1
    13381 MCO:SLP:MS=645,SMS=0,I1=1,M1=1,I2=255,M2=255
    13385 MCO:SLP:TPD
    13389 MCO:SLP:WUP=-1
    13391 MCO:SLP:MS=635,SMS=0,I1=1,M1=1,I2=255,M2=255
    13398 MCO:SLP:TPD
    13400 MCO:SLP:WUP=-1
    13402 MCO:SLP:MS=624,SMS=0,I1=1,M1=1,I2=255,M2=255
    13408 MCO:SLP:TPD
    13410 MCO:SLP:WUP=-1
    13412 MCO:SLP:MS=614,SMS=0,I1=1,M1=1,I2=255,M2=255
    13418 MCO:SLP:TPD
    13420 MCO:SLP:WUP=-1
    13424 MCO:SLP:MS=602,SMS=0,I1=1,M1=1,I2=255,M2=255
    13428 MCO:SLP:TPD
    13430 MCO:SLP:WUP=-1
    13434 MCO:SLP:MS=592,SMS=0,I1=1,M1=1,I2=255,M2=255
    13438 MCO:SLP:TPD
    13441 MCO:SLP:WUP=-1
    13445 MCO:SLP:MS=581,SMS=0,I1=1,M1=1,I2=255,M2=255
    13451 MCO:SLP:TPD
    13453 MCO:SLP:WUP=-1
    13455 MCO:SLP:MS=571,SMS=0,I1=1,M1=1,I2=255,M2=255
    13461 MCO:SLP:TPD
    13463 MCO:SLP:WUP=-1
    13465 MCO:SLP:MS=561,SMS=0,I1=1,M1=1,I2=255,M2=255
    13471 MCO:SLP:TPD
    13473 MCO:SLP:WUP=-1
    13475 MCO:SLP:MS=551,SMS=0,I1=1,M1=1,I2=255,M2=255
    13481 MCO:SLP:TPD
    13484 MCO:SLP:WUP=-1
    13488 MCO:SLP:MS=538,SMS=0,I1=1,M1=1,I2=255,M2=255
    13492 MCO:SLP:TPD
    13494 MCO:SLP:WUP=-1
    13498 MCO:SLP:MS=528,SMS=0,I1=1,M1=1,I2=255,M2=255
    13504 MCO:SLP:TPD
    13506 MCO:SLP:WUP=-1
    13508 MCO:SLP:MS=518,SMS=0,I1=1,M1=1,I2=255,M2=255
    13514 MCO:SLP:TPD
    13516 MCO:SLP:WUP=-1
    13518 MCO:SLP:MS=508,SMS=0,I1=1,M1=1,I2=255,M2=255
    13524 MCO:SLP:TPD
    13527 MCO:SLP:WUP=-1
    13529 MCO:SLP:MS=497,SMS=0,I1=1,M1=1,I2=255,M2=255
    13535 MCO:SLP:TPD
    13537 MCO:SLP:WUP=-1
    13541 MCO:SLP:MS=485,SMS=0,I1=1,M1=1,I2=255,M2=255
    13545 MCO:SLP:TPD
    13547 MCO:SLP:WUP=-1
    13551 MCO:SLP:MS=475,SMS=0,I1=1,M1=1,I2=255,M2=255
    13555 MCO:SLP:TPD
    13559 MCO:SLP:WUP=-1
    13561 MCO:SLP:MS=465,SMS=0,I1=1,M1=1,I2=255,M2=255
    13568 MCO:SLP:TPD
    13570 MCO:SLP:WUP=-1
    13572 MCO:SLP:MS=454,SMS=0,I1=1,M1=1,I2=255,M2=255
    13578 MCO:SLP:TPD
    13580 MCO:SLP:WUP=-1
    13582 MCO:SLP:MS=444,SMS=0,I1=1,M1=1,I2=255,M2=255
    13588 MCO:SLP:TPD
    13590 MCO:SLP:WUP=-1
    13594 MCO:SLP:MS=432,SMS=0,I1=1,M1=1,I2=255,M2=255
    13598 MCO:SLP:TPD
    13600 MCO:SLP:WUP=-1
    13604 MCO:SLP:MS=422,SMS=0,I1=1,M1=1,I2=255,M2=255
    13608 MCO:SLP:TPD
    13613 MCO:SLP:WUP=-1
    13615 MCO:SLP:MS=411,SMS=0,I1=1,M1=1,I2=255,M2=255
    13621 MCO:SLP:TPD
    13623 MCO:SLP:WUP=-1
    13625 MCO:SLP:MS=401,SMS=0,I1=1,M1=1,I2=255,M2=255
    13631 MCO:SLP:TPD
    13633 MCO:SLP:WUP=-1
    13635 MCO:SLP:MS=391,SMS=0,I1=1,M1=1,I2=255,M2=255
    13641 MCO:SLP:TPD
    13643 MCO:SLP:WUP=-1
    13647 MCO:SLP:MS=379,SMS=0,I1=1,M1=1,I2=255,M2=255
    13651 MCO:SLP:TPD
    13654 MCO:SLP:WUP=-1
    13658 MCO:SLP:MS=368,SMS=0,I1=1,M1=1,I2=255,M2=255
    13662 MCO:SLP:TPD
    13664 MCO:SLP:WUP=-1
    13668 MCO:SLP:MS=358,SMS=0,I1=1,M1=1,I2=255,M2=255
    13674 MCO:SLP:TPD
    13676 MCO:SLP:WUP=-1
    13678 MCO:SLP:MS=348,SMS=0,I1=1,M1=1,I2=255,M2=255
    13684 MCO:SLP:TPD
    13686 MCO:SLP:WUP=-1
    13688 MCO:SLP:MS=338,SMS=0,I1=1,M1=1,I2=255,M2=255
    13694 MCO:SLP:TPD
    13697 MCO:SLP:WUP=-1
    13699 MCO:SLP:MS=327,SMS=0,I1=1,M1=1,I2=255,M2=255
    13705 MCO:SLP:TPD
    13707 MCO:SLP:WUP=-1
    13711 MCO:SLP:MS=315,SMS=0,I1=1,M1=1,I2=255,M2=255
    13715 MCO:SLP:TPD
    13717 MCO:SLP:WUP=-1
    13721 MCO:SLP:MS=305,SMS=0,I1=1,M1=1,I2=255,M2=255
    13727 MCO:SLP:TPD
    13729 MCO:SLP:WUP=-1
    13731 MCO:SLP:MS=295,SMS=0,I1=1,M1=1,I2=255,M2=255
    13737 MCO:SLP:TPD
    13740 MCO:SLP:WUP=-1
    13742 MCO:SLP:MS=284,SMS=0,I1=1,M1=1,I2=255,M2=255
    13748 MCO:SLP:TPD
    13750 MCO:SLP:WUP=-1
    13752 MCO:SLP:MS=274,SMS=0,I1=1,M1=1,I2=255,M2=255
    13758 MCO:SLP:TPD
    13760 MCO:SLP:WUP=-1
    13764 MCO:SLP:MS=262,SMS=0,I1=1,M1=1,I2=255,M2=255
    13768 MCO:SLP:TPD
    13770 MCO:SLP:WUP=-1
    13774 MCO:SLP:MS=252,SMS=0,I1=1,M1=1,I2=255,M2=255
    13778 MCO:SLP:TPD
    13783 MCO:SLP:WUP=-1
    13785 MCO:SLP:MS=241,SMS=0,I1=1,M1=1,I2=255,M2=255
    13791 MCO:SLP:TPD
    13793 MCO:SLP:WUP=-1
    13795 MCO:SLP:MS=231,SMS=0,I1=1,M1=1,I2=255,M2=255
    13801 MCO:SLP:TPD
    13803 MCO:SLP:WUP=-1
    13805 MCO:SLP:MS=221,SMS=0,I1=1,M1=1,I2=255,M2=255
    13811 MCO:SLP:TPD
    13813 MCO:SLP:WUP=-1
    13817 MCO:SLP:MS=209,SMS=0,I1=1,M1=1,I2=255,M2=255
    13821 MCO:SLP:TPD
    13824 MCO:SLP:WUP=-1
    13828 MCO:SLP:MS=198,SMS=0,I1=1,M1=1,I2=255,M2=255
    13832 MCO:SLP:TPD
    13836 MCO:SLP:WUP=-1
    13838 MCO:SLP:MS=188,SMS=0,I1=1,M1=1,I2=255,M2=255
    13844 MCO:SLP:TPD
    13846 MCO:SLP:WUP=-1
    13848 MCO:SLP:MS=178,SMS=0,I1=1,M1=1,I2=255,M2=255
    13854 MCO:SLP:TPD
    13856 MCO:SLP:WUP=-1
    13858 MCO:SLP:MS=168,SMS=0,I1=1,M1=1,I2=255,M2=255
    13864 MCO:SLP:TPD
    13867 MCO:SLP:WUP=-1
    13869 MCO:SLP:MS=157,SMS=0,I1=1,M1=1,I2=255,M2=255
    13875 MCO:SLP:TPD
    13877 MCO:SLP:WUP=-1
    13881 MCO:SLP:MS=145,SMS=0,I1=1,M1=1,I2=255,M2=255
    13885 MCO:SLP:TPD
    13887 MCO:SLP:WUP=-1
    13891 MCO:SLP:MS=135,SMS=0,I1=1,M1=1,I2=255,M2=255
    13895 MCO:SLP:TPD
    13899 MCO:SLP:WUP=-1
    13901 MCO:SLP:MS=125,SMS=0,I1=1,M1=1,I2=255,M2=255
    13907 MCO:SLP:TPD
    13910 MCO:SLP:WUP=-1
    13912 MCO:SLP:MS=114,SMS=0,I1=1,M1=1,I2=255,M2=255
    13918 MCO:SLP:TPD
    13920 MCO:SLP:WUP=-1
    13922 MCO:SLP:MS=104,SMS=0,I1=1,M1=1,I2=255,M2=255
    13928 MCO:SLP:TPD
    13930 MCO:SLP:WUP=-1
    13932 MCO:SLP:MS=94,SMS=0,I1=1,M1=1,I2=255,M2=255
    13938 MCO:SLP:TPD
    13940 MCO:SLP:WUP=-1
    13944 MCO:SLP:MS=82,SMS=0,I1=1,M1=1,I2=255,M2=255
    13948 MCO:SLP:TPD
    13950 MCO:SLP:WUP=-1
    13955 MCO:SLP:MS=71,SMS=0,I1=1,M1=1,I2=255,M2=255
    13959 MCO:SLP:TPD
    13961 MCO:SLP:WUP=-1
    13965 MCO:SLP:MS=61,SMS=0,I1=1,M1=1,I2=255,M2=255
    13969 MCO:SLP:TPD
    13971 MCO:SLP:WUP=-1
    13975 MCO:SLP:MS=51,SMS=0,I1=1,M1=1,I2=255,M2=255
    13979 MCO:SLP:TPD
    13983 MCO:SLP:WUP=-1
    13985 MCO:SLP:MS=41,SMS=0,I1=1,M1=1,I2=255,M2=255
    13991 MCO:SLP:TPD
    13993 MCO:SLP:WUP=-1
    13996 MCO:SLP:MS=30,SMS=0,I1=1,M1=1,I2=255,M2=255
    14002 MCO:SLP:TPD
    14004 MCO:SLP:WUP=-1
    14006 MCO:SLP:MS=20,SMS=0,I1=1,M1=1,I2=255,M2=255
    14012 MCO:SLP:TPD
    14014 MCO:SLP:WUP=-1
    14016 MCO:SLP:MS=10,SMS=0,I1=1,M1=1,I2=255,M2=255
    14022 MCO:SLP:TPD
    14024 MCO:SLP:WUP=-1
    14026 MCO:SLP:MS=0,SMS=0,I1=1,M1=1,I2=255,M2=255
    14032 MCO:SLP:TPD
    

    I'm sorry for asking for help again @core_c but I have no idea what I'm doing wrong....



  • @core_c correction, after I typed and posted this, the serial log started again and it did send the message, this is weird

    14026 MCO:SLP:MS=0,SMS=0,I1=1,M1=1,I2=255,M2=255
    14032 MCO:SLP:TPD
    14034 MCO:SLP:WUP=1
    14047 TSF:MSG:SEND,11-11-0-0,s=7,c=1,t=38,pt=7,l=5,sg=0,ft=0,st=OK:0.85
    14055 MCO:SLP:MS=3000,SMS=0,I1=1,M1=1,I2=255,M2=255
    14059 MCO:SLP:TPD
    14061 MCO:SLP:WUP=-1
    14065 MCO:SLP:MS=2990,SMS=0,I1=1,M1=1,I2=255,M2=255
    14071 MCO:SLP:TPD
    14073 MCO:SLP:WUP=-1
    14075 MCO:SLP:MS=2980,SMS=0,I1=1,M1=1,I2=255,M2=255
    14082 MCO:SLP:TPD
    14084 MCO:SLP:WUP=-1
    14086 MCO:SLP:MS=2969,SMS=0,I1=1,M1=1,I2=255,M2=255
    14092 MCO:SLP:TPD
    14094 MCO:SLP:WUP=-1
    14098 MCO:SLP:MS=2957,SMS=0,I1=1,M1=1,I2=255,M2=255
    14102 MCO:SLP:TPD
    14104 MCO:SLP:WUP=-1
    14108 MCO:SLP:MS=2947,SMS=0,I1=1,M1=1,I2=255,M2=255
    14114 MCO:SLP:TPD
    14116 MCO:SLP:WUP=-1
    14118 MCO:SLP:MS=2937,SMS=0,I1=1,M1=1,I2=255,M2=255
    14125 MCO:SLP:TPD
    14127 MCO:SLP:WUP=-1
    14129 MCO:SLP:MS=2926,SMS=0,I1=1,M1=1,I2=255,M2=255
    14135 MCO:SLP:TPD
    14137 MCO:SLP:WUP=-1
    14141 MCO:SLP:MS=2914,SMS=0,I1=1,M1=1,I2=255,M2=255
    14145 MCO:SLP:TPD
    14147 MCO:SLP:WUP=-1
    14151 MCO:SLP:MS=2904,SMS=0,I1=1,M1=1,I2=255,M2=255
    14157 MCO:SLP:TPD
    14159 MCO:SLP:WUP=-1
    14161 MCO:SLP:MS=2894,SMS=0,I1=1,M1=1,I2=255,M2=255
    14168 MCO:SLP:TPD
    

Log in to reply
 

Suggested Topics

  • 3
  • 2
  • 6
  • 1

49
Online

11.4k
Users

11.1k
Topics

112.7k
Posts