aboutsummaryrefslogtreecommitdiff
path: root/libraries/Bridge/examples/SpacebrewYun/input_output/input_output.ino
blob: e95457f660b23123d9bd573b8915eb1e855c8866 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
#include <Bridge.h>
#include <SpacebrewYun.h>

/**
 *	Arduino Yun Spacebrew Library Example
 *
 *	This example code is in the public domain.
 *	
 * 	@date 		July 16, 2013
 *  @author		Julio Terra
 *   
 */

SpacebrewYun sb = SpacebrewYun("aYun", "Arduino Yun spacebrew test");

int counter = 0;
long last = 0;
int interval = 2000;

void setup() { 

	Serial.begin(57600);
	delay(4000);
	while (!Serial) { 	Serial.println("connecting"); }


	//Initialize Console and wait for port to open:
	Bridge.begin();
	Serial.println("Bridge Started"); 

	Serial.println("Configuring Spacebrew Client"); 
	sb.verbose(true);
	sb.addPublish("string test", "string");
	sb.addPublish("range test", "range");
	sb.addPublish("boolean test", "boolean");
	sb.addPublish("custom test", "crazy");
	sb.addSubscribe("string test", "string");
	sb.addSubscribe("range test", "range");
	sb.addSubscribe("boolean test", "boolean");
	sb.addSubscribe("custom test", "crazy");
	sb.onRangeMessage(handleRange);
	sb.onStringMessage(handleString);
	sb.onBooleanMessage(handleBoolean);
	sb.onCustomMessage(handleCustom);
	sb.connect("sandbox.spacebrew.cc"); 

} 


void loop() { 
	sb.monitor();
	if ( sb.connected() ) {
		if ( (millis() - last) > interval ) {
			String test_str_msg = "testing, testing, ";
			test_str_msg += counter;
			counter ++;

			sb.send("string test", test_str_msg);
			sb.send("range test", 500);
			sb.send("boolean test", true);
			sb.send("custom test", "youre loco");

			last = millis();

		}
	}
} 

void handleRange (String route, int value) {
	Serial.print("Range msg ");
	Serial.print(route);
	Serial.print(", value ");
	Serial.println(value);
}

void handleString (String route, String value) {
	Serial.print("String msg ");
	Serial.print(route);
	Serial.print(", value ");
	Serial.println(value);
}

void handleBoolean (String route, boolean value) {
	Serial.print("Boolen msg ");
	Serial.print(route);
	Serial.print(", value ");
	Serial.println(value ? "true" : "false");
}

void handleCustom (String route, String value, String type) {
	Serial.print("Custom msg ");
	Serial.print(route);
	Serial.print(" of type ");
	Serial.print(type);
	Serial.print(", value ");
	Serial.println(value);
}