Professor Bhaskar gave us his wishlist. See a brief outline at Wishlist.
We got the Contiki oscilloscope up and running, and played around with it using two motes.
For next week:
Suvil is going to investigate options for a mailing list and also get the issue with uploading images to the wiki fixed.
Nikhil will set up a Google Drive share for us to use for prototyping our tutorials when appropriate. It would allow for us to collaboratively edit in real-time and provide us all the conveniences of a modern word processor (spell check, etc.) We should probably discuss this more next time.
Yash will spend the time catching up and going through our existing tutorials.
Lakshmi has graciously volunteered to present Cristian's algorithm to us.
Nikhil, Bhavana, Rahul, and Deepanker will start a new tutorial for using the Oscilloscope.
Kevin will explore methods for on-board data storage on the sky mote, both volatile and non-volatile.
Pedro, Suvil, and Kwame will work on running Contiki on the testbed and starting a tutorial. Also, thinking about how we can refactor some of our theoretical tutorials to be more activity oriented.
Everyone should update their tutorials to include the primary contributors. Perhaps somewhere at the end.
Lakshmi presented the paper Probabilistic Clock Synchronization http://kom.aau.dk/~rlo/lectures/algoAndArchIII_2009/ChristiansAlgorithm.pdf. We had a very interesting discussion about the terms and concepts behind synchronization and clock in network nodes. We might in the future see how this algorithm can be implemented in a WSN or check whether its main ideas are already implemented in the "Implicit network time synchronization", present in ContikiOS ()
Everyone gave an updated about what have been done during last week. We have some material for two tutorials: the Oscilloscope and Coffee File System. This material is yet in the Google Doc create for prototyping and should be posted in the Wiki soon.
Kwame guided the group in the first 4 sessions of ContikiOS Crash Course File:Seniot09cccc-notes.pdf. We played with LEDs and push button. This example should give a new tutorial on how to use all the sensors/actuators (light, temperature, push button, etc.) on the motes.
We decided that each week one person will be responsible for creating this meeting log, so everyone can keep track of what has been discussed every week. Below we have the expected date of our next meetings and a tentative assignment.
For next week:
Kevin will give a brief talk about Coffee file system and show us the material he obtained and the tutorial he started to write.
Yash will start to study and collect material about processes and protothreads. He may give a talk about these topics in two weeks.
Nikhil, Bhavana, Rahul, and Deepanker will keep working on the Oscilloscope tutorial.
Pedro and Kwame will start to work on the Tutornet testbed.
Suvil will fix some issues we are facing in the Wiki with code formatting and help us with account creation/setup of the testbed.
Kevin gave a presentation about Coffee File System. He showed the main interface and functions that can be used by Tmote Sky. He also showed an example where a node was programmed to create and write 3 different files on Flash Memory and after reboot output the content of the files reading then from the memory. The presentation slides can be found here: and the example code can be found here:. He started to create a tutorial on Coffee on the shared Doc file and you may create a tutorial about this topic in our Wiki soon.
We went through the example in: examples/rime/example-neighbors.c, suggested by Bhavana. Basically this example makes all node generate beacons and create a list of neighbors of each node. It prints out the list of neighbors with the corresponding RSSI value.
For next week:
We should continue to work on the tutorials, trying to polish and review them for final publication.
Pedro gave a presentation of a few of the features available in the Cooja simulator. Some of what he covered, which will be put in the Cooja tutorial, includes how to build Cooja from the terminal and automatically start a simulation, locate source files for debugging, and use the single-step and breakpoint debugging tools available for debugging each node. Afterwards, we looked at examples-neighbors.c in more detail, noting the size of the data structures and the way certain values were calculated, such as RSSI. Lastly, we briefly looked over some of the Contiki OS files in the documentation and flipped through a comprehensive Contiki presentation here .
For next week:
Several more tutorials should be done by our next meeting.
Yash gave a presentation on Processes and Protothreads. The group expressed interest in learning more about the hardware behind the Tmote Sky, such as the TI MSP430 microprocessor and the CC2420 radio. We'll probably include some of those as the topic of future talks.
For next week:
Enjoy Spring Break!
Spring Break, no meeting
We successfully programmed a multi-hop communication between 5 motes. We also discussed the ways in which motes can talk to each other, namely - unicast, multicast and reliable unicast - and discussed the pros and cons of each with respect to our application.
We discussed a little bit about the connections on the mote, specifically the interaction of MSP430 with CC2420.
For next week:
Yash will give an introduction to MSP430. Completion of tutorials on wiki and proofreading of the already completed will be done by the people who are assigned the task.
Meeting Summary: Bhavana introduced us how to use Shell in a process. We went through some instructions and source code to understand how it works. Also, we ran an example on the Sky-Mote and tried the Blink instruction. Everything worked good.
For next week: Yash will give an introduction to MSP430.
Meeting Summary: Yash presents the Radio Transceiver:
Gave a brief overview of Tmote hardware
Discussed the radio as main communication module
Gave an overview of QPSK, and how Tmote uses OQPSK to modulate signal
Went over frame format of transmission
For next week: Pedro will present next week, and Kwame the week after. Assigned several new tutorials, agreed to write up Telephone Game as a tutorial.
Meeting Summary: Pedro presented the Implicit Network Time Synchronization protocol and showed an example of application that uses it. We could synchronize a network of 6 nodes and make then blink the LEDs synchronously. The presentation can be found File:Time Synchronization.pdf.
For next week: We will change the Shell example and create a new command that starts and stops the network synchronization protocol.
Kwame presented an example of how to write a shell command. (Code for the example can be found on the Google Drive). After going through the example, we did some hands-on experimentation and adapted the code to transmit custom messages via unicast to other motes. We encountered an interesting problem with using the packet buffer, but realized we simply needed to make sure we checked the length of data in a received packet.