[WEEK15] Networking and communications

0. Overview



I made 2 boards -Bridge and Node- . And I wrote a program to communicate between the two boards with serial bus communication.

1. Circuit making

I tried to do serial bus communication. So I used the following data 'hello.bus.45.bridge' and 'hello.bus.45.node".



Create cut data with fab modules.



Make circuit board with Roland SRM-20.



Finally, soldering all parts.



Parts list-Bridge-
Part name P/Number Quantity
ATTINY45 ATTINY45V-10SU-ND 1
Capacitor 1uF C3216X7R1H105K160AB 1
Resistor 10K ohm RC1206FR-0710KL 1
Resistor 1K ohm RC1206FR-071KL 1
LED Green Crear 160-1169-1-ND 1
ISP/6-pin header 1
bus/4-pin header 1
FTDI header 1
Parts list-Node-
Part name P/Number Quantity
ATTINY45 ATTINY45V-10SU-ND 1
Capacitor 1uF C3216X7R1H105K160AB 1
Resistor 10K ohm RC1206FR-0710KL 1
Resistor 1K ohm RC1206FR-071KL 1
LED Green Crear 160-1169-1-ND 1
ISP/6-pin header 1
bus/4-pin header 1

Download

hello.bus.45.rml files.zip
(bridge & node / trace & interior):
Download the file

2. Programming

2.1 Trial to write C program

At first, I tried to use Neil's program "hello.bus.45.c". I rewrite makefile as folows.
After burnin makefile named "hello.bus.45.c.make", the following error massage was displayed.



I refine the indent and retried. It seemed that the program went through and 2 new files were made 'hello.bus.45.c.hex','hello.bus.45.out'/
But the following massage was disolayed and the operation didn't finished.



Because I didn't find how to solve this problem, I decided to write program with arduino IDE.

Download

a set of document
(hello.bus.45.c.make / hello.bus.45.c.hex / hello.bus.45.c.out):
Download the file

2.2 Program with Arduino IDE

At first, burned bootlader to each board. And wrote the program as follows.

serialCommunicationBridge.ino: serialCommunicationNode.ino:

It was suceeded.



Download

serialCommunicationBridge.ino: Download the file
serialCommunicationNode.ino: Download the file

4. Making own circuit

4.1 Circuit design

bridge

I desginen own circuit board with EAGLE. The parts that I used were the same as those I made earlier.



When I was milling the circuit, I have broken the mill to cut the outline. Because I didn't have a replacement mill, I decided to use a φ2mm mill.  So the distance between the trace and the outline is wider than usual.



Finally I exported files as PNG format.





Download

myhello.bus.45.brideg.zip(Eagle project file included sch. brd.files): Download the file
myhello.bus.45.bridge_png.zip(png files of trace and interior): Download the file

node

I created the node data in the same way with Eagle and created a PNG files.







Download

myhello.bus.45.node.zip(Eagle project file included sch. brd.files): Download the file
myhello.bus.45.node_png.zip(png files of trace and interior): Download the file

4.2 Making circuit board

I created tool path data with Fabmodules and milled circuit board with SRM-20. And then, I soldered all parts.

trace:

dpi: 500
cut depth (mm): 0.1
tool diameter (mm): 0.3
number of offsets: 3
offset overlap (%): 50

interior:

dpi: 500
cut depth (mm): 0.6
tool diameter (mm): 2
number of offsets: 1
offset overlap (%): 50

bridge:


node:




Finally I soldered all parts.



Download

myhello.bus.45.bridge_rml.zip(rml files of trace and interior): Download the file
myhello.bus.45.node_rml.zip(rml files of trace and interior): Download the file

4.3 Programming

I programmed to each board with FabISP that I made. The files that I programmed were the same above (serialCommunicationBridge.ino and serialCommunicationNode.ino:).

Prgramming to brige board:



Prgramming to node board:



Finally, I checked if the program works. When I sent the numbers "1" or "2" from the serial monitor, the LED of the corresponding board blinked. It was succeeded.