ESP-NOW - Peer to Peer ESP32 Network

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
today in the workshop we're working with espnow we'll see how we can use espnow to send data between esp32 and esp8266 boards without wi-fi or a router we'll also build a remote temperature monitor with multiple sensors we're talking amongst ourselves today so welcome to the workshop [Music] [Applause] well hello and welcome to the workshop and today we are going to be working with espnow esp now is a protocol that was developed by expressive for use with the esp32 and the esp8266 boards all of these boards have a 2.4 gigahertz transceiver and they use it for wi-fi and bluetooth purposes but they can also use it for other purposes and that's where esp now comes in with esp now these boards will be able to talk to one another and exchange data without the need of a wi-fi network so it can work anywhere you don't need a router or anything to make this work you can exchange data in one direction i.e unidirectional you can do it bi-directionally and you can have more than one device and create your own small little network of devices now this uses a transmission standard that is similar to that used with wireless keyboards and wireless mice and so one restriction here is we can't send great volumes of data we're only going to be able to send packets that have at the most 250 bytes in them so if you want to send something like video or audio you're going to have to find the way of getting all of that into small packets and disassembling it on the other end what this is actually really good for is things like remote transmitters and remote sensors that we want to use and indeed we're going to build a remote sensor system a little later on in this video but first we're going to start off by learning a little bit more about what esp now is esp now is a communications protocol developed by expressive it allows for simple communications between esp devices these are short packet transmissions in the 2.4 gigahertz band you don't require any wi-fi to use esp now you don't require a license and the transmissions can be either encrypted or unencrypted espnow devices can be used in unidirectional and bi-directional modes this connectionless protocol provides a persistent connection after pairing meaning that after you pair two devices they'll instantly pair again when they're powered up esp now works with both the esp32 and the esp8266 devices can generally be used reliably within a hundred meters and there's now a long range mode that allows up to 480 meters between devices the simplest dsp now configuration is one-way communication in this configuration we have one device which acts as an initiator and another device which is the responder the initiator sends data to the responder we can also have a configuration with one initiator and multiple responders the initiator can send data to any of the responder devices conversely we can also have a configuration with one responder and multiple initiators in this configuration any of the initiators can send data to the responder this is a common configuration for data acquisition the esp protocol is also capable of two-way communications during two-way communications each device is both an initiator and a responder you can also arrange two-way devices within a network again each device will be both an initiator and responder and can have two-way communications with any of the other devices you can mix and match esp32 and esp8266 models inside an esp now network the biggest limitation of esp now is that it is packet transmission and you are limited to a maximum of 250 bytes per packet so you won't be using this to send audio and video but it's great for sensor data you can have from 6 to 20 stations depending upon which mode you selected and also depending upon which devices you've used encryption upon in order for an initiator to send to a responder it requires the responder's mac address mac is an abbreviation for media access control a mac address is a six digit hexadecimal number every network device has a unique mac address a special mac address of all f's is the broadcast mac address while the espnow protocol does not actually support broadcasting it does support a pseudo broadcast mode this mode allows you to broadcast information to every device in the network simultaneously when using esp now in our programming we make use of callbacks which are functions that are called during sending and receiving during sending we make use of the esp now register send cb callback this is called when data is sent it'll return the status of the sent data as well as the status of the received data on receive we use the esp now register rcv cb callback this is called when the data is received and it returns the actual data inside the packet when writing a sketch to send with espnow we first initialize the espnow library we then register a callback function that we'll use upon sending data we'll then add a peer device the peer device will be the responder's mac address we can then send our message to the peer device to write code for the receive side we'll initialize the esp now library then we'll register a callback function that will use upon receiving data and within that callback function we'll write some code to save the message to a variable so that we can use it the espnow protocol has several applications including data acquisition remote monitoring iot applications alarm systems and remote controls so let's put esp now to use in our projects so now that we've learned a little bit about esp now it's time to start experimenting with it and so you're going to need a couple of esp32 boards i'd say at least three of them to do all of the experiments that we're doing today they don't have to be the same type of esp32 board you could also use an esp82 but you'll have to slightly modify my code for that because it uses a different wi-fi library now one thing you're going to need to know about your boards is the mac or media access control address of them because we'll be using that within our code and so right now what i want to show you is a very simple sketch you can run in order to get the mac address off of your esp32 board so here's the sketch that we're going to be using to determine our media access control or mac address on our esp32 and it's an extremely simple sketch we just start off by including the wi-fi library and then we go into the setup where we're running everything and in setup we start off our serial monitor we put the esp32 into station mode and then we print out its mac address it's as simple as that and then we end the setup and the sketch is over there's nothing in the loop and so what we'll do is we'll load it up to an esp32 we'll open up our serial monitor we'll probably have to press reset because by the time we get to our serial monitor the sketch will have already run once and we can determine what the mac address of the esp32 is okay i'm ready to upload my mac address sketch to an esp32 now i have a number of esp32s over here including one that i've connected to the computer and that's flashing right now a very colorful routine because this is a brand new esp32 just taken out of the box and so this is a multi-colored version of the blink sketch that it's running this is an esp-32s dev kit board by the way i've got a few other esp32s different types of esp32s over here and you'll notice i've got a label on each one of those and i'm doing that so i can keep track of my mac addresses and i'll show you that in a bit but first let's go back to the arduino ide and let's upload our sketch to the esp32 board okay our sketch appears to be uploaded now let's open up our serial monitor and chances are we aren't going to get anything what we're going to need to do is we're going to need to reset this board and there we go and here's our mac address and as you can see i've got the mac address so what i can do is i can copy that and i can go over to a spreadsheet i made and i'll just drop that into there and give this a name that tells me what i need to select in the arduino ide so i'm just keeping a spreadsheet of the mac addresses so i can use them while i'm experimenting with esp now so now that we know the mac address of our boards it's time to start working with them in esp now now our first esp now experiment is very basic as it should be just to let you know how everything works we're going to set one board up as the initiator the other board is going to be the responder and we're going to send data from the initiator to the responder and look at it on our serial monitor now there's no hook up for the boards we're just going to be using the esp32 boards as they are and again you can use two different types of esp32 boards if you want to so let's go and take a look at the sketch that we're going to use on both the transmitter and the receiver for our basic esp now demonstration so here's a sketch that we're going to use on the transmitter esp32 in our demonstration now neither of the esp32s require any additional parts but they do require a different sketch now in this situation our transmitter is the initiator and we're going to send data to our responder we're going to start off by including the libraries we need we need the esp now library and the wi-fi library then we're going to create a couple of variables that we can send over we're actually going to send four types of variables we're going to send character data integer data a floating data and a boolean data now the character data we're just going to type in later but the integer the float and the boolean we're going to create variables for them so that we can change them and make the data appear to be a bit more interesting after that we need to set up our broadcast address which is the mac address of the responder unit so you're going to have to run that sketch i showed you to get the mac address of the other esp32 and enter it over here now these values of course will be wrong because these are the values for the esp32 that i was using and so you're going to take that six element mac address with the six hexadecimal numbers put the first number over here the second one over here the third one over here etc etc and edit that line then we're going to define a data structure because we need to send our data as a piece of structured data and so we define the structure as follows we're defining a character and we're defining it as a and we're defining that as an array with up to 32 elements we'll define the next one as an integer which is b the third one is a float which is c and the fourth one is a boolean d so these are the types of data that we are going to be sending and of course you would modify this for your application to represent the types of data that you need to send then we're going to create a structured data object out of that data structures and so this is our structured data object over here called my data and we're going to set up some peer information as well the peer is going to be the responder and we're going to get to that a little bit later into the setup now we define the callback function and as you remember there are callback functions used within esp now on the sending side you get a callback whenever a packet has been sent and so this function will run every time the packet has been sent and all we're doing is we're going to print up a bit of information onto our serial monitor now we'll go into the setup and in the setup we're going to set up our serial monitor when we're going to start the esp32 as a wi-fi station and this is normally how you begin everything before you initialize esp now then we're going to go and initialize esp now over here and assuming that we were successful we're going to register our callback so we had a function called on data sent that we're going to use for callback we're going to register that as being the function that is called whenever the data has been sent then we're going to register the peer the responder in this particular case so this does this over here and now we're all set to go now in the loop we're going to create our test data so for our integer value we're going to generate a random integer between 1 and 20 and you can change that number there if you want to make it a larger range of numbers after that we'll take that integer and we'll turn it into a float to make our floating values so we're going to multiply 1.3 by that integer to give us a floating number and once again you can change this if you like to a num another number it certainly doesn't have to be 1.3 and for the boolean since it can only represent two different values either true or false we're just going to invert it so as we run the loop it's going to flip between two true and false now we're going to format our structured data so we're going to add everything to the structured data we copy this into the array over here now here's the text we're going to use for our character data welcome to the workshop obviously you can change that if you wish and then b c and d which are the integer the float and the boolean respectively are going to be assigned to the values that we just created above then we're going to actually send the message so here's how you send the message using esp now and we're going to see if the results are okay if they're all right we'll do sending confirmed otherwise we'll print sending error we're going to delay two seconds and go up and do the whole loop again so every two seconds we should send some data that's going to include our our string over here our character data it's going to include an integer a float and a boolean and so let's go and see what we need to do now on the receiver side now here's a sketch we're going to run on the receive side of our esp now demonstration and so you'll load this on to the other esp32 device we'll start off by including the same libraries as we did in the transmit the esp now and the wi-fi library and we'll define a data structure again and this needs to be the same structure as we used in transmit so here we are a structure that has a character an integer a float and a boolean and we create a structured data object just as we did before now we can look at the callback function and the callback function in this case is going to be called every time the data is received and this is actually the heart of the whole sketch because it's going to just work by using this callback function and so every time the data is received we're going to print out data received and then the length of the data and then we're going to print the character value and then mydata.a which will be the character value that we've sent from the other side the integer value which is my data dot b the float value my data dot c and the boolean value which is my data dot d and so every time we receive something this will print up on the serial monitor now we'll go into the setup and we'll set up our serial monitor we start the esp32 as a wi-fi station again and we initialize esp now and assuming esp now is initialized all we need to do is to register our callback function so we register it to that function i just showed you which is on data receive and that's basically it there's nothing to go into the loop because it's going to be the callback function that prints up data to our serial monitor so let's load this onto another esp32 put both of them together and watch our demonstration in action and so here's our first esp now demonstration i've got my two esp32 boards over here the board on this side is my initiator or transmitter and the board on this side is my responder or receiver and of course i've got my boards labeled as i showed you earlier so i could record my mac addresses and so the transmitter has the mac address of the receiver in its code now if we go up and look at the serial monitors we've got two serial monitors open the one on the left side is a transmitter and the one on the right side is the receiver and you can open up two different serial monitors simultaneously by opening a second instance of the arduino ide and setting the first one to one of the com ports and the second one to the other com port so as you can see on the sending side it's confirming that it's delivered a delivery success and on this side we're seeing the data we're seeing the four different structures we have now we've got the data received 44 is the number of characters we're getting and then the character value is welcome to the workshop that never changes the integer value you'll notice is changing every time because it's using a random number and the float value is also changing because we're multiplying a float value by that integer value and the boolean value on every second one will differ so it's going to be zero the next one's one the next one's zero the next one's one etc and so it's a pretty basic demonstration but it shows you how you can send data of all different types using esp now so in our previous demonstration we just had two esp32 boards one of them was a responder the other one was the initiator and the initiator would constantly send data to the responder so this was a unidirectional transmission system it only worked in one way but you can also use the esp now protocol bi-directionally in which case each board becomes both a responder and an initiator another thing you can do with esp now is use a broadcast mode which is technically a pseudo broadcast mode but it works the same way and what this is is that the esp now can broadcast to a number of esp now simultaneously what we're going to do in this demonstration is demonstrate both bi-directional communications and broadcast mode we're going to set up a few esp32 boards i'm going to use three of them but you could use four or five if you want and every board is going to have a push button and an led wired to it and the push button is going to toggle the led on and off not only on our own board but on every other board in the network so you can control every board's led with every board's push button so to speak if that makes some sense so let's go and see how we hook the boards up and then we'll take a look at the sketch we're going to run in each one to demonstrate broadcast mode for esp now now for our network experiments we're going to require more than one esp32 module hookup i'm going to show you the wiring of one of them but you're going to want to make at least two and preferably three or more of these setups you don't have to use the same esp32 module in addition to the esp32 module that you choose to use you're also going to require a momentary contact push button switch normally open an led you can use any color you want and you don't have to use the same color led for every one of your hookups and a dropping resistor i used 150 ohms but any value from 100 to 220 ohms could work just fine we'll begin by hooking one side of our switch to gpio pin number five the other side of our switch will be connected to one of the esp32s grounds esp32 pin gpio 15 is going to go to one side of our dropping resistor and the other side of the dropping resistor will go to the anode of our led and finally we'll tie the cathode of the led to ground and this completes the wiring but remember you need to wire up at least two and preferably three of these boards before we can continue our experiments now here's the sketch that we're going to be using for our broadcast mode demo and you'll need to run this sketch on every one of the that you have participating in the broadcast mode experiment now we're going to start off by including the libraries we require the wi-fi library and the esp now library and then we define a couple of booleans these booleans just define the state of both the push button and of the led then we define the gpio pins that we're connecting those push buttons and leds to so if for some reason you want to wire it up differently you could just change these numbers over here after that we have a number of functions that we're going to be calling while we're running our sketch and the first one is called format mac address and from its name as you can suspect it just simply formats a mac address correctly and we're going to be using that during both to send and receive just to print the mac address of the machine we're communicating with up on our serial monitor then we have the first of our callback functions and here's the receive callback function and so this is the function that will be called every time the data is received and what we do is we basically check the quality of the data we make sure that it's no more than 250 characters and that is terminated by a null and assuming it's good data we'll grab the mac address and send it out to the serial monitor just to let you know who it is we're communicating with and then we'll check the status of the message that's come in and the message is going to be either simply on or off and if it's on we're going to set the boolean for the led to be true otherwise we'll set it false and then we're going to write that to the led so when they receive callback we essentially just grab the data check to see what it is and turn on or off the led accordingly now this is the send call back over here and this is called whenever data is sent there's not much to do over here we're basically grabbing the mac address of who we've been sending packets to and printing that up onto our serial monitor then we have a function called broadcast and this is the function we're going to call every time we want to broadcast a message out to everybody we're just going to be broadcasting out a string and so basically we'll call out the broadcast address we'll get some peer information and we'll set up and we'll send out our message and then we will print the results of what we get whether it's successful or an error out to our serial monitor okay so now that we've seen the functions involved let's look at the actual sketch itself here in the setup we're going to set up that serial monitor we start off our esp32 in station mode and that's just a temporary thing like we always do we'll print out our own mac address for our own amusement to the serial monitor we'll disconnect from the wi-fi and now we'll go and initialize the esp32 now if it does successfully initialize them we're going to register both our receive and our send callback functions over here if it doesn't register we're going to print out a message to our serial monitor and just basically restart the entire thing and then the only other things we do in the setup is to find the pin modes of our gpio pins and the one for the led for the push button excuse me is an input and it's using the built-in pull-up resistor because we didn't wire a pull-up resistor to the esp-32 and then the output uh is set uh sorry the gpio for the led is set as an output and that's for our status led okay now we go into the loop we check the status button and if the button has been pressed down we're going to need to toggle the led state so whatever it was before we're going to make it the opposite right now and write to our own led accordingly and then we're going to check to see what we need to broadcast everyone and if it's led on if that's what the state is now then we're going to broadcast the word on else we're going to broadcast the word off and then we put in a slight delay as a debouncing it's actually about a half a second delay so you're going to want to press your switch down for a reasonable amount of time and and that's it otherwise the uh button state goes back to false and that's just an else from the very top over here where we first push the button and so that's basically the code that we're going to be using again you're going to need to load that onto every one of the esp32s that participates in the experiment so i'm going to do that right now and we'll run it and see what happens so here's our broadcast mode demonstration i've got the same code that i just showed you loaded onto three different esp32 modules and the modules are just being powered by a usb power bank over here now two of these modules are identical they're these two over here the esp32 wro ver modules and this is a different module it's an esp32s dev kit module and it might look like i've got it wired differently but i'm using the same gpio pins gpio 5 and 15 it's just that the pin out of this module is different than the pin outs on these modules over here and so that's something that you always need to be aware of when you're working with the esp32 is that you should always follow the wiring diagrams gpio pins don't go by the physical pin out because the module you're working with may indeed be a different one but again these are running the same code and if i press on a push button on one of them i can turn off all of the lights and i can turn them back on and i can do that from any of them then we'll try this one here i can also turn it off with one push button and turn it back on with another one they're all following the broadcast signal and they're all just following the signal for the status of the led and acting accordingly and i could have more of these boards sitting here doing the same thing as well and as you can see they don't all have to be the same type of esp32 board as well so there you go a demonstration of a broadcast mode of esp now so now it's time to put our esp now knowledge into some practical use and so what we're going to build is we're going to build a remote temperature sensing system in this system one of our esp32s is going to have a dht22 temperature and humidity sensor on it and it's going to take that data it's going to be the initiator and it's going to send that data over to the responder which is going to display the data on the serial monitor so you can have your temperature sensor situated far away from where you're actually displaying it and this of course is a practical application so let's go and take a look at the wiring for the board that is going to have the dht22 and then we'll look at the code we need for both the initiator and the responder for our remote sensing experiment we're going to require two esp32s one of the esp-32s does not require any additional hardware however the other one is going to require a dht22 temperature and humidity sensor and a 10k pull-up resistor we'll begin by connecting data input gpio5 to the data output of the dht22 we'll connect the esp-32 3.3 volt output to the vcc pin on the dht22 and the esp-32's ground will be connected to the dht22 ground finally we'll connect our pull-up resistor between the input on gpio5 and the 3.3 volt output and this completes our wiring now obviously if we're using two esp32 devices for this project we're going to require two sketches one for each of them so this is the sketch for the transmitter device the one that we wired the dht 22 to now we start off by including our required libraries which once again are the wi-fi and espnow library and we'll also include the dht library now i'm going to assume that you have that installed in your arduino ide because we use this sensor so much but if you don't you can go into your library manager and look for dht and install the library next we're going to define the parameters of the dht22 sensor and so the dht pin where it's connected is pin 5 and the dht type the type of sensor we have is a dht22 now if you decide to use let's say a dht11 you could change this line over here then we create an object that represents our sensor after that we define a couple of variables both of them floats that represent the temperature and humidity and we'll also define the responder mac address in this situation we are the initiator and the receiver is going to be the responder and so you're going to need to get the mac address of the other esp32 and insert it over here obviously these numbers aren't going to work for you because these are for my esp32 then we define our data structure and our data structure is going to contain two floats it's going to contain the temperature and humidity and then we'll create a structured data object from that structure we'll register our peer and now we go to our sent data callback this is the function that's going to be called every time data is sent and the only thing we're doing in here is we're going to print out the status and whether the delivery was successful or whether that failed then we'll go into the setup and it's pretty simple we're going to start our serial monitor we'll initiate the dht22 and we'll set the esp32 temporarily up to station mode and wi-fi as we always do when we're using esp now then we'll initialize esp now and assuming that it initializes correctly we'll register our callback the function that we already showed you that is called every time data is sent then we're going to register our peer our peer in this case is going to be the responder so assuming everything is correct we have the peer registered and we go down into the loop now in the loop we're going to read the dht 22 in the standard fashion and assign its values to the temp and humid variables then we're going to print those up to our serial monitor this is a troubleshooting technique we're going to add them to the structured data object and then we're going to send that data so we're going to send those two pieces of data out we're going to put a two second delay in for the dht 22 because that's what it requires to stabilize between readings and we'll do it all over again so there you have the transmitter sketch now let's go and take a look at the sketch that we're going to be using on the receiver side now here's the sketch that we're going to run on the receiver side of our remote sensing system and remember the receiver esp32 does not have any additional hardware connected to it we're going to start off again by including the required libraries your wi-fi library and the esp now library and then we're going to define our structured data type which is the same one that we defined in the earlier sketch for the transmitter so we've got two floats in the structured data type and we'll create the structured data object now we define our callback function and this is really the heart of the entire sketch because the whole thing works on the callback function now this callback function will be invoked every time that we receive data so what we're going to do is get the incoming data and then print some of it out my data a is going to be the temperature value and my data b is going to be the humidity value and so those will be printed out to the serial monitor now in this setup we're going to set up the serial monitor we start the esp32 in station mode again we initialize esp now and then we register our callback function the one that appears every time that we receive data and that's basically it there's nothing there in the loop every time that callback function is called it should print out to our serial monitor so let's load all of our sketches up and give the whole thing a test so here i have my demonstration of my remote temperature sensing and in my demo the sparkfun esp32 thing board is my receiver or my responder and this board over here which is an esp32 dev kit board is my sender or my initiator and if we go on to the serial monitor i've got a serial monitor open on each one and you can open multiple serial monitors again by just opening a second instance of the arduino ide so over on the right i've got the initiator which is sending out temperature and humidity data and on this side over here i've got the responder and it's printing out that temperature and humidity data and so it seems to be doing that pretty reliably i'll just clear the outputs so we can kind of watch it go in sync with each other it's a little hard to see when it's all this on the screen and so there you go you see these are synchronized and it's sending out the temperature data and the humidity data and it's receiving it over here and so we've built a remote temperature receiver using two esp32s and the power of esp now now earlier on when i explained the basics of espnow protocol i illustrated a system in which we had multiple initiators and one responder and so we're going to finish off today by doing exactly that with the system that we just built with the remote temperature system right now the remote temperature sender is the initiator and the responder is just displaying the temperature and humidity but we could build more than one initiator and have it send to the same responder so that's exactly what we're going to do we're going to put another esp32 board together with a dht22 wired exactly the same way as we did before and we're going to make some slight modifications to the code so we can use multiple initiators and one responder to make a remote temperature and humidity sensor that can sense temperature and humidity from several different locations so let's go take a look at the changes to the code we need to make in order to accomplish that now here are the modifications we're going to need to make to the transmitter side in order to use multiple devices with our remote sensor system now every transmitter is going to have its own unique number and that's basically the modifications that we're making over here so we start everything off the same but the first thing that we add that's different is this integer that we're adding called a dent and that's for identifying it and for every esp32 that you load this up on you're going to need to change this integer now i've got this one set to two my first one would have been one if i have three or four of them they'd be three four etcetera so every one that you load this up onto needs a unique identity number and then the data structure needs to change because we need to send that identity number so in addition to the two floats we had we now have a third element in our data structure and that's an integer and then if we go down over here we're going to see where we put all of this into use if we go into the loop where we add to the structured data object we're going to add the a dent into the structured data so we're going to be transmitting that along with temperature and humidity and that's really the only modification that you need to make to the transmitter side just remember that when you're setting up this event variable it has to be a different number for every one of them so you're going to have to change that every time you upload it to a new board and now let's take a look at the modifications we need to make to our receiver side so here are the modifications we're going to need to make to the receiver side of the sketch to allow for multiple transmitters and there's not too many modifications you can probably guess what they are too the first one of course is we've got to make our data structure the same as our transmitter so we're adding a third element the integer which will be the identification number of the transmitter and then what we need to do is we need to go down to the callback function and edit how we print everything to the serial monitor so we're going to print temp sensor and then we're going to print the number of the temp sensor and so we get that from the c part of our structured data and we're going to print then the temperature data humidity sensor again we'll print that c part of our data to give us the number of the humidity sensor and then the actual humidity data itself so it should print temp sensor one the temperature humidity sensor one the temperature and then when the other one comes along temp sensor two its temperature the humidity sensor two its temperature etc etc so again some very simple modifications to make for multiple use now let's go load these up on our two esp32 boards and give it a test and so here's a look at the serial monitor of my running demonstration and as you can see i'm getting data from two different temperature sensors now temperature sensor number two is one that's right here on my workbench with me and so it's giving a reasonably temper temperature of 24 degrees right now temperature sensor number one i've got sitting in a window right now and i actually just put it in the window so the temperature will continue to drop because i think it's actually only about six degrees celsius outside right now and right now it's reading about 10 degrees there and it's probably going to continue to drop a little bit as well and so these two temperature sensors are separated from quite a distance the one in my window is in a window that's on the far end of my basement so it's broadcasting from over there and i'm not having any problem with the range and so as you can see i'm able to add multiple temperature sensors to this system and i could add some more temperature sensors to it as well so this could be a very practical system if you want to record environmental conditions in different places and have them go back to a central source and we can do it all without wi-fi just using esp now so this concludes our look at esp now and i hope that it's showing you that esp now is a very versatile protocol that you can use for a number of peer-to-peer applications for the esp32 and the esp8266 so hopefully it's given you a few ideas for some applications of your own now if you want to get more information about espnow or if you want to grab the sketches that i used today you'll find all of that in the article that accompanies this video on the dronebotworkshop.com website and of course there is a link right below the video to that article you'll also find a link to join the newsletter if you haven't signed up to my newsletter yet please do so it's not a sales letter it's just my way of letting you know what goes on here in the workshop if you want to discuss esp now further the best place to do that by far is the dronebot workshop forums where you'll find thousands of other electronics enthusiasts who'll be happy to discuss anything about the esp32 or any microcontroller or electronic related matter and finally if you have not subscribed to the youtube channel yet please do that i love getting new subscribers and i'd certainly love to have you be my next one all you need to do is click on the red subscribe button and also if you click that little bell notification and if you have notifications enabled on your youtube you'll get notified every time that i make a new video so until we meet next time please take good care of yourself please stay safe and i will see you again very soon here in the dronebot workshop goodbye for now [Music] you
Info
Channel: DroneBot Workshop
Views: 342,170
Rating: undefined out of 5
Keywords: ESP-NOW, esp-now tutorial, ESP32, esp32 tutorial, ESP-NOW demo
Id: bEKjCDDUPaU
Channel Id: undefined
Length: 43min 2sec (2582 seconds)
Published: Sun Apr 03 2022
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.