TOSSIM programs can invoke C functions, which means they can do anything and everything like reading data files or interacting with a synthetic data generator. In this regard, to create a simulation-only module implementing the Read interface is *possible* at all.
Here is the outlined recipe: 1. create a C module (i.e. sim_sensor.c) that provides routines for accessing data sources (i.e. a C functions like "read_data_file(moteid, timeslot)"); 2. create a nesC module (i.e. SimSensor) that implements the Read interface, which calls the C module; 3. compile / link the C module into your TOSSIM program (by hacking the app's local Makefile); p.s. I have setup a contrib project on tinyos.net aiming at providing a holistic solution on this issue. At the moment, the project is in its *alpha* stage, and we plan to release the code for public review by August. Please refer to the following url, http://docs.tinyos.net/index.php/TinyOS_2.x_index_of_contributed_code#SyntheticSensor_for_TOSSIM -- LIU Yu On Wed, Jun 16, 2010 at 2:18 PM, Jon Szymaniak <[email protected]> wrote: > I plan to simulate a fairly large number of nodes monitoring an environment > (ideally over 1,000). During simulation, I would like to be able to change > environmental conditions (e.g., temperature, humidity). > > My first thought was to create some simulation-only sensor components > implementing the Read interface. Ideally, these components could pull or > request environment changes from another application and then apply some > "sensor noise" before providing the readings to the rest of the mote > application. > > From what I could tell, TOSSIM only supports reading of variables -- not > writing. Therefore, I can't simply just tuck away some "private" variables > in the simulated sensor component. I'd rather not inject/disseminate > environmental changes over the network, as I was hoping for a more efficient > and transparent solution. > > Are there any existing means of doing this? If not, any advice on where to > get started in extending TOSSIM to achieve this? > > Thank you, > Jon > > _______________________________________________ > Tinyos-help mailing list > [email protected] > https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help > _______________________________________________ Tinyos-help mailing list [email protected] https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
