2013-11-20 22:36:22 +01:00
|
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
|
|
<simconf>
|
|
|
|
<project EXPORT="discard">[APPS_DIR]/mrm</project>
|
|
|
|
<project EXPORT="discard">[APPS_DIR]/mspsim</project>
|
|
|
|
<project EXPORT="discard">[APPS_DIR]/avrora</project>
|
|
|
|
<project EXPORT="discard">[APPS_DIR]/serial_socket</project>
|
|
|
|
<project EXPORT="discard">[APPS_DIR]/collect-view</project>
|
|
|
|
<project EXPORT="discard">[APPS_DIR]/powertracker</project>
|
|
|
|
<simulation>
|
|
|
|
<title>My simulation</title>
|
|
|
|
<randomseed>generated</randomseed>
|
|
|
|
<motedelay_us>1000000</motedelay_us>
|
|
|
|
<radiomedium>
|
|
|
|
org.contikios.cooja.radiomediums.UDGM
|
|
|
|
<transmitting_range>41.0</transmitting_range>
|
|
|
|
<interference_range>55.0</interference_range>
|
|
|
|
<success_ratio_tx>1.0</success_ratio_tx>
|
|
|
|
<success_ratio_rx>1.0</success_ratio_rx>
|
|
|
|
</radiomedium>
|
|
|
|
<events>
|
|
|
|
<logoutput>40000</logoutput>
|
|
|
|
</events>
|
|
|
|
<motetype>
|
|
|
|
org.contikios.cooja.mspmote.SkyMoteType
|
|
|
|
<identifier>sky1</identifier>
|
|
|
|
<description>Sky Mote Type #1</description>
|
|
|
|
<source EXPORT="discard">[CONTIKI_DIR]/examples/rime/example-trickle.c</source>
|
|
|
|
<commands EXPORT="discard">make clean TARGET=sky
|
|
|
|
make example-trickle.sky TARGET=sky</commands>
|
|
|
|
<firmware EXPORT="copy">[CONTIKI_DIR]/examples/rime/example-trickle.sky</firmware>
|
|
|
|
<moteinterface>org.contikios.cooja.interfaces.Position</moteinterface>
|
|
|
|
<moteinterface>org.contikios.cooja.interfaces.IPAddress</moteinterface>
|
|
|
|
<moteinterface>org.contikios.cooja.interfaces.Mote2MoteRelations</moteinterface>
|
|
|
|
<moteinterface>org.contikios.cooja.mspmote.interfaces.MspClock</moteinterface>
|
|
|
|
<moteinterface>org.contikios.cooja.mspmote.interfaces.MspMoteID</moteinterface>
|
|
|
|
<moteinterface>org.contikios.cooja.mspmote.interfaces.SkyButton</moteinterface>
|
|
|
|
<moteinterface>org.contikios.cooja.mspmote.interfaces.SkyFlash</moteinterface>
|
|
|
|
<moteinterface>org.contikios.cooja.mspmote.interfaces.Msp802154Radio</moteinterface>
|
|
|
|
<moteinterface>org.contikios.cooja.mspmote.interfaces.MspSerial</moteinterface>
|
|
|
|
<moteinterface>org.contikios.cooja.mspmote.interfaces.SkyLED</moteinterface>
|
|
|
|
</motetype>
|
|
|
|
<mote>
|
|
|
|
<breakpoints />
|
|
|
|
<interface_config>
|
|
|
|
org.contikios.cooja.interfaces.Position
|
|
|
|
<x>21.25615651441164</x>
|
|
|
|
<y>15.906616513243888</y>
|
|
|
|
<z>0.0</z>
|
|
|
|
</interface_config>
|
|
|
|
<interface_config>
|
|
|
|
org.contikios.cooja.mspmote.interfaces.MspMoteID
|
|
|
|
<id>1</id>
|
|
|
|
</interface_config>
|
|
|
|
<motetype_identifier>sky1</motetype_identifier>
|
|
|
|
</mote>
|
|
|
|
<mote>
|
|
|
|
<breakpoints />
|
|
|
|
<interface_config>
|
|
|
|
org.contikios.cooja.interfaces.Position
|
|
|
|
<x>29.258648178869528</x>
|
|
|
|
<y>64.81243553163958</y>
|
|
|
|
<z>0.0</z>
|
|
|
|
</interface_config>
|
|
|
|
<interface_config>
|
|
|
|
org.contikios.cooja.mspmote.interfaces.MspMoteID
|
|
|
|
<id>2</id>
|
|
|
|
</interface_config>
|
|
|
|
<motetype_identifier>sky1</motetype_identifier>
|
|
|
|
</mote>
|
|
|
|
<mote>
|
|
|
|
<breakpoints />
|
|
|
|
<interface_config>
|
|
|
|
org.contikios.cooja.interfaces.Position
|
|
|
|
<x>53.58390840870132</x>
|
|
|
|
<y>99.01827951434828</y>
|
|
|
|
<z>0.0</z>
|
|
|
|
</interface_config>
|
|
|
|
<interface_config>
|
|
|
|
org.contikios.cooja.mspmote.interfaces.MspMoteID
|
|
|
|
<id>3</id>
|
|
|
|
</interface_config>
|
|
|
|
<motetype_identifier>sky1</motetype_identifier>
|
|
|
|
</mote>
|
|
|
|
<mote>
|
|
|
|
<breakpoints />
|
|
|
|
<interface_config>
|
|
|
|
org.contikios.cooja.interfaces.Position
|
|
|
|
<x>4.089137066756255</x>
|
|
|
|
<y>57.26244252237209</y>
|
|
|
|
<z>0.0</z>
|
|
|
|
</interface_config>
|
|
|
|
<interface_config>
|
|
|
|
org.contikios.cooja.mspmote.interfaces.MspMoteID
|
|
|
|
<id>4</id>
|
|
|
|
</interface_config>
|
|
|
|
<motetype_identifier>sky1</motetype_identifier>
|
|
|
|
</mote>
|
|
|
|
<mote>
|
|
|
|
<breakpoints />
|
|
|
|
<interface_config>
|
|
|
|
org.contikios.cooja.interfaces.Position
|
|
|
|
<x>84.2311285004563</x>
|
|
|
|
<y>14.6212837520458</y>
|
|
|
|
<z>0.0</z>
|
|
|
|
</interface_config>
|
|
|
|
<interface_config>
|
|
|
|
org.contikios.cooja.mspmote.interfaces.MspMoteID
|
|
|
|
<id>5</id>
|
|
|
|
</interface_config>
|
|
|
|
<motetype_identifier>sky1</motetype_identifier>
|
|
|
|
</mote>
|
|
|
|
<mote>
|
|
|
|
<breakpoints />
|
|
|
|
<interface_config>
|
|
|
|
org.contikios.cooja.interfaces.Position
|
|
|
|
<x>40.97868508483131</x>
|
|
|
|
<y>69.00112748842623</y>
|
|
|
|
<z>0.0</z>
|
|
|
|
</interface_config>
|
|
|
|
<interface_config>
|
|
|
|
org.contikios.cooja.mspmote.interfaces.MspMoteID
|
|
|
|
<id>6</id>
|
|
|
|
</interface_config>
|
|
|
|
<motetype_identifier>sky1</motetype_identifier>
|
|
|
|
</mote>
|
|
|
|
<mote>
|
|
|
|
<breakpoints />
|
|
|
|
<interface_config>
|
|
|
|
org.contikios.cooja.interfaces.Position
|
|
|
|
<x>34.348646576361716</x>
|
|
|
|
<y>33.331938472933615</y>
|
|
|
|
<z>0.0</z>
|
|
|
|
</interface_config>
|
|
|
|
<interface_config>
|
|
|
|
org.contikios.cooja.mspmote.interfaces.MspMoteID
|
|
|
|
<id>7</id>
|
|
|
|
</interface_config>
|
|
|
|
<motetype_identifier>sky1</motetype_identifier>
|
|
|
|
</mote>
|
|
|
|
<mote>
|
|
|
|
<breakpoints />
|
|
|
|
<interface_config>
|
|
|
|
org.contikios.cooja.interfaces.Position
|
|
|
|
<x>76.46661251540715</x>
|
|
|
|
<y>62.393168145801916</y>
|
|
|
|
<z>0.0</z>
|
|
|
|
</interface_config>
|
|
|
|
<interface_config>
|
|
|
|
org.contikios.cooja.mspmote.interfaces.MspMoteID
|
|
|
|
<id>8</id>
|
|
|
|
</interface_config>
|
|
|
|
<motetype_identifier>sky1</motetype_identifier>
|
|
|
|
</mote>
|
|
|
|
<mote>
|
|
|
|
<breakpoints />
|
|
|
|
<interface_config>
|
|
|
|
org.contikios.cooja.interfaces.Position
|
|
|
|
<x>87.91615665417679</x>
|
|
|
|
<y>41.2939192052263</y>
|
|
|
|
<z>0.0</z>
|
|
|
|
</interface_config>
|
|
|
|
<interface_config>
|
|
|
|
org.contikios.cooja.mspmote.interfaces.MspMoteID
|
|
|
|
<id>9</id>
|
|
|
|
</interface_config>
|
|
|
|
<motetype_identifier>sky1</motetype_identifier>
|
|
|
|
</mote>
|
|
|
|
<mote>
|
|
|
|
<breakpoints />
|
|
|
|
<interface_config>
|
|
|
|
org.contikios.cooja.interfaces.Position
|
|
|
|
<x>25.396991214895582</x>
|
|
|
|
<y>87.22076662391413</y>
|
|
|
|
<z>0.0</z>
|
|
|
|
</interface_config>
|
|
|
|
<interface_config>
|
|
|
|
org.contikios.cooja.mspmote.interfaces.MspMoteID
|
|
|
|
<id>10</id>
|
|
|
|
</interface_config>
|
|
|
|
<motetype_identifier>sky1</motetype_identifier>
|
|
|
|
</mote>
|
|
|
|
</simulation>
|
|
|
|
<plugin>
|
|
|
|
org.contikios.cooja.plugins.Visualizer
|
|
|
|
<plugin_config>
|
|
|
|
<skin>org.contikios.cooja.plugins.skins.IDVisualizerSkin</skin>
|
|
|
|
<skin>org.contikios.cooja.plugins.skins.UDGMVisualizerSkin</skin>
|
|
|
|
<viewport>1.2387343127698363 0.0 0.0 1.2387343127698363 92.01494285570652 -13.3846131531305</viewport>
|
|
|
|
</plugin_config>
|
|
|
|
<width>310</width>
|
|
|
|
<z>2</z>
|
|
|
|
<height>169</height>
|
|
|
|
<location_x>2</location_x>
|
|
|
|
<location_y>199</location_y>
|
|
|
|
</plugin>
|
|
|
|
<plugin>
|
|
|
|
org.contikios.cooja.plugins.SimControl
|
|
|
|
<width>313</width>
|
|
|
|
<z>3</z>
|
|
|
|
<height>199</height>
|
|
|
|
<location_x>1</location_x>
|
|
|
|
<location_y>0</location_y>
|
|
|
|
</plugin>
|
|
|
|
<plugin>
|
|
|
|
org.contikios.cooja.plugins.LogListener
|
|
|
|
<plugin_config>
|
|
|
|
<filter />
|
|
|
|
<formatted_time />
|
|
|
|
<coloring />
|
|
|
|
</plugin_config>
|
|
|
|
<width>310</width>
|
|
|
|
<z>1</z>
|
|
|
|
<height>331</height>
|
|
|
|
<location_x>3</location_x>
|
|
|
|
<location_y>368</location_y>
|
|
|
|
</plugin>
|
|
|
|
<plugin>
|
|
|
|
org.contikios.cooja.plugins.ScriptRunner
|
|
|
|
<plugin_config>
|
|
|
|
<script>TIMEOUT(120000, log.log(nr_packets[1] + ", " + nr_packets[2] + ", " + nr_packets[3] + ", " + nr_packets[4] + ", " + nr_packets[5] + ", " + nr_packets[6] + ", " + nr_packets[7] + ", " + nr_packets[8] + ", " + nr_packets[9] + ", " + nr_packets[10] + "\n"));
|
|
|
|
|
|
|
|
nr_packets = new Array();
|
|
|
|
for (i=1; i <= 10; i++) {
|
|
|
|
nr_packets[i] = 0;
|
|
|
|
}
|
|
|
|
|
|
|
|
WAIT_UNTIL(id == 1 && msg.contains('Starting'));
|
|
|
|
GENERATE_MSG(1000, "continue");
|
|
|
|
YIELD_THEN_WAIT_UNTIL(msg.equals("continue"));
|
|
|
|
log.log("Node 1 started. Clicking node button.\n");
|
|
|
|
mote.getInterfaces().getButton().clickButton()
|
|
|
|
|
|
|
|
while (true) {
|
|
|
|
/* Only handle receive messages */
|
|
|
|
YIELD_THEN_WAIT_UNTIL(msg.contains('received'));
|
|
|
|
|
|
|
|
/* Remember receiving node */
|
|
|
|
log.log(id + " received a message\n");
|
|
|
|
nr_packets[id]++;
|
|
|
|
|
|
|
|
/* Did all nodes (2-10) receive a message? */
|
|
|
|
for (i = 2; i <= 10; i++) {
|
|
|
|
if (nr_packets[i] < 1) break;
|
|
|
|
if (i == 10) log.testOK(); /* Report test success */
|
|
|
|
}
|
|
|
|
}</script>
|
|
|
|
<active>true</active>
|
|
|
|
</plugin_config>
|
|
|
|
<width>600</width>
|
|
|
|
<z>0</z>
|
|
|
|
<height>700</height>
|
|
|
|
<location_x>314</location_x>
|
|
|
|
<location_y>0</location_y>
|
|
|
|
</plugin>
|
|
|
|
</simconf>
|
|
|
|
|