Skip to content

Added SerialPassthrough sketch to communication examples #4990

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
May 26, 2016
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
/*
SerialPassthrough sketch

Some boards, like the Arduino 101, the MKR1000, Zero, or the Micro,
have one hardware serial port attached to Digital pins 0-1, and a
separate USB serial port attached to the IDE Serial Monitor.
This means that the "serial passthrough" which is possible with
the Arduino UNO (commonly used to interact with devices/shields that
require configuration via serial AT commands) will not work by default.

This sketch allows you to emulate the serial passthrough behaviour.
Any text you type in the IDE Serial monitor will be written
out to the serial port on Digital pins 0 and 1, and vice-versa.

On the 101, MKR1000, Zero, and Micro, "Serial" refers to the USB Serial port
attached to the Serial Monitor, and "Serial1" refers to the hardware
serial port attached to pins 0 and 1. This sketch will emulate Serial passthrough
using those two Serial ports on the boards mentioned above,
but you can change these names to connect any two serial ports on a board
that has multiple ports.

Created 23 May 2016
by Erik Nyquist
*/

void setup() {
Serial.begin(9600);
Serial1.begin(9600);
}

void loop() {
if (Serial.available()) { // If anything comes in Serial (USB),
Serial1.write(Serial.read()); // read it and send it out Serial1 (pins 0 & 1)
}

if (Serial1.available()) { // If anything comes in Serial1 (pins 0 & 1)
Serial.write(Serial1.read()); // read it and send it out Serial (USB)
}
}