TechtutorialsxThis video explains how to parse a simple XML document using the ESP32 and the Arduino core. In this video we will use the TinyXML-2 library.
Note: On the video, I've mistakenly mentioned that the output of the FirstChildElement method is a XMLDocument object pointer, but it is a XMLElement object pointer.
In case of error, the QueryIntText method returns: - XML_CAN_NOT_CONVERT_TEXT: if the text cannot be converted to the requested type (int) - XML_NO_TEXT_NODE if there is no child text to query.
ESP32 Arduino: Parsing XMLTechtutorialsx2019-12-01 | This video explains how to parse a simple XML document using the ESP32 and the Arduino core. In this video we will use the TinyXML-2 library.
Note: On the video, I've mistakenly mentioned that the output of the FirstChildElement method is a XMLDocument object pointer, but it is a XMLElement object pointer.
In case of error, the QueryIntText method returns: - XML_CAN_NOT_CONVERT_TEXT: if the text cannot be converted to the requested type (int) - XML_NO_TEXT_NODE if there is no child text to query.ESP32: WebSerial with mDNS resolutionTechtutorialsx2022-01-24 | How to use WebSerial with mDNS to perform the resolution of the IP address of the ESP32. With this solution, we no longer need to know the IP address of the ESP32 before hand.
For an extensive list of ESP32 written tutorial, please check my blog: techtutorialsx.com/category/esp32ESP32: WebSerial over soft APTechtutorialsx2022-01-24 | This video explains how to use the WebSerial library with the ESP32 acting as Soft Access Point. This operating mode combined with WebSerial is very useful to deploy the ESP32 in a place where no WiFi network is available, allowing the ESP32 to host its own network and using WebSerial for debugging or any other purpose.
For an extensive list of 350+ ESP32 Written tutorials, please check my blog: techtutorialsx.com/category/esp32ESP32: Getting started with WebSerialTechtutorialsx2022-01-21 | In this tutorial we are going to learn how to get started using the WebSerial library, which offers a Serial like interface over the web.
Plenty more ESP32 written tutorials (more than 300!): techtutorialsx.com/category/esp32ESP32 Camera - Image serverTechtutorialsx2020-06-11 | This tutorial explains how to setup a HTTP web server on a ESP32 to return to the client images taken by a camera connected to the microcontroller.
Some corrections / additional information of what was mentioned on the video: - xclk_freq_hz is the frequency of the clock signal of the camera, not the crystal frequency, like mentioned. The value of 20000000 Hz is one of the possible values that should be used for the OV2640 (note here: github.com/espressif/esp32-camera/blob/4af111a5e274a2973fa10cd3c1ec69174a1bdb93/driver/include/esp_camera.h#L98) - fb_count is the number of frame buffers to be allocated (not the number of frames, like mentioned).
Also for the ESP8266: techtutorialsx.com/category/esp8266ESP32 Camera - Arduino Core basic exampleTechtutorialsx2020-06-11 | This tutorial illustrates the Arduino core basic camera example running on a HW-818 ESP32 board.
All the code shown here comes from the Arduino core example and the aim of this video is to demonstrate how to use it as a simple way to confirm our hardware is working before jumping into custom code for our application.
This example will start a HTTP server from which we can get a camera stream, take images and fine tune a lot of camera parameters (resolution, brightness, contrast...) from a UI.
Plenty more written tutorials for the ESP32 at my blog: techtutorialsx.com/category/esp32ESP32: advertise multiple mDNS servicesTechtutorialsx2020-04-26 | This video tutorial demonstrates how to advertise multiple network services using mDNS. The advertiser will be a ESP32 and it will advertise 2 services.
We will also check the code to program another ESP32 as inquirer of these two services.
The code for this tutorial is very similar from what we have been covering before. The main focus is to illustrate that the ESP32 is capable of handling the advertisement of multiple services.
The code for both devices will be implemented using the Arduino core.
You can find many more ESP32 tutorials (300+) at my blog: techtutorialsx.comESP32: Query mDNS serviceTechtutorialsx2020-04-25 | This tutorial explains how to use a ESP32 to query a service advertised using mDNS. The advertiser will also be a ESP32.
We will be using the Arduino core to program both devices.
Check more ESP32 and ESP8266 tutorials at my blog: techtutorialsx.comESP32: Static IP addressTechtutorialsx2020-04-24 | This video explains how to assign a static IP address to the ESP32 on the local network.
Check my blog for more ESP32 tutorials: techtutorialsx.comESP32mDNS: Advertise network serviceTechtutorialsx2020-04-19 | This video shows how to advertise a network service with mDNS, using the ESP32 and the Arduino core.
Our network service will be a simple HTTP web server. We will be using the async HTTP web server library to set it up. Nonetheless, it could be something else other than a HTTP server.
This means that we don't need to know the actual IP address of the ESP32 to reach the server it is hosting since mDNS will allow us to do the resolution of a known hostname into the IP address of the device.
Another big advantage of mDNS is that it doesn't need a dedicated infra-structure for the name resolution, like a traditional DNS server.
Arduino library: github.com/NURobotics/PS4-esp32ESP32: PS4 controller connection eventTechtutorialsx2020-04-12 | This tutorial explains how to detect if a PS4 controller connected to the ESP32 by registering a callback function.
This approach is more optimized since we don't need to resort to polling, like we did in the introductory video (youtu.be/4fOSjKJIB1Q). Note that the video also contains a detailed explanation on the setup we need to do to obtain the Bluetooth MAC address stored on the PS4 controller.
Arduino Library used: github.com/NURobotics/PS4-esp32ESP32: Connecting a PS4 controllerTechtutorialsx2020-04-12 | This tutorial explains how to connect a PS4 controller to the ESP32., using the Arduino core.
In this video we will be testing the code in the ESP32, using the Arduino core. Nonetheless, the code also works on the ESP8266, as cpplinq is a generic C++ library.
Also tested on the ESP8266 FireBeetle board: dfrobot.com/product-1634.htmlESP32 / ESP8266 cpplinq: The Any operatorTechtutorialsx2019-12-30 | In this tutorial we will learn how to use the cpplinq any operator to check if at least one element of an array fills a given criteria.
In this video we will be testing the code in the ESP32, using the Arduino core. Nonetheless, the code also works on the ESP8266, as cpplinq is a generic C++ library.
Also tested on the ESP8266 FireBeetle board: dfrobot.com/product-1634.htmlESP32 / ESP8266 cpplinq: the count operatorTechtutorialsx2019-12-30 | In this tutorial we are going to learn how to use the cpplinq count operator to count the number of elements of an array.
The tutorial shows the code running on the ESP32, using the Arduino core. Nonetheless, it also works on the ESP8266 since cpplinq is a generic C++ library that can be used as an Arduino library.
Tutorial on chaining cpplinq operators: youtube.com/watch?v=20LNxRhcR7c&feature=youtu.be Tutorial on filtering an array with cpplinq: youtube.com/watch?v=sf2X_X7wtBgESP32 / ESP8266 cpplinq: chaining operatorsTechtutorialsx2019-12-30 | In this video tutorial we will learn how to chain cpplinq operators to build more complex expression trees. We will be using the Arduino core, running on the ESP32, but the code also works on the ESP8266.
The tests shown here were done on an ESP32 board but the code also works on the ESP8266, since cpplinq is a generic C++ library.
Filtering an array with cpplinq: youtube.com/watch?v=sf2X_X7wtBgESP32 / ESP8266 cpplinq: max and min operatorsTechtutorialsx2019-12-30 | In this video tutorial we are going to illustrate how to obtain the minimum and maximum values of an integer array using, respectively, the min and max operators from the cpplinq library.
We will be using an ESP32 as target board and the cpplinq library will be used as an Arduino library.
Since cpplinq is a generic C++ library, the code also works on the ESP8266. Tested on a ESP8266 FireBeetle board: dfrobot.com/product-1634.htmlESP32 cpplinq: removing duplicatesTechtutorialsx2019-12-30 | This video tutorial explains how to remove the duplicated elements from an integer array, using the cpplinq library. This generic C++ library is being used as an Arduino library.
This operator is very simple but very useful, specially when used in more complex expression trees.
ESP32 FireBeetle board: dfrobot.com/product-1590.html Also tested on the ESP8266 FireBeetle board: dfrobot.com/product-1634.htmlESP32 cpplinq: reversing an arrayTechtutorialsx2019-12-01 | In this tutorial we are going to learn how to reverse an array of integers, using the cpplinq library. We will be using the ESP32 and the Arduino core. Note however that since cpplinq is a generic C++ library, the code also works on the ESP8266.
ESP32 FireBeetle board: dfrobot.com/product-1590.htmlESP32 XML: Getting attribute of elementTechtutorialsx2019-12-01 | In this tutorial we are going to learn how to extract the value of an attribute from an element of a parsed XML document. We are going to be using the Arduino core running on the ESP32. We will be using the TinyXML-2 library.
The tutorial demonstrated here is done on the ESP32 but the code also works on the ESP8266, since cpplinq is a generic C++ library.
ESP32 Firebeetle board: dfrobot.com/product-1590.html Cpplinq: github.com/mrange/cpplinqESP32 Soft AP: Station connected WiFi eventTechtutorialsx2019-10-05 | In this tutorial we will learn how to use WiFi events to detect when a station connects to the network hosted by the ESP32.
Also a lot of ESP8266 tutorials: techtutorialsx.com/category/esp8266ESP32: Using lambdas as WiFi event handling functionsTechtutorialsx2019-10-03 | This tutorial shows how to use C++ Lambdas as ESP32 WiFi event handling functions.We will be using the Arduino core.
A lot of ESP32 written tutorials: techtutorialsx.com/category/esp32ESP32 WiFi events: Station got IPTechtutorialsx2019-10-03 | This video shows how to handle the event that is triggered when a local IP address is assigned to the ESP32, after it connects to a WiFi network.
A lot of ESP32 written tutorials: techtutorialsx.com/category/esp32ESP32 Arduino: Getting started with WiFi eventsTechtutorialsx2019-10-03 | This video is an introduction to the ESP32 WiFi events, using the Arduino core.
A lot of ESP32 written tutorials: techtutorialsx.com/category/esp32ESP32 / ESP8266 cpplinq: last_or_default operatorTechtutorialsx2019-09-21 | How to get the lastelement of an array that meets a given criteria, using cpplinq and the last_or_default operator.
The tests shown on the video were done on the ESP32, but the library also works on the ESP8266.
A lot more written tutorials for the ESP32: techtutorialsx.com/category/esp32ESP32 / ESP8266 cpplinq: first operator with conditionTechtutorialsx2019-08-19 | How to get the first element of an array that meets a given criteria, using cpplinq and the first operator.
The tests shown on the video were done on the ESP32, but the library also works on the ESP8266.
ESP8266 tutorials: - techtutorialsx.com/category/esp8266ESP32 / ESP8266: Getting started with the cpplinq libraryTechtutorialsx2019-08-19 | In this tutorial we will check a very simple getting started tutorial about the cpplinq library. This is a C++ library of high order functions inspired by C# LINQ.
This will be tested using the Arduino core. The tests shown on the video were done on the ESP32, but the library also works on the ESP8266.
ESP8266 tutorials: - techtutorialsx.com/category/esp8266ESP8266 SPIFFS: Reading a fileTechtutorialsx2019-06-08 | How to read a file from the SPIFFS file system of the ESP8266, using the Arduino core.
Also ESP32 written tutorials: techtutorialsx.com/category/esp32ESP8266 SPIFFS: Writing a fileTechtutorialsx2019-06-08 | This video tutorial explains how to write a file to the SPIFFS file system of the ESP8266, using the Arduino core.
Plenty more ESP8266 tutorials: techtutorialsx.com/category/esp8266ESP8266 Arduino: Mounting the SPIFFS file systemTechtutorialsx2019-06-08 | This tutorial explains how to mount the ESP8266 SPIFFS file system, using the Arduino core.
ESP32 tutorials: techtutorialsx.com/category/esp32ESP32 Arduino HTTP server: Serving image as attachmentTechtutorialsx2019-04-26 | How to serve an image as attachment from the ESP32 SPIFFS file system.
Plenty more ESP32 Written tutorials at my blog: techtutorialsx.com/category/esp32ESP32 Arduino HTTP web server: Serve Image from SPIFFS file systemTechtutorialsx2019-04-26 | How to serve an image from the SPIFFS file system of the ESP32, using the Arduino core and the HTTP async web server library.
Plenty more ESP32 Written tutorials at my blog: techtutorialsx.com/category/esp32ESP32 Arduino HTTP server: serving file as attachmentTechtutorialsx2019-04-06 | This video explains how to serve a HTML file from the SPIFFS file system of the ESP32, as an attachment. This means that, instead of interpreting and rendering the file, the browser will download it and save it locally.
Also for the ESP8266: techtutorialsx.com/category/esp8266ESP32 Arduino: Serve html from SPIFFS file systemTechtutorialsx2019-03-09 | This video explains how to serve a HTML file from the SPIFFS file system of the ESP32, using the Arduino core.
Plenty more ESP32 tutorials (written) at my blog: techtutorialsx.com/category/esp32ESP32 Arduino SPIFFS: File upload IDE pluginTechtutorialsx2019-03-09 | This tutorial explains how to use an Arduino IDE plugin to upload files from a computer to the ESP32 SPIFFS file system.
Plenty more tutorials at my blog: techtutorialsx.com/category/esp32ESP32 Arduino SPIFFS: check if file existsTechtutorialsx2019-03-09 | In this video we will learn how to test if a file exists in the SPIFFS file system.
Plenty more tutorials at my blog: techtutorialsx.com/category/esp32ESP32 Arduino SPIFFS: Append content to fileTechtutorialsx2019-03-07 | This video explains how to append content to a file on the ESP32 SPIFFS file system, using the Arduino core.
Plenty other ESP32 tutorials: techtutorialsx.com/category/esp32ESP32 Arduino SPIFFS: Reading a fileTechtutorialsx2019-03-07 | This tutorial explains how to read a file from the SPIFFS file system of the ESP32, using the Arduino core.
Lots of other ESP32 other tutorials: techtutorialsx.com/category/esp32ESP32 Arduino SPIFFS: Write fileTechtutorialsx2019-03-07 | This tutorial explains how to mount the SPIFFS file system, create a file and write some content to it.
SPIFFS stands for SPI Flash File System and it is one of the file system types supported by the ESP32.
A lot more ESP32 (written) tutorials: techtutorialsx.com/category/esp32ESP32 Arduino: Receiving a pingTechtutorialsx2019-02-04 | This video shows how to send a ping request to a ESP32 connected to a WiFi network.
Plenty more ESP32 written tutorials: techtutorialsx.com/category/esp32ESP32 HTTP/2: Add headers to GET requestTechtutorialsx2019-01-09 | This tutorial illustrates how to add headers to a HTTP/2 GET request, using the ESP32, the Arduino core and the sh2lib wrapper.
Many other ESP32 tutorials at my blog: techtutorialsx.com/category/esp32ESP32 HTTP/2: Add query parameters to GET requestTechtutorialsx2019-01-09 | In this tutorial we will check how to add query parameters to a HTTP/2 GET request, performed using the ESP32 and the Arduino core.
Many other ESP32 tutorials at my blog: techtutorialsx.com/category/esp32ESP32 Arduino: HTTP/2 GET requestTechtutorialsx2018-12-15 | This tutorial explains how to perform a HTTP/2 GET request using the ESP32 and the Arduino core.
We will be using the sh2lib wrapper, installed as a Arduino library. You check here a video tutorial explaining how to setup sh2lib: youtube.com/watch?v=00P8oIbNK-Q
Many more ESP32 tutorials: techtutorialsx.com/category/esp32ESP32 Arduino: Get MAC address of Soft AP interfaceTechtutorialsx2018-12-14 | This tutorial explains how to obtain the MAC address of the soft AP WiFi interface of the ESP32. We will be using the Arduino core to program the device.