Code Search for Developers
 
 
  

TODO.txt from EmStar at Krugle


Show TODO.txt syntax highlighted

***TODO***

* Set up scripts to easily run canned experiments.
	
* Why is it that I can only transmit up to 3.8 KB/s? Look at
  sim/radio for clues.

* Try to do experiment with Mote radio:

  * Can't! When I make the change to my config file, emview no longer
    shows traffic information. Why?
	  
* Visualization: 

  * Long term: Allow gradient / interest info to be gathered at a
    single node, either as an interest (like Tiny Diff / ESS?), or on
    top of Jeremy's IP connector. As this info is gathered, some how
    use Emview to display this info.

* Micro Diffusion currently has a max packet size that reflects the
  mote max packet size. Need an easy way to arbitrarily set the max
  size. 

         * What's affected by changing the size?

	       * There's a variable that holds the number of
                 attributes. I think it's 8 bits, so that limits us to
                 255 * sizeof(DiffAttr).

		 ** It is 8 bits. But does this
                 matter if we're transfering blobs?

		 ** It does if something calculates the size of the
		 payload based on the number of attributes.

		 ** The DiffMsg_t structure contains length, not
                    number of attributes. This is encouraging.

		 ** OK. Blob length attribute is 8 bits. I can change
                    this to 16 bits if I put an 8 bit pad in front to
                    make sure things remain aligned.

	       * There's a variable that holds the data length (in
                 bytes). Find out if it's also an 8 bit number. (Turns
                 out it's 16 bits.)

	       * DiffMsg_t contains DiffAttr[MAX_SIZE]. So MAX_SIZE
                 reflects that static size of DiffMsg_t. How much does
                 this hurt us?

* Just doing iHandle++ will soon run out of handles. Need to recycle
  handles if the application periodically makes new subscriptions.


*** LATER ***

* Better way to set up sink tree. Use something like ETX. 

* If data matches multiple gradients to the same src, it gets sent
  multiple times. Not good.

* Would be cool to add a tracing feature for packets, messages,
  whatever. Say a trace bit or hop-count, and have it desiplayed in
  EmView. Could be generic or application specific. Useful for DTN
  where we can't easily "see" routes.

***DONE***

IP connector thingy relies on blobs, which is something micro
   diffusion is flakey on. Need to fix.

* Test short term solution for "any-to-any": 
	
	About 12 nodes.
	3 - 4 hops in diameter.
	11 sources send about 20 kbs sustained.
	1 sink sends about 20 kbs total, distributed over sources.

	* Set up docs on how to run canned experiments.
	
* Visualization: 

   Short term: Use EmView and expose appropriate state through the
   status device of the nodes.

         * Look at emview/examples.
   
* Micro Diffusion currently uses a 16 bit address for Src, Next, Prev,
  etc. Need to be able to use 32 bit addresses.

  (Works with Stargates (32 bit addresses) as long as all of the
  participating nodes have the first 16 bits in common.)

          * What's affected by changing this?

	  * How can we easily switch between 16 and 32 bits?

	       * Always use 32 bits internally when passing data
                 around. Compile time use #ifdef to make DiffMsg_t /
                 IntDiffMsg_t , and conditionally truncate to 16 when
                 sending.

	       * We can't put our address into interests/data since
                 the value is 16 bits. 

		    * We can either split the address into two.
		    * Expand value to be 32 bits.





See more files for this project here

EmStar

EmStar is a software system for developing and deploying wireless sensor networks involving Linux-based platforms. As the wireless sensor network community has attempted to deploy more complex designs---large-scale, long-lived systems that need self-organization and adaptivity---a number of difficult software design issues have arisen. Advances in software design have not kept pace with the capabilities of hardware. This is because designing for an adaptive, efficient, and useful sensor network has turned out to be surprisingly complex and difficult. EmStar is a Linux-based software framework, whose goal is to dramatically reduce this complexity, enabling work to be shared and reused, and simplifying and speeding the design of new sensor network applications.

Project homepage: http://cvs.cens.ucla.edu/emstar/
Programming language(s): C,Shell Script
License: other

  include/
    microdiff.run
  src/
    old/
      MDForwarder.c
      MDForwarder_i.h
      MDOppGradient.c
      MDOppGradient.h
      MD_i.h
      microdiff.c
      microdiff.h
    DiffTypes.h
    MdForwarder.c
    MdForwarder.h
    MdMatch.c
    MdMatch.h
    MdOppGradient.c
    MdOppGradient.h
    Mdiff.h
    Mdiff.txt
    Mdiff_main.c
  test/
    Makefile
    commands.txt
    mdiff_filter.c
    mdiff_filter.h
    mdiff_test.c
    mdiff_test.h
  testtabs/
    app.run
    microdiff.sim
  BUILD
  SEISMIC_NOTES.txt
  TODO.txt