// Week 15 - Networking and Communications // Atmega328P board as Arduino/Genuino Uno // Network node 3 // // Author: Jari Uusitalo // Modified by Kati Pitkänen on 31.05.2018 // BRIDGE Board for Networking #include #define txPin A1 // A1 transmits signal from the Bridge board #define rxPin A2 // A1 recieves signal from the NODE boards int incomingbyte; // For incoming serial data int ledPin = 13; // LED pin to light up a LED if node board is responding SoftwareSerial mySerial(rxPin, txPin); // Set up Serial Port RX, TX void setup() { pinMode(ledPin, OUTPUT); // Green LED is in output pin 13 Serial.begin(9600); // Open Serial communication via FTDI-cable between Bridge and computer mySerial.begin(9600); // Start Serial between NODEs and Bridge (data rate to 9600 bits per second) } void loop() { while ( Serial.available()){ incomingbyte = Serial.read(); // Read the incoming byte Serial.write(incomingbyte); Serial.print(" *NODE: "); Serial.print((char)incomingbyte); Serial.println(" is responding "); mySerial.write(incomingbyte); digitalWrite(ledPin, HIGH); // Blink the green LED as a sign that the request is received delay(1000); digitalWrite(ledPin, LOW); delay(500); digitalWrite(ledPin, HIGH); delay(500); digitalWrite(ledPin, LOW); delay(500); digitalWrite(ledPin, HIGH); delay(200); digitalWrite(ledPin, LOW); } }