aboutsummaryrefslogtreecommitdiff
path: root/libraries/Firmata/examples/EchoString
diff options
context:
space:
mode:
Diffstat (limited to 'libraries/Firmata/examples/EchoString')
-rw-r--r--libraries/Firmata/examples/EchoString/EchoString.ino46
1 files changed, 46 insertions, 0 deletions
diff --git a/libraries/Firmata/examples/EchoString/EchoString.ino b/libraries/Firmata/examples/EchoString/EchoString.ino
new file mode 100644
index 0000000..5079697
--- /dev/null
+++ b/libraries/Firmata/examples/EchoString/EchoString.ino
@@ -0,0 +1,46 @@
+/*
+ * Firmata is a generic protocol for communicating with microcontrollers
+ * from software on a host computer. It is intended to work with
+ * any host computer software package.
+ *
+ * To download a host software package, please clink on the following link
+ * to open the download page in your default browser.
+ *
+ * http://firmata.org/wiki/Download
+ */
+
+/* This sketch accepts strings and raw sysex messages and echos them back.
+ *
+ * This example code is in the public domain.
+ */
+#include <Firmata.h>
+
+byte analogPin;
+
+void stringCallback(char *myString)
+{
+ Firmata.sendString(myString);
+}
+
+
+void sysexCallback(byte command, byte argc, byte*argv)
+{
+ Firmata.sendSysex(command, argc, argv);
+}
+
+void setup()
+{
+ Firmata.setFirmwareVersion(0, 1);
+ Firmata.attach(STRING_DATA, stringCallback);
+ Firmata.attach(START_SYSEX, sysexCallback);
+ Firmata.begin(57600);
+}
+
+void loop()
+{
+ while(Firmata.available()) {
+ Firmata.processInput();
+ }
+}
+
+