diff --git a/src/ANTChannel.cpp b/src/ANTChannel.cpp index d11778114..4ed7e088c 100755 --- a/src/ANTChannel.cpp +++ b/src/ANTChannel.cpp @@ -42,7 +42,7 @@ ANTChannel::ANTChannel(int number, ANT *parent) : number(number), parent(parent) messages_received=0; messages_dropped=0; setId(); - srm_offset=0; + srm_offset=400; // default relatively arbitrary, but matches common 'indoors' values burstInit(); } @@ -237,6 +237,9 @@ void ANTChannel::broadcastEvent(unsigned char *ant_message) { ANTMessage antMessage(parent, ant_message); + bool savemessage = true; // flag to stop lastmessage being + // overwritten for standard power + // messages unsigned char *message=ant_message+2; double timestamp=get_timestamp(); @@ -245,6 +248,7 @@ void ANTChannel::broadcastEvent(unsigned char *ant_message) last_message_timestamp=timestamp; if (state != MESSAGE_RECEIVED) { +qDebug()<<"who are you? sent"; // first message! who are we talking to? parent->sendMessage(ANTMessage::requestMessage(number, ANT_CHANNEL_ID)); blanking_timestamp=get_timestamp(); @@ -292,7 +296,6 @@ void ANTChannel::broadcastEvent(unsigned char *ant_message) // Always ack calibs unless they are acks too! if (antMessage.data[6] != 0xAC) { antMessage.data[6] = 0xAC; - qDebug()<<"sending calibration ack..."; parent->sendMessage(antMessage); } @@ -331,6 +334,7 @@ qDebug()<<"got new offset!"<= 4) { // 4 messages on an SRM parent->setWatts(0); @@ -401,21 +405,20 @@ qDebug()<<"got new offset!"<setWatts(antMessage.instantPower); - } else { - nullCount++; - - if (nullCount >= 4) { // 4 messages on Standard Power ? XXX validate this - parent->setWatts(0); - } } + lastStdPwrMessage = antMessage; + savemessage = false; } break; @@ -537,7 +540,10 @@ qDebug()<<"got new offset!"<