bugfix: wrapping signal strength updates in separate event, to be executed after the last byte received

This commit is contained in:
fros4943 2010-03-08 11:29:39 +00:00
parent c1ce8721d8
commit 03605a568c

View File

@ -26,7 +26,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE. * SUCH DAMAGE.
* *
* $Id: SkyByteRadio.java,v 1.22 2010/02/03 19:15:15 fros4943 Exp $ * $Id: SkyByteRadio.java,v 1.23 2010/03/08 11:29:39 fros4943 Exp $
*/ */
package se.sics.cooja.mspmote.interfaces; package se.sics.cooja.mspmote.interfaces;
@ -329,8 +329,13 @@ public class SkyByteRadio extends Radio implements CustomDataRadio {
return cc2420.getRSSI(); return cc2420.getRSSI();
} }
public void setCurrentSignalStrength(double signalStrength) { public void setCurrentSignalStrength(final double signalStrength) {
cc2420.setRSSI((int) signalStrength); getMote().getSimulation().scheduleEvent(new MspMoteTimeEvent(mote, 0) {
public void execute(long t) {
super.execute(t);
cc2420.setRSSI((int) signalStrength);
}
}, mote.getSimulation().getSimulationTime());
} }
public JPanel getInterfaceVisualizer() { public JPanel getInterfaceVisualizer() {