Update History
04-07-2011 NescT is compatible with OMNeT++ 4.2
Corrections in nesct binary and tictoc directory have been
made to make nesct compatible with OMNeT++ 4.2.
30-09-06 Bug fixes, MAC OS/X port and new applications
new application: TinyECC (Tiny Ecliptic Curve
Cryptography)
new application: SeMA
new application: Straw (Scalable Thin and Rapid Amassment
Without loss)
fixed arrayed parameter handling for functions.
nesct now treats configuration files without case sensitivity.
you do not need to be picky about the cases anymore.
better macro preprocessing of components
replaced callback library for portability reasons.
fixed a timer bug, a repetitive timer would not stop if you
called timer.stop in fired function.
NesCT runs on MAC OS/X now, thanks to Anna for help and
patience.
fixed an initialization problem with MintRoute (WMEWMA)
component.
fixed initialization problem with
ByteEEPROM,ByteEEPROMAllocate and PageEEPROMShare components.
16-09-06 Power Management Module and message counters Integrated
Fixed memory problems
Resolved AODV compilation problems
Added a new simple power management module, consumption values
need to be checked.
New application : TinyKeyMan
UART receive, Radio send and receive counters are activated
13-09-06 Fixed memory access problems with NesCT and ported DSDV protocol
Byte level UART transfer is removed from the package, we
expect packets instead of bytes.
Fixed some of the memory leaks of NesCT. Access violation
errors were also fixed.
There has been a name clash between util.h of omnetpp and
nesct. Nesct's util.h has been renamed to nesct_util.h.
DSDV protocol is now part of our application suite.
02-09-06 New Simulation Example: Deluge, and fixed EEPROM and directory permissions problem
Deluge, the famous code distribution protocol of tinyos, is
now working with OMNeT++ now and included in example package.
There used to be a problem with single shot timers, fixed.
Added packet loss due to biterror.
Fixed a bug with EEPROM , would not read or write at the same
moment to EEPROM.
EEPROM files are located in logger directory and from now on,
the contents of these files are saved across simulations.
Fixed a permission problem with creating directories, NesCt
does not require you to be a root user anymore.
22-08-06 Support more nesc features and TinyAODV simulation
default command handlers are now handled.
TinyAODV is working with the simulator
more nesc features are covered by nesct.
13-08-06 Fix MF Support
MF support is back again.
MF and regular example package have been merged into a single
application. MF specific files reside in mfw from now on.
TinyOS Java files are now part of example package. You do not
need to install TinyOS anymore.
01-08-06 Better compatibility and new software design
Dropped hplclock component support, we use native OMNeT++
timers instead.
NesCT no longer makes RPC calls between modules.
Less memory consumption.
MNP protocol works with NesCT.
Dropped multithreaded versions of OMNeT++ libraries.
VS6 is no longer supported
Merged VS7 and VS8 support into a single configuration named
config.win32
new batch files for windows such as compile.bat, rebuild.bat,
buildall.bat are included in example directory
The limit with the number of prototypes that you can define
inside a tinyos module has been removed.
26-06-06 Fixed memory leaks and crash problem resolved
Clean up memory leaks resulting from any. Still it is not
finished.
Tictoc uses real time scheduler from now on in order to solve
race problems between external event injector and simulation
environment.
Fixed a simple but serious bug that would take the enums in
the reverse order.
Library package has been rebuilt to use existing supporting
libraries (Tcl,tk,xml) from OMNeT++ installation instead.
added stacklist free upon program termination
clean up redundant source_iface parameter of messages passed
between modules.
22-06-06 Microsoft Visual Studio Express Edition 2005 Support
Added config.win32.vc8 to support new free MS compiler.
24-11-05 - Better Windows Build Support
Windows build is more complete now. Added config.win32.vc6 and
config.win32.vc7 configuration files for visual studio builds.
Microsoft Visual studio 6.0 and visual studio toolkit 2003 has
been used for testing.
18-11-05 - EWsnSim Integration and finish function support
Integration of NesCT to EwsnSim is now complete. Download and
play with tos_example_ewsnsim package. You may check ewnsim
website for further documentation.
You may want to run a function about the moment that
simulation is to terminate. If you include a function named
omnetpp_finish in your code, it is going to be called
automatically.
17-11-05 - MF Integration and memory leak clean up
Integration of NesCT to mobility framework is now complete.
Download and play with tos_example_mf package. You may check
mobility framework website for further documentation.
NesCT has been adopted for portability, i.e., it uses
TinyOSPkt message structure for exchanging buffers between
sensor nodes. Memory leaks found were also cleaned.
15-11-05 - Windows port efforts and abstract middle class
This version now builds with windows using visual studio,
mingw and cygwin. i have created an abstract class named
cTinyOSModule from which all the software modules inherit. You
can add your module inheritance to this class to make the
integration. When you receive a message from the network, send
it to the parentModule. ParentModule is going to route it to
the tinyos receive functions.
13-11-05 - Removed limitations of data types that we can
carry with cPar
Until this release, we used to convert every parameter of a
function to void pointer and transfer between modules. Later
at arrival, we were casting it back to the original type.
Nevertheless, if the data type we want to carry is double,
then data will be lost. We also had similar problems with
struct pointers. We fixed this problem by patching cPar.
11-11-05 - private component repository and shared methods
support
Testing NescT with different systems showed that sometimes the
components that reside in component directory of examples may
not be compatible with the components of your TinyOS
distribution. To avoid this problem, we have copied all
components that examples require to the components directory.
In other words, NescT does not need TinyOS for examples
anymore. You need TinyOS only for the jave support tools.
Assuming that there will not be so many changes with the data
structures and GUI tools, they should be compatible. We may
also copy java tools to the example directory some day.
To make NesCT more complete, share method support has been
added with this release. To learn more about shared methods,
check out the manual section.
03-11-05 - fix uint64_t definition and multiple sensor
applications in one sensor simulation
Older Linux systems do not define uint64_t; whereas, newer
ones define uint64_t by default. We define our own types in
the source code from now on. Due to some simulation needs,
nesct and OMNeT++ can be used to do mixed simulations. For
example, you can program one node with CntToRfm and another
with RfmToLeds. These will both work within the same
simulation environment. In order to support this new feature,
build step has changed slightly. Overwrite Application.nc in
tictoc as usual. Run NesCT with Application.nc
(CntToLedsAndRfm). All the code generated for this application
will get the prefix for the starter module name (for example
cCntToLedsAndRfm_Timer.cc). Copy the other application
(RfmToLeds.nc) over Application.nc again. Run nesct again.
Newly generated modules will get RfmToLeds prefix. Edit tx1.cc
in the main directory to decide about which node to start
which application. By default only node 0 gets the first
application (this could be TOSBase for instance). Rest of them
will have the second application.
31-10-05 - Changes in the release structure
As of 31-10-05, we have separated examples package into two.
The idea is that we do not expect libraries to change quite
often, while this is not true for the rest of the examples
directory. In order to compile, you'll need one example
package and one library package. Extract both of them to the
same directory. Libraries should go to the relevant places in
the example directory.
31-10-05 - Major updates in NescT
NescT has been going under major updates recently. The new
NescT gives support for default event handlers. Default event
handlers are used when the programmer does not provide an
event handler function. Default handlers may accepted as weak
because if a user forgets to provide a handler, then NescT
will not notify about this event. However, there may be cases
where you do not want to handle everything
Why to support default event handlers ? We now have support
for Surge example application. Surge application and multihop
routing algorithms make have use of default event handlers.
Check examples section for how to test Surge.
A sensor device may use its internal flash memory for storing
data where its built-in memory is not enough. There is a 512k
flash memory found in mica family of motes. We did not have
this support before. Now and then, you can use software that
uses flash memory along with nesct. Check examples section for
LoggerTest.