Week 10 - Networking and Communications



1.1. What is Left From Last Week

1.2 Individual Assignment

Right after the Networking and Communications class, I went to the lab and tried programming my new board with ESP32 and ATSAMD11C. I was able to program the ATSAMD11C with Quentin's programmer, since I did not have a 2x2 header programmer. (Later this week, I both made the programmer and a cable that allows 2x5 and one 2x2 header connection). Unfortunately, one of my LED's was not lighting up. After giving another look at my schematic, I have realized that I had to jump two wires; one for the ground, and one for the voltage connection.

When it came to programming the ESP32, there was one constant error, implicating that I did not have Python installed. Installing it three times did not work. So, i decided to switch to Windows. I was able to program ESP32 successfully on Windows.





1.1. What is Left From Last Week

1.2 Individual Assignment


For this week, individual assignment was to design, build, and connect wired or wireless nodes with network or bus addresses. At first, I was interested in the mail Alfonso sent about the Firebase, but after listening to Neil about TCP and UDP one more time and talking to a couple of friends about what I wanted to do for my final project; I decided to use Websockets.

TCP vs UDP

If you read my page, you already know that I want to create my own musical instrument; and want to make it both steppable and wearable. To further explore the communication between the devices I will make, I want to create a wireless connection that is fast, efficient and that can have a continous data transmission. Yes, I am clearly defining UDP at this point.

One of the qualities of UDP is that it is not connection-based. “Connectionless” refers to the fact that no connection is established before communication occurs.

More information on TCP and UDP

TCP stands for Transmission Control Protocol, defined as connection-oriented communication system that relies on a three-way handshake (synchronization, synchronization acknowledgment, and final acknowledgment). Communication programs and computing devices use this protocol. Before someone sending any data, the client and server must initiate a connection. It is considered a very reliable but a slow system due to the feed-back mechanism. To not consume too much of the bandwidth available, UDP is used together with TCP. But, what is UDP?

UDP stands for User Datagram Protocol, and it is a message-oriented communication protocol that allows computing devices to convey data without veryfing its delivery, which is very suitable for real-time, interactive performances and broadcast systems. There are fewer delays in data transmission. The server is basically not concerned whether or not client receives the data.∂ Websocket Connection Establishing this step was easy thanks to a tutorial I have found about websockets, explaining the concept detailedy and providing a code to launch a wireless internet connection and a website IP address.

I was able to apply the code, obtain an address and turn my board's LED on and off through my phone and my phone simultaneously!