No video

Getting Started with ESP32 Wireless Networking in C | Wirelessly Enable Any Project with ESP32

  Рет қаралды 57,925

Low Level Learning

Low Level Learning

Күн бұрын

The ESP32 by Espressif is an extremely powerful development board. You can use it to give the power of Wifi and Bluetooth to any IOT project you're working on, with zero hassle.
In this video, we explore how to setup the Espressif IOT Development Framework, or IDF, and use it to write C code to connect the ESP32 to a Wireless Network. Once the device is connected, we are able to connect the ESP32 to a TCP server and retrieve data from that server.
The ESP32 IDF uses FreeRTOS, an open source real time operating system that is used on smaller embedded boards. FreeRTOS allows you to make tasks for different features on your board. Pairing this with the IDF allows you to write powerful Wifi programs to the ESP32.
Drop a like and subscribe to be alerted about new videos!
ESP32 IDF Setup: • Getting Started with t...
Code: www.github.com...
Follow me on Twitter: / lowleveltweets
Follow me on Twitch: / lowlevellearning
Join me on Discord!: / discord

Пікірлер: 87
@fotonical
@fotonical Жыл бұрын
This channel such a breath of fresh air, for many years there such a scarcity of high value embedded knowledge, glad see tide is changing. keep it up champ!
@LowLevelLearning
@LowLevelLearning Жыл бұрын
Much appreciated!
@r_be
@r_be Жыл бұрын
"but we don't do that here... we are writing this in C" - it is at this point I knew I have to like and subscribe this! :)
@LowLevelLearning
@LowLevelLearning Жыл бұрын
Welcome!
@adanpantoja7116
@adanpantoja7116 Жыл бұрын
Finally a video showing how to do something with the ESP32 that ISN'T Arduino! Thank you!
@Otakutaru
@Otakutaru 2 жыл бұрын
ESP32 is just the perfect balance between accesibility and performant low level. Also, built in FreeRTOS with the IDF is just perfect
@mustafaturhan16
@mustafaturhan16 2 жыл бұрын
Can you recommend resources to learn ESP32?. I tried to use BLE on ESP32 but I got very confused and I couldnt find any guides or tutorials.
@TheChrisey
@TheChrisey Жыл бұрын
Not really. The fact that the ESP32 is built to require an RTOS sucks for anything real time. It's decent for hobby projects as it has wireless but its actual architecture is way inferior to virtually any other chip
@Otakutaru
@Otakutaru Жыл бұрын
@@TheChrisey Could you elaborate a bit more? I'm actually curious as to what architecture differences are you talking about
@conorstewart2214
@conorstewart2214 10 ай бұрын
@@TheChrisey the ESP32 is good at what it is meant for, which is a wifi or Bluetooth connected device. It is also good enough for most real time tasks.
@picklerix6162
@picklerix6162 Жыл бұрын
I modified and built one of the ESP32 MQTT examples and I was shocked that I was able to login to my WiFi and connect to the MQTT broker software successfully. I also tried one of the ESPNOW examples and I was able to get two ESP32 devices to talk to each other. I am pretty impressed with the ESP32 sample code.
@bitcoinpaymentmodule1927
@bitcoinpaymentmodule1927 2 жыл бұрын
Thank you for making this video! I am so glad I found your channel! Great quality. I found you while trying to learn to control a MG995 servo with ESP 8266 & 32. Didn't find that but found soooo much more 🙂
@nczioox1116
@nczioox1116 Жыл бұрын
Did you figure it out?
@jmsiener
@jmsiener 2 жыл бұрын
Thanks for the ESP32 content. I tried to use the ESP-IDF a year or so back and getting the hang of how to use it properly was just overwhelming-went back to Arduino. Demystifying all the esp_err_t things would be great but I’m also a relative idiot in these regards.
@LowLevelLearning
@LowLevelLearning 2 жыл бұрын
Happy to hear it was useful! Don't be afraid of all the different types. The API is well documented and I'm sure you could find the definitions for what you're looking for. In the case of esp_err_t, it's just an int :) (docs.espressif.com/projects/esp-idf/en/latest/esp32/api-reference/system/esp_err.html#_CPPv49esp_err_t)
@ataadevs
@ataadevs Жыл бұрын
Omg man, you're gold. I just subscribed and start watching and pressing like on every video of yours. Keep it coming please
@LowLevelLearning
@LowLevelLearning Жыл бұрын
Welcome aboard!
@ericbwertz
@ericbwertz 10 ай бұрын
I'm from 20+ months in the future and your promise to do a video about ESP32 peripherals was a lie. Time travelers are embarrassing, aren't they?
@ignaciodelvalle158
@ignaciodelvalle158 Жыл бұрын
I'm starting to see the light at the end of the tunnel with this video and the other ESP32 installation video from you, and the hours I spend in front of my PC. Very well explained. Muchas Gracias.⭐⭐⭐⭐⭐
@Otakutaru
@Otakutaru 2 жыл бұрын
Your videos are top notch. Considering some merch... but would like something more discrete, like a small chip design or something
@LowLevelLearning
@LowLevelLearning 2 жыл бұрын
I was literally designing this as you commented! Coming soon
@Tobmei
@Tobmei Жыл бұрын
Dont't know if it was on purpose, but I almost did not click the video becaude of the arduino logo. Not because I hate it but because I am intrested in learning esp-idf toolchain. So you might think about that. Great video! Your really help me getting into embedded :)
@AdamS-lo9mr
@AdamS-lo9mr 3 ай бұрын
i watched this 3 times and it still going way over my head. maybe im just dumb.
@Javich
@Javich Жыл бұрын
"But we don't do that here". That got you a new subscriber
@TrevorV
@TrevorV 2 жыл бұрын
I would love to see this in Rust. I've never used Rust but I've watched your latest two Rust videos and am strongly considering learning it. You got a sub from me!
@n000d13s
@n000d13s 2 жыл бұрын
Unfortunately rust doesnt natively support esp32. But there is a rust compiler fork but i dont thinks its a good idea to use something experimental unless that is what you want. I have been looking into this. Stm32 is well supported with Rust. So that's what i am looking at.
@davewuqio2516
@davewuqio2516 9 ай бұрын
thank you for the video, it made the code so much more digestible for me
@ccflan
@ccflan 2 жыл бұрын
First to watch and comment 👌 this is very informative thank you, so from now on I'll prefer using the C way instead of arduino,
@LowLevelLearning
@LowLevelLearning 2 жыл бұрын
Thanks for watching!
@ccflan
@ccflan 2 жыл бұрын
You welcome, i have a question: I was using est32 bavk in 2018 and if I still remember there was Bug that prevented me to commercially use it, the bug was about the esp32 that halt after some time of using and there was no way to reboot it even with the internal watchdog, i had to counter it with external capacitor that trigger the reset pin after a while but that as silly, in that time i was using an arduino bootloader with other libs like mqtt, In C haven't you got any type of that bug?, is it even stable in the long terme use ?
@LowLevelLearning
@LowLevelLearning 2 жыл бұрын
Interesting.... that bug sounds like either two things were happening. 1.) Your code had a bug that was causing the board to reset. Could have been some long-time-use integer overflow or maybe you didn't manage memory correctly and exhausted all the memory. Or 2.) Maybe there is a hardware fault in the ESP32 CPU and over time it just flips over. No clear answer, but no that doesnt seem very usable in the long run XD
@ccflan
@ccflan 2 жыл бұрын
@@LowLevelLearning lol definitely, it's a crash actually that the esp couldn't survive and it appears to be kinda random, if i still remember many users in the internet where facing the same thing and hope that is related to the arduino stack itself, other than that this device is wonderful for its price, even if it operates badly on batteries due to the bad handling of low energy consumption...
@ishansheth3005
@ishansheth3005 2 жыл бұрын
this video is a great help. Are you thinking of making a video for LCD display with ESP32? That would be awesome
@M_Sey21
@M_Sey21 2 жыл бұрын
Brilliant as usual!
@benjaminmodica6226
@benjaminmodica6226 Жыл бұрын
A video like this for the pi pico would be awesome! The example projects for tcp are very hard to understand.
@AlessioSangalli
@AlessioSangalli 2 жыл бұрын
Thank you for the upload!
@LowLevelLearning
@LowLevelLearning 2 жыл бұрын
You bet!
@grebz
@grebz 2 жыл бұрын
Thank you for making this video, it was so useful - I was struggling with the example until I found this. The next step would be to make the wifi startup code non-blocking and create a task to monitor when the wifi becomes available. I'm going to see if I can work out how to do this, but would love to find a video on it (hint hint) :P Thanks again, off to the races now...
@ismaelh256
@ismaelh256 Жыл бұрын
Enjoyed the video ! Got my subscribe. Would like to see a Bluetooth video like this one sometime
@wilcekmay9052
@wilcekmay9052 Жыл бұрын
cool tutorial, shown simply and clearly. Thanks a lot
@maxhouseman3129
@maxhouseman3129 2 жыл бұрын
First I thought, that you want to build some rover 😎😅
@32_bits
@32_bits 2 жыл бұрын
Your channel is excellent. Which ESP32 board are you using as I will order one? As there are so many types available will your code work on them all?
@LowLevelLearning
@LowLevelLearning 2 жыл бұрын
Thanks for watching! I use the ESP32-DevKitC. That's a great question, I'm actually not sure about the compatibility. I would imagine that as long as my code adheres to the ESP API and doesn't directly control individual pins, the code should be compatible. I'll have to test, though.
@floris1810
@floris1810 20 күн бұрын
Hey i have a question, why do you use a event group for just one bit? Isnt it beter and less complex to use something else? I am just new and trying to learn so thats why i ask the question.
@nicoladellino8124
@nicoladellino8124 Жыл бұрын
Very nice video, THX.
@rick_er2481
@rick_er2481 2 жыл бұрын
Awesome video! thankyou
@LowLevelLearning
@LowLevelLearning 2 жыл бұрын
My pleasure!
@khroomlet8821
@khroomlet8821 2 жыл бұрын
Fantastic tutorial! I finished up an arduino project recently for an adafruit ESP32, but wanted to try it closer to bare metal. Are there any other cool features of the ESP32 you could demo, like DMA or debugging FreeRTOS?
@LowLevelLearning
@LowLevelLearning 2 жыл бұрын
I will be going deeper into a bunch of these features :)
@khroomlet8821
@khroomlet8821 2 жыл бұрын
@@LowLevelLearning Cool, thanks! Looking forward to it. Also happen to know how to use an ESP32 via SPI for slave communication?
@iPondrio
@iPondrio 2 жыл бұрын
I'm a big fan of your videos, they've helped me design a course focused in Hardware and Microcontrollers. Just a quick question. Which Linux distro do you use for your projects? From the looks of it I think you have Debian or Ubuntu
@AlessioSangalli
@AlessioSangalli 2 жыл бұрын
So after some thinking, i must say I am a little underwhelmed by this approach. While it's more intricated and tedious over the "Arduino" approach, it doesn't really seem to show any benefit, like access to the low level registers of the radio. I have heard that using the wifi functionality uses the second core of the ESP 32 that is hence not available in Arduino, but could we use it in this context?
@LowLevelLearning
@LowLevelLearning 2 жыл бұрын
I'm gonna be totally transparent with you, I actually haven't explored the Arduino option at all. I just like shitting on Arduino XD Me personally, I'd rather dive deep on the API's that the Espressif developers came up with to learn their base abstractions, and THEN learn how Arduino wraps it. As opposed to the other way around. I'm pretty sure you can use Wifi on Arduino ESP32 though?
@AlessioSangalli
@AlessioSangalli 2 жыл бұрын
@@LowLevelLearning yeah the setup is easier of course but that wasn't really my point; even with the IDF we don't really "see" the radio device and how it works 😭
@LowLevelLearning
@LowLevelLearning 2 жыл бұрын
Oh I understand.... hm. I wonder how much deeper I could go into the radio interface. Food for thought 🧐
@AlessioSangalli
@AlessioSangalli 2 жыл бұрын
@@LowLevelLearning In particular - can we use the second core (available through freertos calls) while wifi - or in general the radio - is being used? What limitations would there be (besides a lot of the ADCs not be available) etc. Can the radio be hacked to provide SDR, as in software defined radio, to receive arbitrary spectrum? Etc. Take it easy, keep up the fantastic job
@AlessioSangalli
@AlessioSangalli 2 жыл бұрын
ESP32 can do not only wifi and Bluetooth, but also LoRa
@LowLevelLearning
@LowLevelLearning 2 жыл бұрын
Oooo good to know, wasn''t aware of the LoRaWAN
@AlessioSangalli
@AlessioSangalli 2 жыл бұрын
@@LowLevelLearning my friend is using and ESP and LoRa to connect some barn with sheep down to town 😂
@Mohamed-kr8jt
@Mohamed-kr8jt Жыл бұрын
nice video, it was very useful can you explain how to control GPIO using register addresses I have try to look in the datasheet but I can't understand anything
@marcosemenzato1934
@marcosemenzato1934 Жыл бұрын
Such a good video I'm wondering if it is possible to create a tcp_ ip server instead of connect to it? (Wifi station mode + TCP server)
@rul1175
@rul1175 11 ай бұрын
They python at the end is it in the raspberry pie or esp32????
@yanhuang4911
@yanhuang4911 2 жыл бұрын
Thank you Great vid! Can you explain the cmake and configuration files in esp-idf GitHub examples? plz
@JaiLuthra
@JaiLuthra 2 жыл бұрын
Thanks
@EriComicuDesu
@EriComicuDesu 2 жыл бұрын
S-Tier tutorial
@wolpumba4099
@wolpumba4099 Жыл бұрын
I find it difficult reading the server address as hex. I would prefer, if the s_addr was converted using inet_pton(AF_INET, ip_address, &addr.sin_addr);
@jasonc6241992
@jasonc6241992 2 жыл бұрын
Good videos, I recently had to switch to the esp32, and now im having a heck of a time converting my arduino wifi AP and http code into c, not fun.
@kumarkumar-md7ee
@kumarkumar-md7ee 2 жыл бұрын
can you make bare metal programming or some videos on beagle bone black linux drivers please thank you
@prashantmalla3094
@prashantmalla3094 2 жыл бұрын
I would love to see BLE and WiFi combination
@sumitdas6117
@sumitdas6117 Жыл бұрын
does it work with nodemcu ??
@sidpan-op8dm
@sidpan-op8dm Жыл бұрын
when will you release new video about esp32 bro?
@browaruspierogus2182
@browaruspierogus2182 2 жыл бұрын
connect to or build http small server - sockets just handle protocol
@bitcoinpaymentmodule1927
@bitcoinpaymentmodule1927 2 жыл бұрын
If you are an embedded C engineer please reach our to us! Our project needs additional firmware engineers!
@gerdsfargen6687
@gerdsfargen6687 Жыл бұрын
pretty sure you do with ButtCoin.
@antonioinochi9170
@antonioinochi9170 4 ай бұрын
I tryng to write code for esp32 in rust, for me rust is a new language and this way for me is the best to learn new lany. I have. Aproblem to set stati ip address for router in accesspoint mode.someone jave advice?
@cozkul
@cozkul 2 жыл бұрын
Hi, could you share source code for this? It would be useful to see the includes at the beginning.
@Nepidemicofmannequins
@Nepidemicofmannequins Жыл бұрын
💜💚💙❤️🖤
@InfamousPeanut
@InfamousPeanut Жыл бұрын
Sweet. C! C! C! not c++, not Arduino. It is C. The awesomesauce!
@andrewbeasley
@andrewbeasley 2 жыл бұрын
Interesting but way way too many adverts (every two mins plus pop overs) - TV does not have an ad blocker - KZbin must have it in for me today, Lost track in the end...
@LowLevelLearning
@LowLevelLearning 2 жыл бұрын
Interesting, I definitely don’t have them in there that often. I’m sorry to hear that.
@andrewbeasley
@andrewbeasley 2 жыл бұрын
@@LowLevelLearning it's very very odd - KZbin advert quantity differ by time of day / night it seems in the U.K. since the last Amazon Fire stick app update! I'll try it again at some point in the day as I was enjoying it 👍 I'm wondering if KZbin are pushing Amazon users to the pad subscriber level deliberately but £17 per month is way way too much! As for finding use for this - I won a single board computer without wifi from Electromaker so this gives me a way of linking it to the network - just need to build in a little web server but my C skills are zero so it should not be too hard 🤔 😲 😱 ❗️Going to be a fun year ahead I think... Take care and thanks for getting back to me.
@abdalhalemalfakhrany6786
@abdalhalemalfakhrany6786 2 жыл бұрын
10:15 we successfuly falid 👍
@minhajsixbyte
@minhajsixbyte Жыл бұрын
you twetter handle doesn't exist.
@LowLevelLearning
@LowLevelLearning Жыл бұрын
fixed tyty
@minhajsixbyte
@minhajsixbyte Жыл бұрын
@@LowLevelLearning started binging your channel. thanks for making videos. they are helpful.
@OleggaOne
@OleggaOne Жыл бұрын
I love examples from internet. They are never working :))
this is extremely frustrating...
14:33
Low Level Learning
Рет қаралды 10 М.
这三姐弟太会藏了!#小丑#天使#路飞#家庭#搞笑
00:24
家庭搞笑日记
Рет қаралды 97 МЛН
КТО ЛЮБИТ ГРИБЫ?? #shorts
00:24
Паша Осадчий
Рет қаралды 3,8 МЛН
YOU can Learn the ESP32 in 15 Minutes:  Hello World!
22:52
Dave's Garage
Рет қаралды 309 М.
WiFiManager with ESP32 - Stop Hard-coding WiFi Credentials!
54:58
DroneBot Workshop
Рет қаралды 592 М.
Introduction to ESP32 - Getting Started
47:57
DroneBot Workshop
Рет қаралды 1,6 МЛН
Getting Started with ESP32 - Step-By-Step Tutorial
19:50
Tomasz Tarnowski
Рет қаралды 340 М.
rust runs on EVERYTHING (no operating system, just Rust)
18:10
Low Level Learning
Рет қаралды 354 М.