diff --git a/V3-WeMos/Circuit/CIRCUIT.pdf b/V3-WeMos/Circuit/CIRCUIT.pdf
new file mode 100644
index 0000000..5766e4f
Binary files /dev/null and b/V3-WeMos/Circuit/CIRCUIT.pdf differ
diff --git a/V3-WeMos/Circuit/CIRCUIT.svg b/V3-WeMos/Circuit/CIRCUIT.svg
new file mode 100644
index 0000000..62a47a7
--- /dev/null
+++ b/V3-WeMos/Circuit/CIRCUIT.svg
@@ -0,0 +1,4559 @@
+
+
diff --git a/V3-WeMos/Circuit/WeMos-D1-mini.svg b/V3-WeMos/Circuit/WeMos-D1-mini.svg
new file mode 100644
index 0000000..aa890e9
--- /dev/null
+++ b/V3-WeMos/Circuit/WeMos-D1-mini.svg
@@ -0,0 +1,323 @@
+
+
\ No newline at end of file
diff --git a/V3-WeMos/Circuit/mpu6050.svg b/V3-WeMos/Circuit/mpu6050.svg
new file mode 100644
index 0000000..4d95b87
--- /dev/null
+++ b/V3-WeMos/Circuit/mpu6050.svg
@@ -0,0 +1,498 @@
+
+
+
\ No newline at end of file
diff --git a/V3-WeMos/ESP8266sendMessage/ESP8266sendMessage.ino b/V3-WeMos/ESP8266sendMessage/ESP8266sendMessage.ino
new file mode 100644
index 0000000..997e322
--- /dev/null
+++ b/V3-WeMos/ESP8266sendMessage/ESP8266sendMessage.ino
@@ -0,0 +1,76 @@
+
+#include
+#include
+#include
+#include
+#include
+
+const int MPU=0x68;
+int16_t AcX,AcY,AcZ;
+
+char ssid[] = "NETGEAR41";
+char pass[] = "magicalbanana0";
+
+WiFiUDP Udp;
+const IPAddress outIp(192,168,0,29); // remote IP of receiver computer
+const unsigned int outPort = 7000; // remote port to receive OSC
+
+void setup() {
+
+ Wire.begin();
+ Wire.beginTransmission(MPU);
+ Wire.write(0x6B);
+ Wire.write(0);
+ Wire.endTransmission(true);
+
+ Serial.begin(115200);
+
+ Serial.print("Connecting to ");
+ Serial.println(ssid);
+ WiFi.begin(ssid, pass);
+
+ while (WiFi.status() != WL_CONNECTED) {
+ delay(500);
+ Serial.print(".");
+ }
+
+ Serial.println("");
+ Serial.println("WiFi connected");
+ Serial.println("IP address: ");
+ Serial.println(WiFi.localIP());
+
+}
+
+void loop() {
+
+ Wire.beginTransmission(MPU);
+ Wire.write(0x3B);
+ Wire.endTransmission(false);
+ Wire.requestFrom(MPU,14);
+ AcX=Wire.read()<<8|Wire.read();
+ AcY=Wire.read()<<8|Wire.read();
+ AcZ=Wire.read()<<8|Wire.read();
+
+ Serial.print(AcX);
+ Serial.print("\t");
+ Serial.print(AcY);
+ Serial.print("\t");
+ Serial.println(AcZ);
+
+ OSCMessage msgRX("/movedulation/sliderRX");
+ msgRX.add(AcX);
+ Udp.beginPacket(outIp, outPort);
+ msgRX.send(Udp);
+ Udp.endPacket();
+ msgRX.empty();
+
+ OSCMessage msgRY("/movedulation/sliderRY");
+ msgRY.add(AcY);
+ Udp.beginPacket(outIp, outPort);
+ msgRY.send(Udp);
+ Udp.endPacket();
+ msgRX.empty();
+
+
+ delay(100);
+}
diff --git a/V3-WeMos/ProcessingTestReceive/ProcessingTestReceive.pde b/V3-WeMos/ProcessingTestReceive/ProcessingTestReceive.pde
new file mode 100644
index 0000000..442672a
--- /dev/null
+++ b/V3-WeMos/ProcessingTestReceive/ProcessingTestReceive.pde
@@ -0,0 +1,27 @@
+
+import oscP5.*;
+import netP5.*;
+
+OscP5 oscP5;
+
+void setup() {
+ size(400,400);
+ frameRate(25);
+ oscP5 = new OscP5(this,7000);
+}
+
+void draw() {
+ background(0);
+}
+
+void oscEvent(OscMessage theOscMessage) {
+ print("### Pattern: "+theOscMessage.addrPattern());
+ print(" TypeTag:"+theOscMessage.typetag());
+ if(theOscMessage.checkTypetag("i")){
+ print(" Value: "+theOscMessage.get(0).intValue());
+ }
+ if(theOscMessage.checkTypetag("s")){
+ print(" Value: "+theOscMessage.get(0));
+ }
+ println();
+}