Toni F. Barreiros


toni

FAB Academy Project

 

WEEK 15 (10 May 2017)
[Networking and Communications]

The assignment for this week is to design and build a wired &/or wireless network connecting at least two processors.

For this assignment, I made the hello.serial.bus with 1 bridge and 2 nodes.
The purpose of this example is to link several boards together (serial bus). The bridge board is connected to a computer via a FTDI cable and the two node boards are connected to the bridge board, receiving power and signals via bridge.

So, the bridge will power up the 3 microcontrollers (ATtiny45) trough FTDI cable and will send the signals from PC to the other 2 nodes:

Tests: 
- Signal sent to node 0 (bridge), the LEDs on all the boards light up once, after that, just the node 0 lights on the LED;
- Signal sent to node 1, the LEDs on all the boards light up once, after that, just the node 1 lights on its LED;
- Signlal sent to node 2, the LEDs on all the boards light up once, just the node 2 lights on its LED;

To achieve this purpose we may proceed this way: 
Download the necessary files from:
http://academy.cba.mit.edu/classes/networking_communications/index.html
With Ubuntu we need to download the following files:
bus 
asynchronous

components
hello.bus.45.bridge  -  board traces interior
hello.bus.45.node    -  board traces interior
hello.bus.45.c (same for node and bridge, basic c file), makefile (to compile c files)

Design, Mill and stuff the boards

Schematic Node Board:

node0

node1

Schematic Bridge Board:

bridge1

bridge2

Cheking the boards and components:

2nodes

Bridge and node assembly boards:

boards

 

Programming bridge board with FabISP

I edited the original hello.bus.45.c file and changed delay time to 500 ms instead 100 ms. (the image below shows 1000 but I saved 500 value). Next to the mouse cursor shows node_id '0', for bridge (node 0).

cfile

Connect FabISP we must not forget to power on the bridge board with FTDI cable connected to PC

connect

In the terminal, I move to the directory that contains hello.bus.45.c and hello.bus.45.make files and type sudo make -f hello.bus.45.make program-usbtiny to compile c file and send it to the helloboard (ATtiny45) through the FabISP (usbtiny).

The output from terminal:

flash

Programming each node:

program

I proceed with the same procedures with nodes 1 and 2. I edited hello.bus.45.c and change node id (one board with id 1 and the other node with id 2), after that I program the boards.

Finally, open the arduino, and serial monitor on it, adjust the baud rate to 9600 (same as the c file) and I typed 0 followed by "enter" or "send".

arduino

Networking assembly for serial bus (1 bridge and 2 nodes)

net

The next video shows the output. Signal sent to node 0 (bridge), the LEDs on all the boards light up once, after that, just the node 0 lights on the LED; furthermore, the circuit board returns the signal with the message "node 0".

Watch the VIDEO:

Files:

- Files : schematic - png - rml