04/14/2008 (v1.0.0) Original Release 04/24/2008 (v1.0.1) * updated Manual * updated Airplane-based deployment GUI 04/30/2008 (v1.0.2) * updated Manual + added missing file SIDnet-SWANS/src/sidnet/route/RoutingTable.java 05/02/2008 (v1.0.3) * updated Manual + Adding nodes "TYPES" in support for heterogeneous networks * mods sidnet/interfaces/NodeAPI.java * mods sidnet/misc/Node.java 05/05/2008 (v1.0.4) * updated Manual * !!! * Code refactoring for ColorProfiles. Renamed ColorCode*.java to ColorProfile*.java and placed them in their own package sidnet/colorprofiles/ 06/10/2008 (v1.0.5) * Redesigned the ColorProfiles code for easier development. ColorProfile.java has been changed from "interface" to "abstract" to incorporate the associated functionality. Thus, the user can configure his colors easier. A user can define a profile by extending the ColorProfile.java file. * updated Manual to reflect the changes made to ColorProfile 07/24/2008 (v.1.1.0) New Features: + Mac802.15.4 MAC/PHY implementations Bug fixes: + added getRadioState() method to EnergyModel interface + HeartbeatProtocol: warn (rather than fail) when receiving messages not designed for this protocol. 07/30/2008 (v.1.2.0) * Major Refactoring of directory and packaging structure * Major Refactoring and clean-up of the Statistics collector function * Updated manual 08/01/2008 (v1.2.1) * Fixed incorrect packaging in 802_15_4 * Fixed packet transmission rate for channel #0 (20kbps) in Mac802_15_4 * Modified StatCollector so that it enabled logging on files ONLY when doing experiments (that is, specify experimentId and runId) 08/12/2008 (v.1.2.2) * Fixed the no-queuing issue (task overflow) with 802_15_4 (changes to Mac802_15_4Impl.java and NetIp.java) * Modified the DummyRoute - lets the MAC attempt to send unicast messages rather than dropping them. 10/06/2008 (v.1.2.3) * Fixed interface issues for MacOX environment (added MousePressed Listener) * Fixed a number of bugs including a packet-freeze in Mac802.15.4 (Thx to Ray Abe for this) 10/30/2008 (v.1.3.0) * Modify the EneryManagement API to replace getEnergyLevel() to getEnergyLevel_mJ() and getCapacity() to getCapacity_mJ() (more intuitive) * Implemented Energy-consumption primitives in the Mac802_15_4 * Fixed a number of bugs in the Mac802_15_4 11/10/2008 (v1.3.1) * MAC layer now notifies the upper layers if it cannot relay a packet to the destination (1-hop) node via unicast. * Bug fix in 802.15.4 - Net layer was getting stuck upon a faulty transmission. * Fixed Query specification to correctly include the WHERE clause specification. * Several other bug fixes 11/12/2008 (v.1.3.2) * Forgot to add the sidnet.core.query package to the distribution list. That will lead to compilation errors on v.1.3.1 11/18/2008 (v.1.3.3) * Improved UI for visualization of the neighboring nodes. 11/25/2008 (v.1.3.4) * Fixed the TopologyGUI - menu (was not turning the GUI off) * Fixed the Refresh issue with TopologyGUI (was not completelly refreshing). Also improved drawing performance 12/11/2008 (v.1.3.5) * Upon a dropped packet, all registered routing protocols were receiving the dropNotify() notification. This has been changed now so that only the protocol for which the packet is designated receives the notification 12/19/2008 (v.1.4.0) * Refactoring of the stack structure: separated between distribution stack packages and "user" ones for a better workflow 01/23/2009 (v.1.4.1) * added the following Location2D function: public NodeEntry getClosestNodeToNCS(NCS_Location2D targetLocation), which /* Returns the NodeEntry of the node that is closest to the targetLocation (NCS)*/ * Changed the TopologyGUI interface to be able to select the type of line-end (arrow, straight, both-ends) * Fixes TopologyGUI display when the line length is 0. Currently it generates a NaN internally and draws a line to origin 02/09/2009 (v.1.4.2) * Added the "Payload" interface * UserDefinedData can also hold "strings" besides than "int"s. This is a generalization of the functionality. It is also backwards compatible * Added a new StatEntry (StatEntry_MessagesContor). This is different than the built-in packet-monitor since it does not attempt to track the delays in packet transmission, thus it is more efficient * Changed the Location2D core data type from "int" to double * Added Location2D [ft] information to the node's tooltip view. It is not backwards compatible so proper re-casting needs to be perform on existing work. * Location2D information of a node is now displayed on the GUI in [ft] rather than in pixels 02/26/2009 (v.1.4.3) * Minor bug-fixes in sidnet.batch utility * Minor improvements, in terms of performance, in Statistics, to boost speed when performing experiments with the batcher. * Enabled queue-full/packet drop notificaitons from Network Layer. This improvement is made within /importedpackages/jist-swans-1.0.6 * renamed SimControl.register(...) to SimControl.registerAndRun(...) to better reflect the actions it performs. This was necessary to avoid confusions when setting up the statistics (StatCollector) * Refactoring and Restructuring the way Statistics is implemented, for simplicity and modularity reasons. * Added support for categorising packets that are monitored. Now it allows you to monitor activity in subregions of the network in a simpler manner than before * Added support for multiple-groupBy (categories) within ExtractData. Also, improved the command-line syntax * Redesigned the way ColorProfiles are declared and handled for better integration of modules that use different color profiles * Fixed numerous bugs that could lead Mac802_15_4 to deadlock. Rewrote all timers per JiST strict instructions. Incorporated energy-semantics with sleep-schedule in Mac802_15_4. 03/02/2009 (v.1.4.4) * Added support for repetitive experiments (same configuration, multiple deployments) in SIDnetCSVRunner * Fixed couple of things in StatsCollector * Fixed the out-of-heap space error when using Mac802_15_4. Fixed another bug in Phy802_15_4 that could case the MAC to get Stuck. 03/04/2009 (v.1.4.5) * The CPU remained ON in sleep-periods also (for energy consumption). Fixed that. It is now put to power-saving state when mote is in sleep-mode * Optimize memory usage in Mac802_15_4 by creating pools of timers rather than wasting and allocating new ones. This also translated in a significant speedup * since, due to Jist holding a reference to it, the GC was unable to clear it. 03/20/2009 (v.1.4.6) * Minor improvements to StatsCollector (EventMonitoring). Also improved memory usage and performance * Added scroll-bars to StatsCollector * Added removeGroup capability to TopologyGUI 03/23/2009 (v.1.4.7) * Bug-fix in StatsCollector: the AveragePacketDeliveryLatency was never getting computed 04/17/2009 (v.1.4.8) * Fixed a (near) inifinite non-blocking loop in SIDnetCSVRunner that was happening towards the end of the simulation time. * More performance fixes in Mac802_15_4. * Refactoring of the code in SIDnetCSVRunner 04/29/2009 (v.1.5.0) * Added Node-Finder (highlight) functionality * Added Node Relocation (by mouse) at run-time ability 05/19/2009 (v.1.5.1) * Optimizations in TopologyGUI. Lines from the same group that connect the same pair of nodes are stored only once per group. * Improved GUI performance. Also, fixed a severe slow-down when using setUserDefinedValue1,2,3() functions or node relocatiions. 10/16/2009 (v.1.5.2) * Fixed a number of bugs related to the display * Added support for driver-parametrization in batch mode using system-properties, as a much better alternative to the the command-line arguments * Improved support for XML-loader of mobility-profiles for moving objects * Refactoring of the directory structures in the src/folder. While packaging did not change, user is advised to include in the project the following source folders: src/main/java; src/users/java. From this version on, the user's projects will be stored under src/user/java only. This way, the upgrade to newer versions of SIDnet will be simpler, as only the src/main/java folder will need to be replaced * Added a small fix to the EnergyConsumptionModel * Refactored the EnergyMap package location. Added support for Saving the energy-map to an external CSV file 10/28/2009 (v.1.5.3) * Refactored the ShortestGeographicalPathRouting.java being renamed to ShortestGeoPathRouting.java and moved under the stack/stc/routing folders The Sample_P2P was updated to reflect this change * Added the "expanding/contracting" capabilities to the Region.java * Fixed the window-resizable bug in Terminal.java. Escalated the version of the Terminal to 1.1. QA-ed * Added test for TopologyGUI and fixed a small bug regarding the default display settings * Fixed the release process which yielded SIDnet-SWANS with missing files in the deployment modules. 11/13/2009 (v.1.5.4) * Fixed a number of issues, such as: - Sometimes the main sensors window "shifted" to the top-left corner of its Frame. Fixed - Major rethinking of the main GUI-section of displaying node's on the screen -> better GUI performance (and/or lower CPU demand) - Many other fixes, mostly related to Display/GUI performance - It is no longer required to explicitly repaint a node by invoking "node.getNodeGUI().repaint()" after each "mark()" function, and it is advisable to delete all this entries from user programs to achieve higher speeds. * Fixed a bug in the DeploymentManager where, failing to recognize a file within a filesystem, would through an "unknown protocol: d" error * Improved the DeploymentManager so that it no longer requires dependency on an environment variable to locate the schema files * Added afferent tests for the DeploymentManager * Fixed the NeighborsPanel display bug and refactored. * deactivate the debug statements from the NeighborsPanel * Fixed a bug that prevented from displaying properly nodes' status information on the screen * Increased the refresh-rate of the screen from 1/1000ms to 1/200ms to achieve a smoother run when simulation speed is 1X. 07/26/2010 (v.1.5.5) 01/06/2011 (v.1.5.6) * added missing .xsd and jaxb.index files to /mob