TDDI07 Distributed embedded software and networks
Lab2, Communication
The main objective of this lab is to make you familiar with the wireless one-to-one communication using sensor nodes.
Preparatory questions
You are required to read lab 2 instructions and the additional resources on it in order to be able to answer the following questions before starting the lab. Some of the questions can be answered once you have completed lab 1.
- Regarding the sending and reception of messages:
- Which command is used to request the sending of a message?
- Which event notifies that the sending of a message is completed?
- Which event delivers received messages?
- Which component should implement the events mentioned in the previous questions? Is it the component that uses or the component that provides (implements) respective interface?
- You just received a message. What should be returned by your event handler? What will TinyOS do with the value you return?
- You just sent a message. When is it safe to use the message buffer
again?
Hint: There are two possible scenarios depending on success or failure of send.
-
With the knowledge acquired from the previous lab about nesC programming:
- How can you generate a debug message?
- How do you change the address of a mote?
- How can you make the timer repeat at regular intervals? And at irregular intervals?
Lab 2
In the lab 2 you will implement an scenario where the road is under repairment process. Only traffic in one direction is allowed at the time. You will implement the synchronised traffic lights using the motes in order to allow a correct vehicular traffic.
Additional resources for this lab:
To hand in:
You must demonstrate the application running in the sensor nodes to the lab assistant during lab hours. Moreover you should send a link to a branch (or tag in master) of your git repo to your assistant. In the repo you should have completed a report containing (use the report template):
- Correct answers to the lab preparatory questions
- Brief explanation of how your application works
TDDI07 Lab X Group Ywhere X is the lab number in the subject name and Y is the group number.
Page responsible: Mikael Asplund
Last updated: 2020-11-02