MiXiM Changelog

What's new in MiXiM 2.3

Mar 6, 2013
  • More work on getting better INET compatibility, now we are very close to integrate MiXiM into INET framework. (Many thanks to Rudolf Hornig)
  • Added type definition for the radioStateAttenuation collection, changed some return value definition to const ref. Using the MapUtils::incNextPosition method for calculating nextPosition. (Instead of adding ONE to calculating the nextPosition, we use the MapUtils::post operation now).
  • The default value for the constraint area is now derived from the playgroundSize parameter.
  • Some compiler fixes for gcc >= 4.7. nic.phy.sensitivity MiximRadio, BatteryAccess>MiximBatteryAccess , ChannelAccess>ConnectionManagerAccess
  • Some MacLayer adjustments to use common MiXiM layer concepts
  • Some Bugfixes

New in MiXiM 2.2.1 (Dec 15, 2011)

  • .cproject is now OMNeT++ 4.2 conform
  • renamed mobility coordinates from (x, y, z) into (initialX, initialY, initialZ) and
  • added meter-unit for it (as in INET)
  • constraintAreaMin[XYZ] and constraintAreaMax[XYZ] for mobility modules to specify
  • a specific random generation area for nodes (will be adjusted to playground area)
  • adjusted the example scripts and .anf files for WSNRouting, ieee80215a, and
  • ieee80215Narrow
  • fixed MoBAN emit/subscribe scope for position updates
  • small fix for SimpleBattery empty battery test
  • getAnalogueModelFromName() is now a const method
  • fixed typename-error for GCC

New in MiXiM 2.2 (Nov 21, 2011)

  • It is mainly a maintenance release whith focus on INET integration.
  • adjusted the OMNeT++ 4.2 API changes
  • modified deciders filterSignal method, parameters now are AirFrame pointer and the senders and receivers positions
  • completly removed BaseUtility and Blackboard; MiXiM uses now the OMNNeT++ signaling handling (registerSignal, subscribe, emit, ...)
  • receiveBBItem(...) methods should be replaced by receiveSignal(...).
  • Introduced new 2 types for MACAddress and NetwAddress, see SimpleAddress.h
  • This should solve some problems with inproper handling of same address type for different layers.
  • Added some value tests for infinity in mapping interpolation. (David Eckhoff)
  • Merge thermalNoise into attenuattion map for excluded AirFrame.
  • Ned INic definition was renamed to IWirelessNicUpperCtl (like INET IWirelessNic plus upper control gates)
  • Add sendReply switch to BurstApplLayer, to disable send reply for
  • BROADCAST_MESSAGE's.
  • Renamed introduced timing info methods in Signal ( getSignalLength() ->
  • getDuration(); getSignalStart() -> getReceptionStart(); getSignalStart() +
  • getSignalLength() -> getReceptionEnd() )
  • Signal now contains infos about the sending/receiption module/gate (getSendingModule;
  • getReceiptionModule). The info will be extracted/saved from AirFrame in BasePhyLayer at receiving.
  • Changed [Lower/Upper]Gate to [Lower/Upper]Layer.
  • handleAirFrame method gots an AirFrame as parameter, instead of cMessage.
  • renamed BasePhyLayer::sendControlMsg to BasePhyLayer::sendControlMsgToMac
  • refactored the NED files to simplify the usage and to make it more generic

New in MiXiM 2.1 (Nov 21, 2011)

  • added LMAC layer implementation written by Anna Förster and ported to MiXiM
  • added WiseRoute and Flooding network layer modules ported for MiXiM
  • added modules from MoBAN project
  • added BMAC layer implementation
  • new probabilistic broadcast routing modules
  • new packet error rate analogue model (PERModel)
  • new BreakPointPathloss analogue model
  • added several more modules to choose from in "Basic MiXiM network" wizzard
  • introduced "debugEV" which together with a modules "debug" parameter enables per module debugging for end user modules
  • added preconfigured hosts for 802.11 and 802.15.4 protocol respectively
  • added support for phy protocol ids to identify the protocol used for a
  • transmission added multi channel support to BasePhyLayer
  • added Nic80211MultiChannel which extends the Nic80211 with multi channel
  • support
  • added parameter "scaleNodeByDepth" to BaseMobility to disable scaling of nodes when tkenv and 3d is used
  • added more modulation models to Decider802154Narrow
  • changed BaseMobilities updatePosition function to support scaled play grounds (when the playground size does not match the size of the drawn playground)
  • added option to display maximum interference distance of nodes in tkenv
  • changed unit of acceleration in ned files from "mps2" to "mpss" since omnet
  • can't handle numbers at the end
  • fixed SensorApplLayer to find world utility module and network layer address
  • more robust
  • corrected evaluation of Decider802154Narrow's frame RSSI value
  • removed "centerFrequency" and "defaultChannel" parameter from Mac80211 module, they are replaced by BasePhyLayers "initialRadioChannel" parameter
  • organized inter-module dependent initialisation code
  • fixed CSMA802154 module to correctly use csma802154 class instead of only csma
  • fixed problem where airframes arrived at different order in tkenv and cmdenv
  • fixed problem with NicEntryDebug when a Nic unregisters and then registers
  • itself again with ConnectionManager
  • changed Mac80211 to wait for end of transmission instead of end of a timer
  • to start a new cycle after sending a CTS
  • typedef of ChannelInfo::AirFrameVector changed from vector to list
  • fixed csma's exponential slot interval from [1,2^BE] to [0,2^BE]
  • fixed a bug in SimpleBattery where the capacity wasn't updated if publishing
  • was disabled
  • fixed a bug in Mac80211 where duplicate packets where not detected when the duplicate was sent because of bit errors in the corresponding ACK
  • fixed a bug in BaseConnectionManager with playgrounds where one dimension was larger than the maximum interference distance and the other was smaller
  • fixed a bug in csma's nbRxCounter
  • fixed a bug in csma's backoff algorithm

New in MiXiM 2.0 (Nov 21, 2011)

  • introduced Mixnet - compatibility modules for using MiXiM NICs within INET
  • networks divided BaseArps addressing and ARP functionality into two separate interfaces to become more compatible with real ARPs which do not implement addressing
  • fixed use of wrong connection manager in MAC layer when using multiple
  • connection managers (thanks to "David" from the omnetpp list for reporting)
  • fixed a problem with ChannelInfo where it throw away channel information
  • although it was still needed to answer a ChannelSenseRequest
  • fixed not canceled CCA timer on backoff

New in MiXiM 1.2 (Nov 21, 2011)

  • added port of 802154 narrowband phy and mac layer of mobility-fw2 for omnet 4 from JÃrôme Rousselot
  • added global blackboard functionality to BaseWorldUtility
  • introduced "csma" module which implements a generic CSMA mac protocol and will replace CSMAMacLayer in the future
  • added depth dependent scaled display of hosts when GUI and 3-D is used
  • made members of Move protected, added functions for member access
  • 'setDirectionByVector' replaces the direct access to the member 'direction'
  • 'setDirectionByTarget' replaces the method 'setDirection'
  • BaseMobilitys host coordinates can be set to random values indepentently now gave networks of examples more meaningfull and consistent names (same as the example)
  • renamed executeables for examples from "MiXiM" to
  • divided MacControlInfo into MacToNetwControlInfo and NetwToMacControlInfo
  • added a wizard to create a basic MiXiM-network as well as a wizard for
  • creating your own AnalogueModel
  • added, updated or extended documentation for Radio, RSAM, ChannelInfo,
  • MiXiM-basics, mobility, border-handling and CSMA MAC-Layer
  • changed scheduling priority of AirFrames to slightly higher than normal to
  • ensure channel consistency
  • added utility-method 'addDiscontinuity' to MappingUtils which provides a
  • workaround to represent discontinuities in mappings by defining two entries as close as possible to each other
  • changed default signal created by BaseMacLayer's 'createSignal'-method to use a rectangular function for TX-power
  • changed BaseDeciders handling of ChannelSenseRequests for better support of rssi based idle/busy state
  • removed ModuleAccess and BaseArpAccess and replaced calls to them by using class FindModule
  • changed SNRThresholdDecider to evaluate the received energy level to decide
  • whether the channel is idle or busy (before the channel was only busy if the
  • decider actually received, meaning decoded, a signal)
  • fixed memory leak when propagation delay is simulated
  • fixed a bug in the calculated receiving power of a signal which caused it to
  • be greater zero before and after its signal in certain cases
  • fixed wrong calculation of position on "WRAP" border handling in BaseMobility
  • fixed missing connections when the cells from ConnectionManager do not cover the playground size exactly
  • fixed increasing heap memory usage while hosts sending AirFrames but wheren't receiving any. This was caused by RSAM tracking every radio state although there wheren't any Signals on the channel to attenuate.

New in MiXiM 1.1 (Nov 21, 2011)

  • added port of EnergyFramework written by Laura Marie Feeney
  • added "headerLength" parameter to physical layer and fixed wrong MacPkt length in Mac80211
  • fixed wrong initialization order of static time and frequency Dimension
  • members by introducing time-/frequency_static() wrapper methods