The weekly assignment started with the simple tasks:
1. Group assignment: send a message between two projects
2. Indivisual: Study of the modes of communication using various means.
1.Group assignment:
The case we wanted to try here was to communicate within boards of two different projects, that were never supposed to be integrated.
For the same we had two boards, one was of Rohan, which he was going to use for the project of azolla, the other was of Arefin, which was to be used in the project of laminar air flow.
Rohan's board.
This is arifin's board.
Both of the boards were made out using the architecture of Attiny 45, that actually posed us quite well and easy to work along with.
The code we used was the similar that we had used for our assignments and just the changes were about changing the addresses with which the boards would be called.
Cosidering the same we had worked with the boards to obtain following results.
There after we concluded that there can be subtle means to communicate between the boards through serial communication.
2.Indivisual assignment:
What does Networking mean?
Networking refers to the total process of creating and using computer networks, with respect to hardware, protocols and software, including wired and wireless technology.
What does Communication mean?
Communication is passing the message or commands from one board to another board.
For this we had two types of communications. 1. Asynchronous:
Asynchronous communication is the exchange of messages, such as among the hosts on a network or devices in a computer, by reading and responding as schedules permit rather than according to some clock that is synchronized for both the sender and receiver or in real time. It is usually used to describe communications in which data can be transmitted intermittently rather than in a steady stream.
2. Synchronous:
In synchronous communications, the stream of data to be transferred is encoded as fluctuating voltage levels in one wire (the 'DATA'), and a periodic pulse of voltage on a separate wire (called the "CLOCK" or "STROBE") which tells the receiver "the current DATA bit is 'valid' at this moment in time".
Generally used in the parallel communication.
The following image shows communication between a single wire
Designing my boards for communication(asynchronous):
Here I used my hello board as a master board. and I milled the nodes.
Here is the schimatic of the master board.
And here are the traces.
This is how the board looks like.
Then I designed my node board. This time I went for the flexible pcbs. But I found it very difficult for me becouse while soldering it was very tough. While pulling out the copper tape I faced so many problems. after a long time I tried to solder one flexible pcb but I got very frustrated so I gave up on it. and I went for PCB milling.
The schematic of my board.
As you can see in the image I forgot to join the RESET pin.
After milling the boards I used single stand wire to connect it. This is how it looks.
Programming the boards:
Well this time I had to take some help from my instructor becouse I do not have any background knowlage of networking and communication.So I decided to go with Neil's code, to understand and change it to get respective results.
The major change here was only regarding the two different processors, those being Attiny44(in the bride board), for which I had edited Neil's program.
after that with one of my friend chaitanya I edited the same program as for the Attiny45 (in the node boards)
here is the file.
The code basically functions as follows:
After this the only step was left to burn the programs on respective boards, and get them running. So I connected all the boards toghather.
And at the end I got this result of this assignment.