1 <?xml version=
"1.0" encoding=
"UTF-8"?>
3 <project EXPORT=
"discard">[CONTIKI_DIR]/tools/cooja/apps/mrm
</project>
4 <project EXPORT=
"discard">[CONTIKI_DIR]/tools/cooja/apps/mspsim
</project>
5 <project EXPORT=
"discard">[CONTIKI_DIR]/tools/cooja/apps/avrora
</project>
6 <project EXPORT=
"discard">[CONTIKI_DIR]/tools/cooja/apps/native_gateway
</project>
8 <title>My simulation
</title>
9 <delaytime>-
2147483648</delaytime>
10 <randomseed>generated
</randomseed>
11 <motedelay_us>1000000</motedelay_us>
13 se.sics.cooja.radiomediums.UDGM
14 <transmitting_range>25.0</transmitting_range>
15 <interference_range>0.0</interference_range>
16 <success_ratio_tx>1.0</success_ratio_tx>
17 <success_ratio_rx>1.0</success_ratio_rx>
20 <logoutput>40000</logoutput>
23 se.sics.cooja.contikimote.ContikiMoteType
24 <identifier>mtype611
</identifier>
25 <description>Contiki Mote Type #
1</description>
26 <contikiapp>[CONTIKI_DIR]/examples/telnet-server/telnet-server.c
</contikiapp>
27 <commands>make telnet-server.cooja TARGET=cooja
</commands>
28 <moteinterface>se.sics.cooja.interfaces.Position
</moteinterface>
29 <moteinterface>se.sics.cooja.interfaces.Battery
</moteinterface>
30 <moteinterface>se.sics.cooja.contikimote.interfaces.ContikiVib
</moteinterface>
31 <moteinterface>se.sics.cooja.contikimote.interfaces.ContikiMoteID
</moteinterface>
32 <moteinterface>se.sics.cooja.contikimote.interfaces.ContikiRS232
</moteinterface>
33 <moteinterface>se.sics.cooja.contikimote.interfaces.ContikiBeeper
</moteinterface>
34 <moteinterface>se.sics.cooja.interfaces.RimeAddress
</moteinterface>
35 <moteinterface>se.sics.cooja.contikimote.interfaces.ContikiIPAddress
</moteinterface>
36 <moteinterface>se.sics.cooja.contikimote.interfaces.ContikiRadio
</moteinterface>
37 <moteinterface>se.sics.cooja.contikimote.interfaces.ContikiButton
</moteinterface>
38 <moteinterface>se.sics.cooja.contikimote.interfaces.ContikiPIR
</moteinterface>
39 <moteinterface>se.sics.cooja.contikimote.interfaces.ContikiClock
</moteinterface>
40 <moteinterface>se.sics.cooja.contikimote.interfaces.ContikiLED
</moteinterface>
41 <moteinterface>se.sics.cooja.contikimote.interfaces.ContikiCFS
</moteinterface>
42 <moteinterface>se.sics.cooja.interfaces.Mote2MoteRelations
</moteinterface>
43 <symbols>false
</symbols>
47 se.sics.cooja.interfaces.Position
53 se.sics.cooja.contikimote.interfaces.ContikiMoteID
56 <motetype_identifier>mtype611
</motetype_identifier>
60 se.sics.cooja.interfaces.Position
66 se.sics.cooja.contikimote.interfaces.ContikiMoteID
69 <motetype_identifier>mtype611
</motetype_identifier>
73 se.sics.cooja.interfaces.Position
79 se.sics.cooja.contikimote.interfaces.ContikiMoteID
82 <motetype_identifier>mtype611
</motetype_identifier>
86 se.sics.cooja.interfaces.Position
92 se.sics.cooja.contikimote.interfaces.ContikiMoteID
95 <motetype_identifier>mtype611
</motetype_identifier>
99 se.sics.cooja.interfaces.Position
105 se.sics.cooja.contikimote.interfaces.ContikiMoteID
108 <motetype_identifier>mtype611
</motetype_identifier>
112 se.sics.cooja.plugins.SimControl
116 <location_x>0</location_x>
117 <location_y>0</location_y>
118 <minimized>false
</minimized>
121 se.sics.cooja.plugins.Visualizer
123 <skin>se.sics.cooja.plugins.skins.AddressVisualizerSkin
</skin>
124 <skin>se.sics.cooja.plugins.skins.IDVisualizerSkin
</skin>
125 <skin>se.sics.cooja.plugins.skins.UDGMVisualizerSkin
</skin>
126 <skin>se.sics.cooja.plugins.skins.LEDVisualizerSkin
</skin>
127 <skin>se.sics.cooja.plugins.skins.TrafficVisualizerSkin
</skin>
128 <skin>se.sics.cooja.plugins.skins.GridVisualizerSkin
</skin>
129 <viewport>6.0123843024302435 0.0 0.0 6.0123843024302435 81.22165451665171 95.03179722772279</viewport>
135 <location_x>246</location_x>
136 <location_y>2</location_y>
137 <minimized>false
</minimized>
140 se.sics.cooja.plugins.ScriptRunner
142 <script>TIMEOUT(
300000);
148 osName = java.lang.System.getProperty(
"os.name").toLowerCase();
149 if (osName.startsWith(
"win")) {
150 pingCmd =
"ping -n " + NR_PINGS +
" "; /* + ip */
152 pingCmd =
"ping -c " + NR_PINGS +
" "; /* + ip */
154 var nrReplies = new Array();
155 replyMsg =
"from "; /* + ip */
157 /* wait for all motes to boot */
159 while (currentMote
<= NR_MOTES) {
160 YIELD_THEN_WAIT_UNTIL(msg.contains('Telnet server'));
161 log.log(
"Mote " + id +
" booted\n");
166 GENERATE_MSG(
1000,
"continue");
167 WAIT_UNTIL(msg.equals(
"continue"));
169 /* override simulation delay to realtime */
170 mote.getSimulation().setDelayTime(java.lang.Integer.MIN_VALUE);
174 while (currentMote
<= NR_MOTES) {
175 nrReplies[currentMote] =
0;
176 ip = mote.getSimulation().getMoteWithID(currentMote).getInterfaces().getIPAddress().getIPString();
177 log.log(
"Pinging mote " + currentMote +
"\n");
178 motePingCmd = pingCmd + ip;
179 log.log(
"> " + motePingCmd +
"\n");
182 var pingRunnable = new Object();
183 pingRunnable.run = function() {
184 pingProcess = new java.lang.Runtime.getRuntime().exec(motePingCmd);
185 stdIn = new java.io.BufferedReader(new java.io.InputStreamReader(pingProcess.getInputStream()));
186 while ((line = stdIn.readLine()) != null) {
187 if (line != null
&& !line.trim().equals(
"")) {
188 log.log(
"< " + line +
"\n");
190 if (line.contains(replyMsg + ip)) {
191 nrReplies[currentMote]++;
194 pingProcess.destroy();
196 var thread = new java.lang.Thread(new java.lang.Runnable(pingRunnable));
199 while (thread.isAlive()) {
200 GENERATE_MSG(
500,
"continue");
201 YIELD_THEN_WAIT_UNTIL(msg.equals(
"continue"));
207 log.log(
"\nTEST SUMMARY:\n")
210 while (currentMote
<= NR_MOTES) {
211 log.log(
"Ping replies from mote " + currentMote +
": " + nrReplies[currentMote] +
"/" + NR_PINGS +
"\n")
212 if (nrReplies[currentMote]
< NR_PINGS_MIN) {
222 log.testFailed();
</script>
223 <active>true
</active>
228 <location_x>903</location_x>
229 <location_y>1</location_y>
230 <minimized>false
</minimized>
233 se.sics.cooja.plugins.LogListener
240 <location_x>0</location_x>
241 <location_y>519</location_y>
242 <minimized>false
</minimized>
245 se.sics.cooja.plugins.NativeIPGateway
246 <mote_arg>0</mote_arg>
248 <network_interface>\Device\NPF_{
8ABD0E53-
3824-
4541-B397-
5FAF535206CF}
</network_interface>
249 <register_routes>true
</register_routes>
254 <location_x>1</location_x>
255 <location_y>200</location_y>
256 <minimized>false
</minimized>
259 se.sics.cooja.plugins.RadioLogger
266 <location_x>389</location_x>
267 <location_y>200</location_y>
268 <minimized>false
</minimized>
271 se.sics.cooja.plugins.TimeLine
285 <location_x>903</location_x>
286 <location_y>702</location_y>
287 <minimized>false
</minimized>