Commit Graph

860 Commits

Author SHA1 Message Date
fros4943
f371965755 bugfix: generated random seeds were not reloaded correctly 2010-01-15 14:00:06 +00:00
fros4943
760818260c using new MotePlugin interface 2010-01-15 10:54:42 +00:00
fros4943
a2b6c39ac2 setFilter() and getFilter() methods made public 2010-01-15 10:54:05 +00:00
fros4943
34844188dd added script example, demonstrating how to interact with surrounding cooja plugins 2010-01-15 10:52:55 +00:00
fros4943
d3f367ff58 statistics extraction public, to be accessible from other plugins and test scripts 2010-01-15 10:51:20 +00:00
fros4943
e16107b053 using MotePlugin interface, rather than object tagging 2010-01-15 10:47:36 +00:00
fros4943
61890416f5 removed obsolete object tagging methods on plugins, earlier only used by mote plugins 2010-01-15 10:46:53 +00:00
fros4943
bddc5ae132 introduced simple MotePlugin interface, to be used by all mote plugins 2010-01-15 10:46:12 +00:00
adamdunkels
51c8ff150e 'Set default' -> 'Save as default' 2010-01-15 10:09:23 +00:00
nifi
bca8104a86 Updated scheduling for user triggered events 2010-01-14 19:06:14 +00:00
nifi
684c91d0fd Changed separator for concatenated mote id and log message for filtering to a space character. 2010-01-13 15:04:47 +00:00
nifi
313f857135 Enabled antialiasing in visualizer paint. 2010-01-13 12:29:10 +00:00
nifi
00d6ae56b6 Added option to filter on concatenated mote id and log message + removed compiler warnings 2010-01-12 15:42:08 +00:00
fros4943
8ee7b3c3be minor fix: remove relations if mote is removed 2010-01-12 09:36:10 +00:00
fros4943
2756ff2e31 improved zooming by slider 2010-01-12 09:11:26 +00:00
fros4943
9ddc25527d explicitly calling startPlugin and showPlugin methods, instead of relying on the plugin constructor to configure the plugin. if a simulation is loaded, startPlugin() is called after the simulation configuration is set 2009-12-14 13:29:35 +00:00
fros4943
32936c3df8 added method to select a log listener message near a given time, similar to timeline and radio logger methods 2009-12-14 13:25:04 +00:00
fros4943
6940c85518 added: zoom in/out via ctrl +/-
removed: mouse tooltip (only appears when mouse is clicked)
2009-12-11 10:41:10 +00:00
fros4943
be1c818938 statistics bug fix: divide by number of motes + show time ruler at zoom in/out 2009-12-07 11:14:02 +00:00
fros4943
c1520a7134 added support for multiple log mote interfaces / mote 2009-12-07 11:06:08 +00:00
fros4943
5e251b837a hide interfered radio events when radio is not on 2009-12-07 11:04:15 +00:00
fros4943
38e0b7918a set radio interfered even when it is turned off -> cca is set immediately when radio is turned on 2009-12-07 11:03:19 +00:00
fros4943
8bd7187491 the simulation object now handles the motetype configuration for motes; common functionality that was earlier implemented in each mote.
this patch allows the simulator more freedom for hand-picking mote class loaders

+ some debug output in experimental ImportAppMoteType
2009-11-27 15:53:10 +00:00
fros4943
236a6eee15 added new application mote type that loads a configurable application mote java class.
the new mote type makes it easier to create and load new application-level motes
2009-11-25 20:52:33 +00:00
fros4943
fa26d2f213 configure and load methods may throw a MoteTypeCreationException 2009-11-25 20:48:22 +00:00
fros4943
93672649d2 made project class loader public + throw exception is mote class could not be loaded 2009-11-25 20:47:18 +00:00
fros4943
ac424ca88a bugfix: interfered nondestination radio 2009-11-25 18:13:05 +00:00
fros4943
7d6ee814da added documentation 2009-11-25 16:05:47 +00:00
fros4943
ff93ba8e0f decreased transmission interval and increased transmission duration of disturber mote, since short packets could still get through with the current settings 2009-11-25 16:03:00 +00:00
fros4943
451be82efd radio connection update: radio should not be removed from destinations, but instead flagged as interfered.
(and the radio medium will keep delivering data also to interfered destinations to avoid the half-filled RXFIFO problem)

+ minor fix: the received signal strength is the maximum of all sending radio
2009-11-25 15:49:58 +00:00
fros4943
5c67d113c8 minor bug fix: arraydequeue may return null entries 2009-11-25 15:44:51 +00:00
fros4943
3c4fe0e3b7 closing fileoutputstream 2009-11-25 15:43:45 +00:00
fros4943
24d0330d2d radio connection update: radio should not be removed from destinations, but instead flagged as interfered 2009-11-25 15:43:03 +00:00
fros4943
45d23c026e new radio medium method signature + increased history size 2009-11-25 15:40:46 +00:00
fros4943
0a9e9dea59 * observing motes' radio states ("is transmitting") instead of radio events ("started transmitting").
previously the last radio event was logged in the Timeline, which could be very confusing when a radio was interfered while transmitting a packet: it looked like the radio stopped transmitting. (this behavior did not, however, affect the simulation output but only the timeline)

* added Radio Logger menu option shortcut, for quickly moving from the Timeline to the Radio Logger plugin
* minor ui fixes regarding event tooltips: tooltip info appear at mouse clicks
2009-11-25 15:39:57 +00:00
fros4943
d27a2dfb5b added Payload Alias for easier overview of several packets with identical payloads.
added Timeline menu option for quickly viewing the selected radio packet in the Timeline plugin.
2009-11-25 15:32:34 +00:00
fros4943
d4f674c053 updated obsolete method signature:
when the radio medium was still tick-based, several radio connection could finish "simultaneously" (during the same tick), which is no longer possible
2009-11-25 15:26:35 +00:00
fros4943
2955eb9798 distinct between a radio connection's interfered radios, and interfered destination radios: interfered destinations still receive connection data
+ faster code and updated documentation
2009-11-25 15:21:15 +00:00
fros4943
01e9498dd9 radio medium update: receiving nodes that become interfered still receive connection data, but may (should) choose to ignore or corrupt it.
this solves a problem with half-filled FIFO buffers on CC2420 radio platforms

+ minor fixes: the received signal strength is the maximum of all active connection, and a transmitting radio may still be interfered
2009-11-25 10:36:08 +00:00
fros4943
5ed294f001 minor patch: remember last exported jar filename 2009-11-25 10:29:21 +00:00
fros4943
857c7d5a9d fixed integer to long wrap bug for simulation times over 2000s 2009-11-23 15:25:13 +00:00
fros4943
c869104e83 bug fix: schedule button events from simulation thread 2009-11-14 11:09:41 +00:00
fros4943
721a698a24 + progress message type 2009-11-13 14:27:46 +00:00
fros4943
a3bd96f97e show compilation warnings dialog after successful load + save config to history even if load fails 2009-11-13 14:25:43 +00:00
fros4943
29310addc5 improved timeline zooming 2009-11-13 13:01:13 +00:00
fros4943
eded6497f2 removed dependency on mote interface getEnergyConsumption() method 2009-11-13 08:52:26 +00:00
fros4943
28f910b8d9 removed delay configuration option + lots of obsolete code from dialog 2009-11-13 08:51:23 +00:00
fros4943
977809144f cleaning up after a removed simulation by the removed() methods +
exposing methods for loading simulations from external plugins +
minor bug fix: the reload progress dialog sometimes disappear even when a simulation is loading
2009-11-13 08:49:26 +00:00
fros4943
467cf88bcd removed energyConsumption() method from mote interface: obsolete, we should instead interface Contiki's power profiler or MSPSim for better estimations
+
added stub removed() method: mote interfaces that need explicit cleanup should override this method
2009-11-13 08:41:06 +00:00
fros4943
499c3b8c26 removeDestination(Mote) method returns true is the argument mote was actually a destination (and hence was removed) 2009-11-13 08:38:45 +00:00
fros4943
a9eecb03df strict event scheduling from simulation thread +
added method for removing mote types from a simulation +
added cleanup-methods for simulation/motes/mote interfaces: void removed();
2009-11-13 08:37:36 +00:00
joxe
474698b36e added common emulation classes for emulated motes 2009-11-10 12:54:39 +00:00
fros4943
91a4322d2b minor fix: show rime address when no IP address was found 2009-11-05 11:54:59 +00:00
fros4943
0b2cd19cac removed debugging output 2009-11-02 13:18:27 +00:00
fros4943
5bd2008def minor fix: check that event is not already scheduled 2009-11-02 10:02:58 +00:00
nifi
a22348a496 Use canonical path to find parent directory when creating config relative path 2009-10-30 15:27:26 +00:00
fros4943
a45aa8e89c minor changes in executable jars: removed jdk dependency on simulating computer + temporary files from simulation are stored in a subdirectory + temporary files from building the jar are removed when done 2009-10-29 17:05:13 +00:00
fros4943
b4a4572d97 added help method for reading from streams 2009-10-29 16:48:50 +00:00
fros4943
54ac5bc64e added two example scripts 2009-10-29 14:39:08 +00:00
fros4943
62c8535678 bugfix: radio medium should reset last connection data before notifying observers that a new connection has begun 2009-10-29 10:31:55 +00:00
fros4943
53b6e0e7fa new feature: generate executable jar from current simulation
useful for preparing a simulation, and then running it elsewhere without having to configure cooja
2009-10-29 10:17:15 +00:00
fros4943
4c7ef8b022 added experimental feature: generate executable JAR from current simulation
+ made some methods public for accessing configuration state etc from outside the GUI class + minor bug fix in reparse projectes method
2009-10-29 10:16:05 +00:00
fros4943
7f1d5c90d6 added method for writing text to files 2009-10-29 10:10:22 +00:00
fros4943
82b8006c0c using MoteTimeEvent instead of TimeEvent: scheduled events are automatically removed when the mote is removed 2009-10-28 15:58:42 +00:00
fros4943
281639c779 fixed potential memory leak when motes are removed during a simulation 2009-10-28 15:42:03 +00:00
fros4943
a4226e14c5 fixed potential memory leak when motes are removed during a simulation 2009-10-28 15:34:34 +00:00
fros4943
51130cea80 fixed potential memory leak: did not unregister mote observer if the mote was removed from the simulation while the skin was active
+
added ability to copy mote IP addresses to clipboard
2009-10-28 15:16:21 +00:00
fros4943
5650e818ec abstract application mote, used for implementing application-level motes, now extends wakeup mote.
+ reimplemented disturber mote using abstract application mote
+ removed obsolete dummy mote example
2009-10-28 14:38:02 +00:00
fros4943
cb04423a57 added default methods for saving and restoring the mote id 2009-10-28 14:35:10 +00:00
nifi
c51956bc8c Minor fix with config relative path and allow external tools editing with specified Contiki path. 2009-10-28 13:37:29 +00:00
fros4943
be230d4d37 exporting paths relative to contiki, not cooja
+ new project management api
2009-10-28 12:07:37 +00:00
fros4943
226a41abbf throw exception if project directory or config file does not exist 2009-10-28 12:05:43 +00:00
fros4943
8e1de297d5 new dialog api + removed lots of obsolete code 2009-10-28 12:03:48 +00:00
fros4943
175e39a3d2 remember last source file used relative to current contiki 2009-10-28 12:02:21 +00:00
fros4943
c5dd2726f3 removed debug output 2009-10-27 10:36:01 +00:00
fros4943
29f618836f new radio medium api 2009-10-27 10:14:09 +00:00
fros4943
38dcc8ed93 extending abstract wakeup mote 2009-10-27 10:12:33 +00:00
fros4943
ed8867bcb5 new event scheduling api 2009-10-27 10:11:17 +00:00
fros4943
a81f216acb radio medium patch: udgm uses hash table for efficient lookup in large networks + minor patches to dgrm 2009-10-27 10:10:03 +00:00
fros4943
59e1c464e7 introduced new abstract mote classes:
AbstractWakeupMote shared functionality common to both contiki-based and mspsim-based motes
2009-10-27 10:07:56 +00:00
fros4943
64293abe03 major update to cooja's event scheduler:
* all events must now be scheduled from the simulation thread
* added new methods for requesting simulation thread execution

this patch solves some race conditions introduced by the new mspsim execution scheduling, but affects many existing plugins and interfaces
2009-10-27 10:06:59 +00:00
fros4943
a344925b50 added methods for writing and reading byte array from files 2009-10-27 09:52:24 +00:00
fros4943
6100734897 added convenience method for accessing active plugins 2009-10-27 09:31:22 +00:00
fros4943
1dba4d40ca minor fix for non-GUI simulations: stop simulation and clean-up before shutting down COOJA 2009-10-23 11:55:53 +00:00
fros4943
d8f31b6630 check that radio connection is non-null when painting radio traffic history 2009-10-19 17:37:50 +00:00
fros4943
1c4b6afea3 minor feature: show mouse drag distance (in time) from mouse press 2009-10-19 17:36:28 +00:00
fros4943
9d7275db7e added option to limit the number of messages in list 2009-10-19 17:33:25 +00:00
fros4943
2bc52699c6 bugfix: removed-flag should become false when rescheduling unsorted event 2009-10-19 17:32:38 +00:00
fros4943
2c1b7013d5 by request: added mote type visualizer skin 2009-10-16 13:14:53 +00:00
nifi
51cbcd9193 minor bug fix: enforce string to avoid merging mote ids 2009-09-24 08:56:17 +00:00
fros4943
0c4dc6fc6b start plugins in non-dispatcher thread 2009-09-18 16:13:31 +00:00
fros4943
e974b896dc removing unsafe MoteID interface dependencies 2009-09-17 13:19:08 +00:00
fros4943
87aa2c2aad bug fix: z-coord was not painted + some (even) positions caused errors 2009-09-17 12:38:04 +00:00
fros4943
ca0f2c91c8 paint both actual transmission range (depends on current tx power), and the maximum value as configured in the radio medium 2009-09-17 12:10:28 +00:00
fros4943
b526851ac1 added getID() stub to avoid compiler errors: the application motes does not yet respect the configured mote IDs 2009-09-17 11:12:25 +00:00
fros4943
b2ea7ba9b2 removed reference to potentially non-existing mote ID interface: the mote getID() method should instead be used 2009-09-17 11:07:58 +00:00
fros4943
8116da5c4e removed mote state references 2009-09-17 11:06:35 +00:00
fros4943
62287dcb03 implements mandatory getID() method 2009-09-17 11:05:56 +00:00
fros4943
72105a161e added getID() method (mandatory for all motes)
removed the common state notion: these are instead mote specific
2009-09-17 11:05:09 +00:00
nvt-se
b5295fef10 use PATH_MAKE when compiling Contiki mote types. doesn't work on BSD systems
otherwise.
2009-09-07 15:05:05 +00:00
fros4943
eacda19281 support for extracting very simple statistics from observed events 2009-08-27 16:38:09 +00:00
fros4943
a69c8f03fe minor update: sorting variables by name + decreased default plugin size 2009-08-27 14:38:57 +00:00
fros4943
39aeb2f150 visualizer skin updates: broke out traffic visualization from the udgm radio medium skin (the stand-alone traffic skin can be used with any radio medium), added a simple background grid skin and a mote position skin 2009-08-27 13:59:47 +00:00
fros4943
23f13a2b6f visualizer plugin major update: support for zooming and panning, hiding window decorations, and a more powerful visualization skin api 2009-08-27 13:57:42 +00:00
nvt-se
b8e268e598 Added FreeBSD support.
Made the Sky mote type use PATH_MAKE for the build procedure.
2009-08-27 12:25:11 +00:00
fros4943
d13f47a64f bugfix: clock drift must be set even when the random startup delay is zero 2009-08-20 13:10:35 +00:00
nifi
e8c11209da added notification to model when removing events 2009-07-06 14:04:21 +00:00
fros4943
28976d9e15 allow simulation delays below real-time 2009-07-06 12:29:57 +00:00
fros4943
d5a7a18145 more debugging output + minor refactoring 2009-07-03 14:06:20 +00:00
fros4943
739e21caaf + support for configurable buffer sizes (currently only for log output events) 2009-07-03 13:37:40 +00:00
fros4943
d282c70572 using event central for keeping track of simulation motes + for sharing log output events among different log listeners.
note that at least one log listener plugin must be kept opened, otherwise the event central will clear the history
2009-07-02 12:07:18 +00:00
fros4943
47bf1de4ca using event central for keeping track of simulation motes 2009-07-02 12:05:24 +00:00
fros4943
9b164adc35 method for accessing event central + include mote when notifying simulation observers that a mote was added/removed 2009-07-02 12:04:28 +00:00
fros4943
f13a313a7d event central used for simplifying plugin implementations: a plugin can listen for simulation-wide mote interface changes via this class, and does not need to keep track of added/removed motes.
in addition, the event central may be configured to keep an event history of selected mote interface events, useful for sharing events among several different plugins
2009-07-02 12:03:09 +00:00
fros4943
fe0f03a5fd help methods for manipulating arrays 2009-07-02 11:58:37 +00:00
nifi
ac11dc90d8 only reload with new seed if simulation exists 2009-06-30 13:31:42 +00:00
nifi
adbe225132 removed unused import 2009-06-30 13:10:14 +00:00
fros4943
5a053d7d4e added quick help 2009-06-30 12:46:26 +00:00
fros4943
bed44c8f55 made desktop scrollable + added quick help pane (keyboard F1) 2009-06-30 12:45:51 +00:00
fros4943
e36479f0b5 added mote separator background colors + painting LED events as three thin lines (RGB) instead of in a single color 2009-06-25 16:44:08 +00:00
fros4943
124380e354 more efficient toggle warnings implementation + listen to all popup triggers 2009-06-25 15:46:57 +00:00
fros4943
e6fa5334ae print random seed and end time to all test logs 2009-06-24 14:08:14 +00:00
fros4943
25893c463e minor fixes: allow copy to clipboard and output to console when hinding stdout + always show the last output 2009-06-24 14:07:19 +00:00
fros4943
b70f013ab4 added support for hiding normal output, only showing warnings/errors 2009-06-24 12:41:05 +00:00
fros4943
5d20b01f04 bugfix: random generator was initialized differently at load vs reload 2009-06-24 07:56:15 +00:00
fros4943
e353666550 removed regexp filtering on time column 2009-06-23 12:57:19 +00:00
fros4943
34584fc05e show watchpoint colors and use a fix watchpoint event width 2009-06-16 12:16:02 +00:00
fros4943
752e80167b added breakpoint colors and user defined messages 2009-06-16 12:15:15 +00:00
fros4943
ebb47546a2 replaceFirst() also for Contiki relative paths + verify that the generated config path is valid 2009-06-15 18:13:45 +00:00
fros4943
d7b35b5b40 bugfix: only replace the first instance when generating portable paths (simulation configs) 2009-06-15 17:43:48 +00:00
fros4943
9dd0e076a6 GENERATE_MESSAGE() argument in milliseconds 2009-06-15 17:39:02 +00:00
fros4943
32ac82fc22 added debugging output + generated javascript code tooltip 2009-06-15 16:53:32 +00:00
fros4943
67bca87c1d bugfix: remove unsorted time event 2009-06-15 16:51:42 +00:00
fros4943
a45e2382b2 bugfix: do not activate script engine according to simulation config in test mode (without GUI), instead, always keep it activated
+ more debugging output
2009-06-15 15:41:32 +00:00
fros4943
4c4cdeb546 schedule wakeup after new data has been written 2009-06-15 14:40:28 +00:00
fros4943
244d780809 support for character arrays + various UI updates, contributed by Kasun Hewage. 2009-06-15 11:59:21 +00:00
fros4943
4a4630d9ec added menu options: copy to clipboard and save to file 2009-06-15 10:53:24 +00:00
fros4943
3c7d0329ef minor fixes: integer wrap in repaint method + check watchpoint cast 2009-06-15 09:47:05 +00:00
fros4943
61885eba09 added menu options: copy to clipboard and save to file 2009-06-15 08:34:51 +00:00
fros4943
e7a6df77f3 directly call java script method instead of parsing GENERATE_MESSAGE calls 2009-06-12 15:12:46 +00:00
nifi
e7c13890ee log listener plugin update: support for regexp filtering + nicer ui
+ minor tooltip fix in radio logger
2009-06-12 14:34:29 +00:00
nifi
b2c0df08af radio logger update: autosizing columns + support for new microsecond resolution + some minor fixes 2009-06-12 14:12:59 +00:00
nifi
be03c380c5 Show config file when reloading 2009-06-12 13:00:57 +00:00
fros4943
3b25d8b5e4 no stack trace printout when a visualized plugin fails to in test mode 2009-06-11 10:23:29 +00:00
fros4943
a39b87f214 implemented watchpoint visualization +
saving current zoom and divider locations in simulation configs
2009-06-11 10:02:53 +00:00
fros4943
b63322ebb1 added simple watchpoint interfaces, currently only implemented on mspsim motes 2009-06-11 10:02:11 +00:00
fros4943
8a44b78934 + startPlugin method throws exceptions 2009-06-10 15:57:08 +00:00
fros4943
1776fb0449 bugfix: if timer expired but was not yet handled due to long running operations (such as radio transmits), warn and reschedule timer handling later 2009-06-09 19:12:30 +00:00
fros4943
02733e15ab made test editor plugin a simulation plugin: it now depends on a specific simulation
this change enables multiple simultaneous scripts in a simulation, and also makes it easier to create tests since they will be stored with the simulation config

since the plugin now depends on a simulation it is no longer possible to create/reload simulations from the test scripts (this was however not often used)
2009-06-09 09:47:04 +00:00
fros4943
5bac672099 added help methods for reading text files from disk 2009-06-09 09:42:01 +00:00