Commit graph

792 commits

Author SHA1 Message Date
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