Wireless Workshop

Aus hyperdramatik
Zur Navigation springen Zur Suche springen

Wireless Communication - how does it even work ???

Radio waves! Radio

Frequency modulation vs. amplitude modulation, WiFi uses adaptive modulation

https://qph.fs.quoracdn.net/main-qimg-160870a1426502f3700f1c52310d5e56

schemas_03_en.png


Explanation Videos

How WiFi and Cell Phones Work | Wireless Communication Explained https://www.youtube.com/watch?v=kxLcwIMYmr0

Bluetooth vs WiFi - What's the difference? https://www.youtube.com/watch?v=mPMGRILsOVk

How Does Wi-Fi Work? | Earth Lab https://www.youtube.com/watch?v=xmabFJUKMdg

How Information Travels Wirelessly https://www.youtube.com/watch?v=Ax7dYaRiY6o


Wireless Technologies

hardware + software (protocols)

a selection of common wireless communication technologies:

RFID vs. NFC - RFID can be scanned up to 100m, NFC is limited to small distances

  • Bluetooth, BLE (Bluetooth Low Energy) (2.4/2.5 GHz) - slower, shorter distance, less energy (good when you need to make something very small)

Zigbee (Mesh Protocol) (2.4/2.5 GHz) - low-power, low data rate, and close proximity

  • Wi-Fi (2.4/2.5 GHz) - faster, 10xbluetooth distance, more energy

Antenna Cellular (3G/4G/5G) - very high operational costs and power requirements

Wireless ranges

3-Figure2-1.png 840px-%D0%9F%D1%80%D0%B8%D0%BC%D0%B5%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5_LPWAN.png

7-layer OSI model

Open Systems Interconnection Model https://www.imperva.com/learn/wp-content/uploads/sites/13/2020/02/OSI-7-layers.jpg.webp


Selecting Hardware

Manufacturers & Distributors

segor >> https://www.segor.de/#Q=ESP32-DevKit&M=1

conrad >> https://www.conrad.de/

adafruit >> https://www.adafruit.com/

sparkfun >> https://www.sparkfun.com/

Good Tutorials

heise make magazine >> https://www.heise.de/make/

ESP Make special >> https://www.flickr.com/photos/plusea/sets/72157714270562172/

adafruit >> https://www.adafruit.com/

sparkfun >> https://www.sparkfun.com/

New Products 11/10/21 feat. Adafruit ESP32-S2 Feather >> https://www.youtube.com/watch?v=SSHbJ0FhIpo


ESP32 by espressif

In this workshop we will focus on the ESP32 by espressif >> https://www.espressif.com/en/products/socs/esp32

>> https://en.wikipedia.org/wiki/ESP32

history: v1...... ESP32

Why ESP32's Are The Best Microcontrollers https://www.youtube.com/watch?v=A5CB4t9sukM


Different ESP32 boards

ESP32 Devkit, particle, nodeMCU, pycome, bluefruit, feather, SparkFun ESP32 Thing


ESP32 Devboard 38pin version

What you need to do to be able to program the ESP32 with the Arduino IDE >> http://hyperdramatik.net/mediawiki/index.php?title=ESP32_mit_Arduino

Nice ESP32 Devboard 38pin documentation >> https://www.studiopieters.nl/esp32-pinout/


Some important infos about the ESP:

ADC 2 pins don't work when using wifi

analogWrite function does not work?

mistake GND pin is CMD pin!


800px-ESP32-38_PIN-DEVBOARD.png


OSC & Arduino

OSC + Arduino >> http://hyperdramatik.net/mediawiki/index.php?title=OSC_in_Arduino

Sending data from ESP to Processing
Sending data from Processing to ESP
Arduino code for printing IP address of ESP32:

  Serial.println("IP address: ");

  Serial.println(WiFi.localIP());
Sending data from ESP to ESP
OSC & Processing

OSC + Processing >> http://hyperdramatik.net/mediawiki/index.php?title=OSC_in_Processing

OSC & Unity

OSC + Unity >> http://hyperdramatik.net/mediawiki/index.php?title=OSC_in_Unity


OSC & vvvv

OSC + vvvv >> https://github.com/clockdiv/Spaghettimonster (example code from Julian)


MQTT

MQTT Brokers http://hyperdramatik.net/mediawiki/index.php?title=MQTT_Brokers

MQTT Clients:

Arduino: Shiftr.io Arduino MQTT library: "MQTT by Joel Gaehwiller” >> http://hyperdramatik.net/mediawiki/index.php?title=MQTT_in_Arduino

Processing: Shiftr.io Processing MQTT library: "MQTT library for Processing based on the Eclipse Paho project by Joel Gaehwiller” >> http://hyperdramatik.net/mediawiki/index.php?title=MQTT_in_Processing


BLE

ESP32-BLE-MIDI: An Arduino library to use Midi over Bluetooth Low Energy (BLE) on ESP32 boards >> https://github.com/max22-/ESP32-BLE-MIDI

BLE-MIDI I/Os for Arduino: MIDI over Bluetooth Low Energy (BLE-MIDI) 1.0 for Arduino >> https://github.com/lathoub/Arduino-BLE-MIDI