Page 1 of 1

ESP32 Tutorials

Posted: Mon May 08, 2017 2:16 pm
by anteph
Hi,

I've been writing some tutorials about the ESP32 at my blog, which are available in the link bellow. I'm covering some basic topics, such as how to connect to a WiFi network or how to connect to MQTT broker, and some more advanced ones, such as using FreeRTOS in the Arduino IDE environment.

https://techtutorialsx.com/category/esp32/

Hope it helps others.

Best regards,
Nuno Santos

Re: ESP32 Tutorials

Posted: Wed May 17, 2017 10:28 am
by anteph
To help the search for specific content and to avoid new threads for each article, I will leave here a list of the tutorials available. I will try to keep it updated. Hope it helps.

Introductory tutorials
- Brief introduction to the ESP32: https://techtutorialsx.com/2017/04/24/esp32/
- Hello World application with the Arduino support: https://techtutorialsx.com/2017/04/24/e ... llo-world/
- Connecting to a WiFi network: https://techtutorialsx.com/2017/04/24/e ... i-network/


JSON
- Parsing JSON messages: https://techtutorialsx.com/2017/04/26/e ... sing-json/
- Creating JSON messages: https://techtutorialsx.com/2017/04/27/e ... n-message/


MQTT
- Publishing messages to a MQTT topic: https://techtutorialsx.com/2017/04/24/e ... qtt-topic/
- Subscribing to MQTT topic: https://techtutorialsx.com/2017/04/24/e ... qtt-topic/
- Sending JSON over MQTT: https://techtutorialsx.com/2017/04/29/e ... over-mqtt/


FreeRTOS general tutorials (Arduino support)
- Using FreeRTOS in the Arduino environment: https://techtutorialsx.com/2017/05/06/e ... functions/
- Creating FreeRTOS tasks: https://techtutorialsx.com/2017/05/06/e ... ng-a-task/
- Passing arguments to FreeRTOS tasks: https://techtutorialsx.com/2017/05/07/e ... rtos-task/
- Getting FreeRTOS tasks priority: https://techtutorialsx.com/2017/05/07/e ... -priority/
- FreeRTOS counting semaphores: https://techtutorialsx.com/2017/05/11/e ... emaphores/


ESP32 Dual core execution
- Getting ESP32 core where task is executing: https://techtutorialsx.com/2017/05/09/e ... tion-core/
- Running code on a specific ESP32 core: https://techtutorialsx.com/2017/05/09/e ... ific-core/
- ESP32 dual core execution speedup analysis: https://techtutorialsx.com/2017/05/16/e ... n-speedup/


SSD1306 OLED (Arduino core)
- Getting started with the display: https://techtutorialsx.com/2017/12/02/e ... d-display/
- Drawing a QR code on the SSD1306: https://techtutorialsx.com/2017/12/16/e ... a-qr-code/
- Redrawing a string: https://techtutorialsx.com/2017/12/03/e ... -a-string/


MISC (Arduino core)
- Using the pthreads library: https://techtutorialsx.com/2017/12/30/e ... s-library/
- Random number generation: https://techtutorialsx.com/2017/12/22/e ... eneration/
- Applying the HMAC SHA256 mechanism (mbed TLS): https://techtutorialsx.com/2018/01/25/e ... mechanism/
- Getting the free heap: https://techtutorialsx.com/2017/12/17/e ... free-heap/
- Basic authentication in HTTP GET requests: https://techtutorialsx.com/2018/01/03/e ... ntication/
- Base64 encoding: https://techtutorialsx.com/2017/12/09/e ... enconding/
- Software reset: https://techtutorialsx.com/2017/12/03/e ... are-reset/
- External interrupts: https://techtutorialsx.com/2017/09/30/e ... nterrupts/
- Timer interrupts: https://techtutorialsx.com/2017/10/07/e ... nterrupts/
- HTTPS GET Requests: https://techtutorialsx.com/2017/11/18/e ... t-request/
- HTTP POST Requests: https://techtutorialsx.com/2017/05/20/e ... -requests/
- HTTP GET Requests: https://techtutorialsx.com/2017/05/19/e ... -requests/
- Setting a socket server: https://techtutorialsx.com/2017/11/13/e ... et-server/
- Printing the firmware version of the MFRC522: https://techtutorialsx.com/2017/11/01/e ... e-version/
- Getting started with the aREST library: https://techtutorialsx.com/2017/10/12/e ... t-library/
- Using structs in the Arduino core: https://techtutorialsx.com/2018/03/15/e ... g-structs/
- The typedef keyword in the Arduino core: https://techtutorialsx.com/2018/03/15/e ... f-keyword/
- Controlling a relay: https://techtutorialsx.com/2018/02/17/e ... g-a-relay/
- Controlling a relay remotely with HTTP: https://techtutorialsx.com/2018/03/02/e ... -remotely/
- Variable length arrays: https://techtutorialsx.com/2018/02/13/e ... th-arrays/
- Testing uLisp (operating on top of Arduino core): https://techtutorialsx.com/2018/09/12/e ... ing-ulisp/


Async HTTP web server (Arduino)
- Serving jQuery: https://techtutorialsx.com/2018/09/11/e ... ng-jquery/
- Serving external css file (from file sustem): https://techtutorialsx.com/2018/09/17/e ... -css-file/
- Websocket endpoint and receiving data from JavaScript :https://techtutorialsx.com/2018/09/13/e ... et-client/
- Websocket endpoint sending data to JavaScript client: https://techtutorialsx.com/2018/09/11/e ... websocket/
- Serving image from SPIFFS file system: https://techtutorialsx.com/2018/08/24/e ... le-system/
- Serving HTML from SPIFFS file system: https://techtutorialsx.com/2018/08/24/e ... le-system/


JavaScript (ESPruino)
- Getting started with JavaScript on the ESP32: https://techtutorialsx.com/2017/10/15/e ... -espruino/
- Scanning WiFi Networks: https://techtutorialsx.com/2017/10/16/e ... -networks/
- Array map method: https://techtutorialsx.com/2017/10/21/e ... ap-method/
- Connect to WiFi: https://techtutorialsx.com/2017/10/21/e ... i-network/
- Using the SHA1 algorithm: https://techtutorialsx.com/2017/10/21/e ... algorithm/
- Convert number to string in different bases: https://techtutorialsx.com/2017/10/26/e ... ent-bases/
- Array every method: https://techtutorialsx.com/2017/10/30/e ... ry-method/
- Creating objects: https://techtutorialsx.com/2017/10/30/e ... t-objects/


Bluetooth Classic
- ESP32 Arduino Serial over Bluetooth: https://techtutorialsx.com/2018/03/13/e ... ving-data/
- ESP32 Arduino: Getting the Bluetooth Device Address: https://techtutorialsx.com/2018/03/09/e ... e-address/
- ESP32 Arduino: Serial communication over Bluetooth Hello World: https://techtutorialsx.com/2018/03/09/e ... llo-world/
- ESP32 Arduino Bluetooth Classic: Setting the device name: https://techtutorialsx.com/2018/03/06/e ... vice-name/
- ESP32 Arduino Bluetooth classic: Getting started: https://techtutorialsx.com/2018/03/04/e ... g-started/
- ESP32 Bluetooth: Advertising a SPP service with SDP: https://techtutorialsx.com/2017/07/17/e ... -with-sdp/
- ESP32 Bluetooth: Receiving data through RFCOMM: https://techtutorialsx.com/2017/07/09/e ... th-rfcomm/
- ESP32 Bluetooth: Finding the device with Python and BTStack: https://techtutorialsx.com/2017/07/09/e ... d-btstack/
- ESP32 Bluetooth: Using the BTstack library: https://techtutorialsx.com/2017/07/08/e ... k-library/


Videos
- ESP32 Arduino HTTP server remote reset: https://www.youtube.com/watch?v=R-vBr9nwNiI
- ESP32 Arduino get free heap: https://www.youtube.com/watch?v=TBHws3Dp_Jw
- ESP32 Arduino software reset: https://www.youtube.com/watch?v=VmKtrx3ocVc
- ESP32 Arduino parsing JSON: https://www.youtube.com/watch?v=iuHxPQB6Rx4
- ESP32 Arduino HTTP server control route HTTP methods: https://www.youtube.com/watch?v=o6ospheh6Xk
- ESP32 Arduino HTTP server multiple instances: https://www.youtube.com/watch?v=l7FGuj7Rf9E
- ESP32 Arduino HTTP server multiple routes: https://www.youtube.com/watch?v=9NePLF0aTUg
- ESP32 Arduino HTTP server get query parameters: https://www.youtube.com/watch?v=1aMNJ1VnuyQ
- ESP32 Arduino HTTP web server over soft AP: https://www.youtube.com/watch?v=vy2Rso3Qf1g
- ESP32 Arduino Soft AP: https://www.youtube.com/watch?v=6yL5kGVhSwI
- ESP32 Arduino HTTP web server serve HTML: https://www.youtube.com/watch?v=C9hSqwZmxN4
- ESP32 Arduino HTTP async web server get started: https://www.youtube.com/watch?v=BvePZCJ7tMY
- ESP32 Arduino Socket Client: https://www.youtube.com/watch?v=3bFcaTgUzfY
- ESP32 Arduino Getting SDK version: https://www.youtube.com/watch?v=RViHgMaRlCk
- ESP32 Arduino Bluetooth getting device address: https://www.youtube.com/watch?v=fxvoNpiqipQ
- ESP32 Arduino Serial over Bluetooth getting started: https://www.youtube.com/watch?v=884u3saDoi8
- HTTP POST requests: https://www.youtube.com/watch?v=LiQaPJ9UrSM
- HTTP GET requests: https://www.youtube.com/watch?v=s_2cw0k6lgs
- Connecting to WiFi network: https://www.youtube.com/watch?v=klIBePOzXpo
- Generating random numbers: https://www.youtube.com/watch?v=P5Dv6SWLQFM
- Base64 encoding: https://www.youtube.com/watch?v=puBICsjz5qk
- Espruino (JavaScript) scanning WiFi networks: https://www.youtube.com/watch?v=tmLp0WRSJbg
- Espruino (JavaScript) map function applied to arrays: https://www.youtube.com/watch?v=wEYnubdZm4M
- MicroPython HTTP webserver with picoweb: https://www.youtube.com/watch?v=wU7fSiS-mYg
- MicroPython applying filter function to lists: https://www.youtube.com/watch?v=IyCS2VYxhwo
- MicroPython applying map function to lists: https://www.youtube.com/watch?v=88SzqepM8MA
- MicroPython iterating lists: https://www.youtube.com/watch?v=IoeAJCGn7fg
- MicroPython changing elements of list: https://www.youtube.com/watch?v=99XfAN0T2J0
- MicroPython introduction to lists: https://www.youtube.com/watch?v=YXVPxFcJC3w
- MicroPython lambda functions: https://www.youtube.com/watch?v=vW8cmVabPbg
- MicroPython list files in the file system: https://www.youtube.com/watch?v=Sxtrg9TpW6U
- MicroPython hello world: https://www.youtube.com/watch?v=kVQJ4DFwPnQ