Everything is Talkative: Unterschied zwischen den Versionen

Aus hyperdramatik
Zur Navigation springen Zur Suche springen
Zeile 21: Zeile 21:


8 run the Processing sketch
8 run the Processing sketch


== PROCESSING <-- OSC --> PROCESSING ==
== PROCESSING <-- OSC --> PROCESSING ==
=== INSTALL : PROCESSING OSC LIBRARY ===
1) in the Processing top menu go to: “Sketch” –> “Import Library” –> “Import Library”
2) type “OSC” in the search box
3) select the OSC library
4) click on “Install”
DONE!


== PROCESSING <-- MQTT(shiftr.io) --> PROCESSING ==
== PROCESSING <-- MQTT(shiftr.io) --> PROCESSING ==


=== INSTALL : PROCESSING MQTT LIBRARY ===
=== INSTALL : PROCESSING MQTT LIBRARY ===
follow these instructions to install the MQTT Processing library:


1) in the Processing top menu go to: “Sketch” –> “Import Library” –> “Import Library”
1) in the Processing top menu go to: “Sketch” –> “Import Library” –> “Import Library”
Zeile 40: Zeile 54:


see also: https://www.shiftr.io/try?lang=processing
see also: https://www.shiftr.io/try?lang=processing


==== ARDUINO <-- Serial --> PROCESSING <--- MQTT ---> PROCESSING <-- Serial --> ARDUINO ====
==== ARDUINO <-- Serial --> PROCESSING <--- MQTT ---> PROCESSING <-- Serial --> ARDUINO ====


www.youtube.com/embed/8nRm6WNk57I
www.youtube.com/embed/8nRm6WNk57I


== ARDUINO ESP32 <-- MQTT(shiftr.io) --> PROCESSING ==
== ARDUINO ESP32 <-- MQTT(shiftr.io) --> PROCESSING ==


=== INSTALL: ARDUINO ESP32 HARDWARE ===
=== INSTALL: ARDUINO ESP32 HARDWARE ===
follow these instructions to install the ESP32 Arduino library:


1 Menu: Preferences —> Additional Boards Manager URLs:
1 Menu: Preferences —> Additional Boards Manager URLs:
Zeile 64: Zeile 80:
Menu: Tools —> Flash Frequency: 80Mhz
Menu: Tools —> Flash Frequency: 80Mhz
Menu: Tools —> Upload Speed: 115200
Menu: Tools —> Upload Speed: 115200


=== INSTALL : ARDUINO MQTT LIBRARY ===
=== INSTALL : ARDUINO MQTT LIBRARY ===
1 Menu: Sketch —> Include Library —> Manage Libraries
1 Menu: Sketch —> Include Library —> Manage Libraries


Zeile 73: Zeile 91:


see also: https://www.shiftr.io/try?lang=arduino
see also: https://www.shiftr.io/try?lang=arduino


=== TEST: ESP ARDUINO CONNECTION ===
=== TEST: ESP ARDUINO CONNECTION ===
Menu: File —> Examples —> Basics —> “Blink”
Menu: File —> Examples —> Basics —> “Blink”
edit: LED_PIN = 2;
edit: LED_PIN = 2;
—> blue LED should blink on/off
—> blue LED should blink on/off




=== TEST: ESP SENSOR CONNECTION ===
=== TEST: ESP SENSOR CONNECTION ===
READ ANALOG SENSOR
READ ANALOG SENSOR
Menu: File —> Examples —> Communication —> “Graph”
Menu: File —> Examples —> Communication —> “Graph”
edit: Serial.begin(115200);
edit: Serial.begin(115200);
edit: pick a GPIO pin with and ADC
edit: pick a GPIO pin with and ADC
(GPIO = General Purpose In Out)
(GPIO = General Purpose In Out)
(ADC = Analog Digital Converter)
(ADC = Analog Digital Converter)
for example: analogRead(34);
for example: analogRead(34);


Zeile 96: Zeile 125:


edit: your wifi info:
edit: your wifi info:
your network name / SIID
your network name / SIID
(SIID = Service Set Identifier)
(SIID = Service Set Identifier)
your password
your password


edit: the “ClientID” so that you can see yourself connect:
edit: the “ClientID” so that you can see yourself connect:
client.connect(“ClientID”, “try”, “try”)
client.connect(“ClientID”, “try”, “try”)


edit: the topics you subscribe and publish to by adding “/yourName”
edit: the topics you subscribe and publish to by adding “/yourName”
you can also change the “message” you are sending!
you can also change the “message” you are sending!


Zeile 112: Zeile 146:
https://live.staticflickr.com/65535/49856212336_cf2c240d1e_c.jpg
https://live.staticflickr.com/65535/49856212336_cf2c240d1e_c.jpg
https://live.staticflickr.com/65535/49856212466_3997636a84_c.jpg
https://live.staticflickr.com/65535/49856212466_3997636a84_c.jpg


= T H E O R Y =
= T H E O R Y =

Version vom 10. April 2021, 22:37 Uhr

We like to embed electronics in everything these days, and while we’re at it why not include wifi so that everything can communicate with everything via The Internet.


E X A M P L E S

ARDUINO Uno / Flora <-- Serial --> PROCESSING

1 download and install newest version of Processing (https://processing.org)

2 download and install newest version of Arduino (https://www.arduino.cc)

3 ARDUINO --> open --> EXAMPLES --> COMMUNICATION --> GRAPH

4 upload Arduino Code to Arduino

5 connect sensor to Arduino and open the Arduino Serial Monitor to see the values coming in

6 scroll down in the Arduino code and copy Processing code to a new Processing sketch

7 edit port name "myPort = new Serial(this, Serial.list()[0], 9600);"

8 run the Processing sketch


PROCESSING <-- OSC --> PROCESSING

INSTALL : PROCESSING OSC LIBRARY

1) in the Processing top menu go to: “Sketch” –> “Import Library” –> “Import Library”

2) type “OSC” in the search box

3) select the OSC library

4) click on “Install”

DONE!


PROCESSING <-- MQTT(shiftr.io) --> PROCESSING

INSTALL : PROCESSING MQTT LIBRARY

1) in the Processing top menu go to: “Sketch” –> “Import Library” –> “Import Library”

2) type “MQTT” in the search box

3) select the MQTT library by Joel Gaehwiler

4) click on “Install”

DONE!

see also: https://www.shiftr.io/try?lang=processing


ARDUINO <-- Serial --> PROCESSING <--- MQTT ---> PROCESSING <-- Serial --> ARDUINO

www.youtube.com/embed/8nRm6WNk57I


ARDUINO ESP32 <-- MQTT(shiftr.io) --> PROCESSING

INSTALL: ARDUINO ESP32 HARDWARE

1 Menu: Preferences —> Additional Boards Manager URLs: https://dl.espressif.com/dl/package_esp32_index.json

2 Menu: Tools —> Boards —> Boards Manager: search for: “ESP32” Install: “esp32 by Espressif Systems”

3 Menu: Tools —> Board: ESP32 Dev Module Menu: Tools —> Port: dev/cu… (unplug and plug to see which port appears) Menu: Tools —> Flash Mode: QIO Menu: Tools —> Flash Size: 4MB Menu: Tools —> Flash Frequency: 80Mhz Menu: Tools —> Upload Speed: 115200


INSTALL : ARDUINO MQTT LIBRARY

1 Menu: Sketch —> Include Library —> Manage Libraries

2 search for: “MQTT”

3 Install: MQTT library for Arduino by Joel Gaehwiler

see also: https://www.shiftr.io/try?lang=arduino


TEST: ESP ARDUINO CONNECTION

Menu: File —> Examples —> Basics —> “Blink”

edit: LED_PIN = 2;

—> blue LED should blink on/off


TEST: ESP SENSOR CONNECTION

READ ANALOG SENSOR

Menu: File —> Examples —> Communication —> “Graph”

edit: Serial.begin(115200);

edit: pick a GPIO pin with and ADC

(GPIO = General Purpose In Out)

(ADC = Analog Digital Converter)

for example: analogRead(34);

Note: ADC2 pins cannot be used when Wi-Fi is used. So, if you’re using Wi-Fi and you’re having trouble getting the value from an ADC2 GPIO, you may consider using an ADC1 GPIO instead, that should solve your problem.


SEND: SENSORDATA OVER MQTT

Menu: File —> Examples —> MQTT —> ESP32DevelopmentBoard

edit: your wifi info:

your network name / SIID

(SIID = Service Set Identifier)

your password

edit: the “ClientID” so that you can see yourself connect:

client.connect(“ClientID”, “try”, “try”)

edit: the topics you subscribe and publish to by adding “/yourName”

you can also change the “message” you are sending!

client.subscribe(“/hello/yourName”);

client.publish(“/hello/yourName”, “message”);

49856212336_cf2c240d1e_c.jpg 49856212466_3997636a84_c.jpg

T H E O R Y

how things are talking with each-other using electricity

an introduction to networks: Netwerk

ELECTRICITY LAYER

ON / OFF

Binary: 0,1 HIGH, LOW ON, OFF 0V, 5V GND, VCC

BINARY ENCODING, 8BIT/1BYTE

2^8=256

ASCII

American Standard Code for Information Interchange

UNICODE

51107648386_c8811ce95e_c.jpg


HARDWARE LAYER

PARALLEL

DB-25 51107072372_a9693d8f1f_c.jpg

SERIAL

RS232: Recomended Standard USB: Universal Serial Bus 51107392694_ddf8a54b29_c.jpg

ETHERNET

TRANSPORT LAYER

NETWORK, LAN, IP

IP: Internet Protocol LAN: Local Area Network Ethernet 51107649681_30924fff2d_c.jpg 51107649946_8bc206738f_c.jpg 51107650276_c11f5bd2c4_c.jpg

UDP (SEND MODEL)

User Datagram Protocol

TCP (CONNECT, SEND, RECEIVE MODEL)

Transmission Control Protocol

ENCODING LAYER

OSC (ADDRESS MODEL)

Open Sound Control

HID

Human Interface Device

PUBLISH <-> SUBSCRIBE MODEL

MQTT

MQTT: Message Queuing Telemetry Transport 51108424240_08b766bdc7_c.jpg