Week 11: Communication
Group Assignment: send a message between two projects
Individual Assignment: design, build, and connect wired or wireless node(s) with network or bus addresses and local input &/or output device(s)
Plan for the week:
- Thursday: review lecture and learn more from other videos, documentation and asking questions.
- Friday: make initial plan for the individual assignment, connected to final project.
- Monday: make that board, document it
- Tuesday: program that board, document it
- Wednesday: completion
Communication Methods
UART / Asynchronous
UART stands for Universal Asynchronous Receiver Transmitter. It is a wired method of communication, a key point is it is Asynchronous which means the data sent is not monitored or coordinated by a clock. Instead, there is a pre-existing agreement about the 1) data length, 2) start/stop bits, and 3) speed of transmission. This allows for the data to be transferred with precision.

For communicating between multiple devices using UART we can employ "hop-counting" or "broad-hopping". Basically these are methods to count the devices in the network, give them addresses, as well as communicate with them. Here is a screenshot of the concept from Dr. Neil's previous lecture illustrating the concept.

Its a little difficult to understand precisely how it is all working, but important to try. Anyway, this section is about Asynchronous communication which again means that it is not coordinated by a clock. Instead the line is held on high, and at any time a device in the network may start transmitting.
I2C / Synchronous
In contrast, I2C and other types of synchronous communication use time when transmitting. For I2C in particular, there are 2 lines, namely SDA (Serial Data) and SCL (Serial Clock), and they work in conjunction.

SPI - Serial Peripheral Interface
SPI is another major communication protocol. It uses 4 pins to communicate with another device, and then usually requires an additional pin for each additional device connected. However it is fast and in some aspects easier, because it has a dedicated line for both sending and receiving between the master and slave.

Communication!
We have to make more NEMA boards since in this week we need to communicate to multiple devices. Here's the next NEMA board. Funny story is there, this one is able to rotate in both directions and we're using the same program.

The task this week is to communicate. Saheen explains one possibility is through supplemental connector boards. The plan is to communicate with UART, so this additional mini-board will have the RX TX pins. We will also be able to program through the programmer via this board.
We cut the mini-boards using the X-Tool laser machine. It was good practice to review that.

Also it was weirdly enjoyable to clean these boards with the toothbrush.

Here's the set-up:

It's not the end, just out of time for this week...