For those who don't know, Any ESP can be switched to external antenna with small soldering skills You can use espnow or espnow long range. Espnow can be used simultaneously with wifi if you need a Gateway but not recommended
Woah! I was wanting to know if they can be used simultaneously. And if the range can be extended. 😂 Thanks mate. I'm not currently very techy, or anymore than a novice learner (programming). But I love this kinda shkit!
@@yasirrakhurrafat1142 “Simultaneously” is a bit of a misnomer but it does work. The underlying method is that both ESP-NOW and wifi share the radio the same way multiple cars can share a single lane.
@@JB-fh1bb would it mean that I'll lose the connectivity with the esp modules that are connected to the WiFi (router), when I use the esp-now? Or that the esp modules will extend the wifi range like a wifi extender to expand the base wifi (router) range to connect with the furthest esp device using the esp now connection?
@@yasirrakhurrafat1142 great question. It's sharing clock cycle to clock cycle so you will maintain connection, but you will see lower performance on each and possible collisions if there is a lot of data going through each protocol.
I'd like to give you a big thanks. Years ago I didn't even own a soldering iron. Thanks to your videos and inspiration-- I've tackled the basics all the way through to building my own ESC for an electric quad bike! Your videos are more than entertainment and/or tutorials-- they inspire and change peoples lives! Thank you Great Scott :). Thank you!
ESP-NOW really shines when it comes to low power designs, since it is connectionless. I converted a sensor over from wifi to espnow and it went from draining an 18650 in under a month to lasting over 6 months at which point I just ended the test. It should be noted that ESP-NOW does have a built in retry mechanism when used in unicast mode (which is when you tell it the destination MAC, i.e. not FF-FF-FF-FF-FF-FF). It will retry 11 total times at 11, 5, then 1Mbit, or even slower if "long range" is activated. This is important when you're going for a low latency connection like voice, that the total send time can be 0.1ms or 3-4ms for one packet!
As others have said: the esp32 can function in AP wireless mode, so you can connect to it without a router involved. Additionally many (most? all?) can function in STA and AP mode simultaneously, so they can connect to a wifi net at the same time something is connecting to them. I do this and it works great.
Didn't tried espnow yet but I have been uysing the method you describe for my last project and sometimes depending on the environment it stops working. It's not a software problem as if the device are close (like 2 meters) it works perfectly but when the distance is larger the client device doesn't find the AP or it disconnect after a few minutes. I'll try espnow as it looks like the definitive solution for my problem.
@@LuxBacelo Are you using the built-in antenna or a module with an external antenna jack? I use one with an external antenna (DevKit-CVIE which uses WROVER-CVIE) and haven't had any issues, but I haven't really stress tested the AP range.
ESP8266 has much reduced throughput in softAP mode because the AP implementation is in software. I imagine ESP32 is the same though has an extra CPU core (if it's a dual core version) so probably handles it much better.
Approx. 2 years ago, you was one of the UA-camrs that motivated me to start tinkering with electonics myself. Meanwhile I finished a few successful projects. For example, I have built my own telemetry system for my RC helicopters using ESP-NOW communication. I also built a „customer detector“ with 2x ESP8266, a sonic distance measuring module, a few LEDs and ESP-NOW communication. Great videos, GreatScott!
Great! Congratulations! I'm Engineer of Control and Automation here in Brazil and have some ideas for increase the usability, time of flight, logs, data aquisitions, positioning without GPS totally dependence, using cheaper drones, especially agricultural, and for grabbing cheaper internet signals in remote locations. Can you show me your projects?
I put together a zigbee network for my old workplace. Super low power, totally open protocol with encryption and mesh networking by default, works with a ton of off-the-shelf stuff (like IKEA lights and buttons), no single point of failure except for setting up the initial connection. Industry routinely tries to kill it off beacuse it's really not that profitable and makes external data collection more difficult, but for users, it's really an ideal protocol.
Almost 3 years ago i have created a complete system based on ESP Now as a part of my FYP. It includes ESP now gateway, multiple sensors and actuator nodes, complete custom backend and mobile app for controlling everything. I made some modification to esp now based systems to increase it reliability as esp now is based on udp. Also everything is dynamic thanks to the esp now gateway i have designed. ESP now is very great low power protocol only if we use it properly.
Hi Muhammadahsan, this would be great to share. Do you have a link to your project? I would be interested ffor Example. I need to change my sensors arround and espnow maybe the way. Thank you! And thanks @greatscott for this video!!
ESP-NOW is nice to play with, but it does have some quirks you need to know or else you will loose a lot of time debugging it. For example, you better not use the full 250 byte payload length as this tends to work less reliable. Better stay below 200-ish bytes per packet. Also it seems like ESP-NOW does do some acknowledgements as the round-trip time increases when you extend the range. Like it does seem to lower the bandwidth and thus increase the possible range. You need to set the MAC address as peer for sending to some other node, but not for receiving. So you can make it more dynamically with some coding effort. The maximum number of peers you can set depends on whether or not you use encryption. And from experience, the broadcast feature tends to work even more unpredictable when adding more peers. So do not rely on broadcast packets. Also there is some really odd stuff going on with the ESP radios when using any channel other than channel 1. So best to stay on channel 1 unless you have a very good reason to use another channel (e.g. when STA is connected to some other AP to try and use as a gateway) You also need to set the channel when adding a peer, as the ESP-NOW code will remember the channel for a specific peer and if for some reason it assumed the peer was on another channel, you will see really poor performance as the radio needs to switch channels constantly. You need to have a stable power supply when using an ESP-NOW node via its AP interface as this is constantly on. This is the fastest and most reliable mode for nodes that can be always powered as you will less likely miss a packet. You can send packets via the STA interface, but only use this for nodes that really need to save the last bit of energy like some wake-up, fire and go to sleep again. In all other situations, use AP interface for ESP-NOW traffic. This also allows to properly set the channel. If you keep all of these in mind, then ESP-NOW can be a really fun protocol to experiment with and the distance can get surprisingly long between nodes. It also is quite fast as you mentioned. Like a few msec round-trip-time is to be expected when using the AP interface.
Reliability is linear to payload size. So 200 is good, but 25 is much better. It has to do with the rf environment, such as competing noise makers and the gap between /their/ packets you need to exploit for a successful transmission. I have seen devices that send tiny packets completely disrupt anything with larger packets.
"You need to set the MAC address as peer for sending to some other node,'" - that is NOT true. ESPnow supports broadcast to all who listens. "The maximum number of peers you can set depends on whether or not you use encryption." - true but partially. If you delete peer you can have unlimited of them. "Also there is some really odd stuff going on with the ESP radios when using any channel other than channel 1" - completely not true - my network works on all channels but 1. "You also need to set the channel when adding a peer," - not true - you can send on all channels one by one and hope someone will finally receive
not nice < niais < bravos := not-skilled but you are; can’t write adverb/adjective nor chain a nonprospective verb; fast → swift; will → shall; try _what?_ and use
Thanks for the suggestions. I have a network of 3 esp-now devices, where the 3 devices are gathering data and one of them pushes this data to a web server. For that what I do is set this ESP device to WIFI_AP_STA mode. The issue is that this will set this device in the same channel as the wifi network, so what I do with the other non-wifi ESP devices is to search the channel of the wifi ssid. This solution was sort of working for some months, but in the last weeks I've been getting disconnections way more often. Since I need reliability on my system, I am looking for solutions but can't think of much. Do you have an idea on how to approach this issue?
When I was in college (circa 1985), I built a one-way digital audio link (in this case using an LED and a photodiode) that employed a delta modulator (Analog Devices chip ?). The key benefit of the delta modulator is that the bit rate is low as data is only sent when the audio waveform is changing. I was quite impressed by the fidelity I achieved well below the Nyquist theorem.
@@gigabytegb - That's correct. I remember that I had to put a shield (tube) on the IR phototransistor because the front end was being swamped out (poor design on my part) from stray IR.
ESPnow is super cool, and there is also a long range mode. That in combination with the wifi on the lowest bitrate and some external antennes(but just simple 2dbi ones) i got 2,5km of bi directional communication. But i have to say it was mounted on a rc plane
@@Sohailkhan-zw1gl i dont store my projects in git. But if you look for espnow long range mode then you find the examples. But external antennes do the trick. And remember a had one side on a plane in the air so these kind of range you dont get that in the ground
WiFi interference of ESP32 is a big problem. I faced it for the first time when I was designing a super stable and noise-free power supply for some specific project of our lab. The power supply output voltage was being controlled by the ESP. The WiFi interference was adding noise to the output voltage. Later we switched to STM32.
Good video. But your comparison may generate some confusion. 433Mhz it's a frequency but Lora it's a modulation protocol. 433Mzh have been used for quite long time before Lora but here in EU Lora transmissions use same frequency plus 868Mhz. Living in Germany you must know that this country have a strong Meshcom community. For those who don't know Meshcom it's a Meshstatic like project that use only 433Mhz frequency.
3:14 That isn't true, you can make a private network between modules without a router and when you do this with websockets it blazingly fast. Range can also be pretty good.
best feature for espnow is "transfering data quickly" from my experience. And i did not know the lora module is in the low speed category as you showed in the video, thanks for it. Comments are very informative! Thank you all, maker community!
I recall looking into LoRa for one project. It's in the kilobits range, if I recall correctly. On the other hand, it seems the range is measured in miles.
Just a side note that if you have multiple ESP32 boards communicating with each other via ESP-NOW especially for fast data transfer applications (like RC Car), there might be noticeable lags in the data transfer (but no data loss I think) until you leave only one ESP32 pair communicating. This is, from what I have experienced, due to too much activity in the ESP-NOW channel you set for each ESP32 pair. There are a few lines of code mentioned in the Espressif docs that allow you to change the channel, just like WiFi, but it was not obvious (at least for me) :(
In Broadcast mode (one to many) there is no acknowledge even tho the ack callback function reports a successful transmission. For exclusive pairs - point to point - the ack reports successful reception so decent flow control is possible in this scenario. Of course, a manual broadcast with full acknowledgement can be achieved by iterating thru a list of peers sequentially. This should be fast enough to be practical.
Don’t you need an antialiasing filter between the mic amp and the ADC ? I think it would be wise to filter out everything above 3 or 4 KHz (depending on the sampling frequency).
THANK YOU! This video is exactly what I have been trying to research for my project. Alternatives to all the other wireless standards. I use ESPs from adafruit and never knew about ESP-Now. Your channel has informed me about soooo much! Thank you!
He just needs to LPF at the highest frequency voice band, 16kHz RC should be enough. Nyquist is the ideal sa pling frequency, because beyond that rate starts causing follower issues. You can see this on MatLAB and in real-life
I've found that a great application for ESPNOW is RC vehicles. It's pairless so no more waiting for connection, and communication is the most reliable it can be. The transmitter sends regardless of the state of the receiver. It's also fast enough to send data to it over 10 times per second, giving RC vehicles lightning-fast responsiveness. Moreover it has a long range which is again ideal for RC. And it also needs very little power so you dont have to worry about the wireless communication eating through your batteries
Great video (as always) I love ESP-NOW as i dont like having my stuff connected to the internet for obvious reasons and you are only scratching the surface of what ESP-NOW can do, looking forward to the projects you have lined up for it
I think the ESP wireless protocol would be an excellent tool for a self developed home security network where you don't want your individual cameras or audio recorders available over the wifi network. Many people can exploit wifi insecurity with a simple youtube video search, most of them would not even know to look for ESP wireless signals let alone how to exploit them. If you are able to encrypt the data this is another layer in defeating the "casual" hacker.
Also I have to say, I have been watching your videos for years now and its amazing to finally put them to good use now that I am in university and studying mechatronics. It definitely gave me a head start so I was able to properly understand and play with all the course content on electrical engineering.
Very cool. There's so much happening in the microcontroller and wireless worlds these it's impossible to keep up, so I'm glad to see this. WiFi without a router - Thank You ESP!
one of the best things about ESP Now is its really low latency. It does not guarantee delivery, like udp, but to send then receive a packet takes under 1 ms . I have measured this myself.
Thank you for the interesting video! It's interesting, that on 5:19 you soldered a push button, while your dev board already have one (connected to GPIO 0). As well as a LED =)
Is ESP-now still working well in an environment with lots of 2.4GHz noise ? (Like in an urban setting with lots of 2.4GHz Wi-Fi routers or with lots of microwaves)
3:00 WiFi is a bit slower but not that much, the response time is pretty much instantaneous, notice that the request isn't being sent as soon as you release the button (look at the reload wheel on the top right)
I've got a dozen ESP32's around the house as various temperature/weather/climate sensors. But they all connect to wifi and then talk to a Raspberry Pi server to upload their data. I guess if I wanted to use this, I'd need another ESP32 acting as a host/gateway? And all the other ESP32's would send their data to it over ESP-NOW, and then the gateway would upload to the Raspberry Pi.
@@greatscottlab I'd think of connecting an ESP to the RPI on data level. The RPI has sufficient pins for that. You could use 19k2 speed, how much data do you need to transfer? If more, then you could go over 100k bits/second. Main thing of ESP-NOW is fast connection speed. All said? No, the ESP is a development board. We use it as a end product already. So far my 2 cents.
I've done something like this. I connected the ESP to one of the usb ports of the Pi and then simply used the serial connection to communicate back and forth. The ESP simply acted as a relay between the Pi and all the other ESPs. The Pi had enough juice to also power the ESP through the usb port.
@@josratsma8438 Thats really cool, thanks for telling! Real confidence booster knowing someone else got it to work. I am debating the benefits though. It would require a lot of extra programming and some hardware, just to have a bit of extra range, which I don't need, less power consumption, which isnt an issue, and less wifi noise, which again isnt an issue. Instead I have my battery powered devices connect only once every few hours and upload the past few hours of data all in one burst, that way the wifi radio is only used for a few seconds every few hours anyway, so ESP-NOW wouldnt really make much of a difference for battery life there either.
I just want to tell you that your videos inspire me to do better. i am a amateur electronics hobbyist and love the projects you do. i wish i knew half as much as you do when it comes to electronics and such. I wish you would consider making an online course for teaching what you know for people who would like to learn this type of information. thanks for yet another great video! keep up the good work.
Small detail is that it's not true that with with Wi-Fi you can not directly connect two end devices without a router. 802.11 also defines ad-hoc communications, It's called IBSS mode
I am interested to know the problems you have with LoRA seeing as its capable of around 27kbps that should be more than enough for basic audio communication and significantly longer range.
I use ESPNOW for my sensor network. I quite like it. However, when used indoors between 3 brick walls the range is unreliable. I havent tried it outdoors transmitting and receiving into the house but Id guess an external ipex-like connected or SMA connected external stub antenna based ESP32 would offer better gain over range. Im sceptical of thr cut and splice approach Ive seem done in some YT presentations. Surely there needs to be some form of matching network in the front end of the radio section to properly deliver RF without mismatching and subsequent reflections on the transmission line.
I recently used ESP8266 with wifi for a project to switch alot of relais and with multiple esp‘s. Yes you need a gateway and a server but the communication was super fast and also secure with certificates.
I am surprised that ELEKTOR is still alive. I started this magazine in the 70s and made many projects over a period of 15 years. Later, I purchased only the double issue in August.
I am DEFINITELY going to look into ESP-NOW as a (potential) replacement for RF24 modules. The RF24 modules are great so far, but could do with getting rid of the extra wiring.
I made a little 150g combat robot using an ESP32-C3-MINI-1, and, can confirm, ESP-NOW is indeed awesome. I put the robot in my house, then walked outside, past my gate, and it still worked (probably 30m or so). Past that it stopped receiving signals though, probably because my transmitter ESP32 was very small and had a chip antenna which was probably low gain (not to mention the antenna had no ground clearance or anything. Thanks for your awesome videos GreatScott!
You’ve got me curious about how far the walkie talkie works when you add ESP32s along the path. Is it distance times the number of ESPs? Does signal drop off after a certain amount? What if there are multiple ESPs at each “leg of the relay”?
I think the only downside is that you need 2 devices then to communicate? for example my Esp32 wifi garage opener i can control with my phone and out of wifi also with port forwarding in my router
Would an external 16-Bit I2C DAC help with the quality? Do you know how many packets per second you can send? I mean 1MBps is like 10 times as fast as ISDN which was 64kbit/s. With 1Mbps you don't even need to bother much with audio compression.
I think there is room to improve the 8 bit DAC more with better filtering. Was not clear from the video if the audio amplifiers were tuned to the correct roll-off frequency to get under the Nyquist limit ([half] the sample rate). Also not clear if the the audio was buffered in any way. If it was not buffered: there would be noise on every packet as the data stream drops out between packets.
The slow response time problem for wifi is likely due to Nagle bandwidth shaping. You can get insanely rapid responses over a tcp connection if you disable Nagel (which you can do when you establish the tcp connection). Always something to try depending on how much of a delay you notice.
I use those cheap $2 rf modules, and I get upto 2km if in sight, did you check the power setting? Orientation should be upright, and the antenna maybe needs length tuning.
Could you also disable the WiFi on the ESP32 somehow (to remove even more interference)? A quick search implies that there are a couple of options for this approach (but it's beyond me at this stage).
I can see your custom made designs do not have the esp32 in the corner so i thought you might not be aware of that using a properly placed footprint, following the espressif antenna placement recommendations for active esp32 modules (tldr: put the antena in a corner without pcb behind) will give you MUCH LONGER range. The devkits you are using as examples in this video have pcb (probably with ground) routed under the antenna and they have terrible wireless performance, you can easily get >15m for wifi out of a good design. You can also see the change in antenna placement in newer espressif devkits like the S3 ones, they all have the antenna outside the pcb. it can even work quite well from inside a closed metal enclosure. Thnx for the video, i didn't know about ESP-NOW, i will be using it from now on!
The background noises in the video were extremely distracting. Info is also missing: eg can ESP-NOW be used while also connected to a router (the internet) or is it one or the other?
Could this in theory create a mesh network between all ESP devices? Like a zigbee replacement? Would be so helpful to chain my IOT devices instead of installing more APs
ESP-NOW rocks! but nobody talks about the power consumption, I'm doing a controller for my skateboard using two xiao-esp32c3 and when the transmitter radio is on the consumption goes to around 300ma, insane consumption!
Sure. Also possible. Should definitely achieve better quality. For this video it was basically just a test/demo what ESP-NOW can do. For a proper project I would have tried using I2S.
The quality of your audio amp circuit also has a major effect on the results of the audio you get as well. The cartridge mic's quality, the amp circuit you used for the mic (the mic amp used here looks to be class A, so high fidelity, but also high power consumption), and the amp circuit used for the speaker (this looks to be some sort of IC amp, so I am not sure if this is creating any of the distortion or not). I bring this up because the audio didn't sound like it was being distorted from the ADC and DAC all that badly. There was some packet loss in there, but it sounded more like an audio amp circuit wasn't all that great in the circuit, but I could be wrong. One of the biggest mistakes I have seen done is using op-amps for audio amplification. This should never be done since op-amps don't have even amplification across all frequencies, so they sill distort audio signals. They are for amplifying signals where the fidelity doesn't matter as much, like a simple hi-lo signal from a sensor that is really far away or it doesn't put out that much voltage between the two states.
@@jankomuzykant1844 I have and if you are willing to sacrifice fidelity, an op amp does have a nice amount of gain, but with audio signals, you don't want to be adding in random distortions at random frequencies because it makes the audio sound bad, unless the intention is to distort the audio. Hence why I mentioned fidelity being very important for audio. I do happen to have a degree in electronic communication and a copy of the most recent edition of Audiology handy, if we wanted to redesign the circuit to be better. I personally would have just used another class A amp circuit built with a BJT or a class D amp IC in a DIP to handle the output speaker since I know it would work and is a simple circuit.
The NRF24L01 works almost the same as ESP-NOW in BLE mode, which is what you used in this project. ESP32 BLE and NRF24L01 can communicate with each other. NRF24L01 was already in use before the BLE standard was certified in 2009, and products that used the BLE standard came much later. I still love the NRF24 series, it's cheap and easy to use.
I'd really like to see examples of a esp32 talking to a nrf24l01 !! The esp wifi has a 20dbm power output compared to nrf24 1dbm, so if I can send via esp and recv via nrf24 that would work much better, the nrf can operate with almost zero power consumption.
All the NRF24L01 I ever bough were extremely unreliable and if I happen to get it to work, it had abysmal range (say 10 meters). Yes with all the tricks like extra 100 µF cap right across and direct solder connections bla bla bla. Complete trash. Got a whole bag of them, since I tough maybe I have counterfeit ones and bought more from different vendors.
While it may be overkill for this project, there are a couple of ideas that can be stolen from the VoIP world to address some of the issues. A codec can be used to compress the voice in real time. Some are very simple, some not so. Even some high quality VoIP systems work with data rates less than what is available here and with only 8 bit samples. VoIP uses UDP for transmitting voice so is also susceptible to dropped packets. Packets are timestamped so missing packets can be identified and if a packet is dropped, the receiver simply replays the last packet which is more than likely almost identical to the missing packet. If packet loss is small, the impact is barely perceptible. Like any packet oriented system, a little bit of packet buffering can smooth out slight delays in receiving new packets.
Hi can you please make a video to control a device using a single button like it's different modes of functions and also turning it On and off with the same button!
I don't know... if I understood this was 10m. I think maybe 50-100m we can speak together without anything, and better, and I think an FM or AM analog device also better in 10m. But the 8bit in PCM I think, so the question that can we upload a software converter to opus/mp3/flac/AAC/AC3? Because 8 bit 40kHz PCM is 320kbps if I calculate is good. What maybe enough for fine quality sound.
7 місяців тому+3
Love the content, hate the soldering, that thing gave me nightmares...
Have somebody figured out to build a bridge between ESP-Now and IP based wifi (on a single esp)? This is a challenge and every post on the webs don’t work (for me) even forcing esp-now to the same channel as used via WiFi. Espressif promises a bridge for years but now still no solution. So I build a bridge via two ESPs (connected over serial). But I don’t like this approach.
hi great scott I recently brought a electronic kit and wanted to make a flip flop and do other things with the 555 timer so I was thinking if you could make a video on making flip flop and other fun circuits with 555 timer like potentially making a sine wave generator or any other waveforms with it
at 7:50- How can "Range" and "Works" have different results? Surely if something is in range, it should work? otherwise how do you know it's in range? Great video though- thank you
Hi Scott. Thanks for all these interesting videos ! I've got a question for you ... I've been looking for a Li-ion battery protection circuit (or 5v buck boost with low voltage protection) that cuts around 3.2~3.0V, and couldn't find one. They are all set to cut at 2.5V, which IMMO is way too low and harms batteries, reducing their life time. For example, my E-cig has such a protection that cuts at 3.2V, but no way to find such circuit on Ali... any thoughts / advise about this ? Thanks
I agree ESPnow is a good protocol for ESP-ESP communications but, unfortunately, most of the projects I do, I use the RF connection for connection to a PC or phone for UI or data collection.
How does it handles regular German walls? Better than Wi-Fi? I am assuming no because it is on the same frequency range. But as almost always, I could be wrong.
Hi Scott, have you analyzed how to make a WIFI Mesh using ESP32? I think that one would be a killer for most IOT needs. Also, having active/active gateway would remove all the failure points. Please ping me if you'd like to share some thoughts. Thanks!
i was just recently thinking about how how 20 years ago about how cheap but capable micro controllers changed so much. Now everything needs to also be wireless and have an app. Sure, I think it's overused sometimes but its also useful as well
For those who don't know,
Any ESP can be switched to external antenna with small soldering skills
You can use espnow or espnow long range.
Espnow can be used simultaneously with wifi if you need a Gateway but not recommended
Woah!
I was wanting to know if they can be used simultaneously.
And if the range can be extended.
😂
Thanks mate.
I'm not currently very techy, or anymore than a novice learner (programming).
But I love this kinda shkit!
@@yasirrakhurrafat1142 “Simultaneously” is a bit of a misnomer but it does work. The underlying method is that both ESP-NOW and wifi share the radio the same way multiple cars can share a single lane.
@@JB-fh1bb would it mean that I'll lose the connectivity with the esp modules that are connected to the WiFi (router), when I use the esp-now?
Or that the esp modules will extend the wifi range like a wifi extender to expand the base wifi (router) range to connect with the furthest esp device using the esp now connection?
@@yasirrakhurrafat1142 great question. It's sharing clock cycle to clock cycle so you will maintain connection, but you will see lower performance on each and possible collisions if there is a lot of data going through each protocol.
@@yasirrakhurrafat1142 As for the second part, they are separate protocols so ESP-NOW will not extend wifi
I'd like to give you a big thanks. Years ago I didn't even own a soldering iron. Thanks to your videos and inspiration-- I've tackled the basics all the way through to building my own ESC for an electric quad bike! Your videos are more than entertainment and/or tutorials-- they inspire and change peoples lives! Thank you Great Scott :). Thank you!
Sounds like a good project to share and make a video :)
ESP-NOW really shines when it comes to low power designs, since it is connectionless. I converted a sensor over from wifi to espnow and it went from draining an 18650 in under a month to lasting over 6 months at which point I just ended the test. It should be noted that ESP-NOW does have a built in retry mechanism when used in unicast mode (which is when you tell it the destination MAC, i.e. not FF-FF-FF-FF-FF-FF). It will retry 11 total times at 11, 5, then 1Mbit, or even slower if "long range" is activated. This is important when you're going for a low latency connection like voice, that the total send time can be 0.1ms or 3-4ms for one packet!
If you're seriously considering using voice over a low bandwidth digital channel, please consider using a vocoder like MELP.
As others have said: the esp32 can function in AP wireless mode, so you can connect to it without a router involved. Additionally many (most? all?) can function in STA and AP mode simultaneously, so they can connect to a wifi net at the same time something is connecting to them. I do this and it works great.
Didn't tried espnow yet but I have been uysing the method you describe for my last project and sometimes depending on the environment it stops working. It's not a software problem as if the device are close (like 2 meters) it works perfectly but when the distance is larger the client device doesn't find the AP or it disconnect after a few minutes. I'll try espnow as it looks like the definitive solution for my problem.
@@LuxBacelo Are you using the built-in antenna or a module with an external antenna jack? I use one with an external antenna (DevKit-CVIE which uses WROVER-CVIE) and haven't had any issues, but I haven't really stress tested the AP range.
@@CaseyConnor Built-in, sadly I don't have space for an external one.
The esp8266 also could function as an AP. A good exemple is the WLED project.
ESP8266 has much reduced throughput in softAP mode because the AP implementation is in software. I imagine ESP32 is the same though has an extra CPU core (if it's a dual core version) so probably handles it much better.
Approx. 2 years ago, you was one of the UA-camrs that motivated me to start tinkering with electonics myself. Meanwhile I finished a few successful projects. For example, I have built my own telemetry system for my RC helicopters using ESP-NOW communication. I also built a „customer detector“ with 2x ESP8266, a sonic distance measuring module, a few LEDs and ESP-NOW communication. Great videos, GreatScott!
Great! Congratulations! I'm Engineer of Control and Automation here in Brazil and have some ideas for increase the usability, time of flight, logs, data aquisitions, positioning without GPS totally dependence, using cheaper drones, especially agricultural, and for grabbing cheaper internet signals in remote locations. Can you show me your projects?
@@gigabytegb Unfortunately I have not published anything so far. If I do I let you know.
I put together a zigbee network for my old workplace. Super low power, totally open protocol with encryption and mesh networking by default, works with a ton of off-the-shelf stuff (like IKEA lights and buttons), no single point of failure except for setting up the initial connection.
Industry routinely tries to kill it off beacuse it's really not that profitable and makes external data collection more difficult, but for users, it's really an ideal protocol.
Almost 3 years ago i have created a complete system based on ESP Now as a part of my FYP. It includes ESP now gateway, multiple sensors and actuator nodes, complete custom backend and mobile app for controlling everything. I made some modification to esp now based systems to increase it reliability as esp now is based on udp. Also everything is dynamic thanks to the esp now gateway i have designed. ESP now is very great low power protocol only if we use it properly.
Hi Muhammadahsan, this would be great to share. Do you have a link to your project? I would be interested ffor Example. I need to change my sensors arround and espnow maybe the way. Thank you! And thanks @greatscott for this video!!
ESP-NOW is nice to play with, but it does have some quirks you need to know or else you will loose a lot of time debugging it.
For example, you better not use the full 250 byte payload length as this tends to work less reliable.
Better stay below 200-ish bytes per packet.
Also it seems like ESP-NOW does do some acknowledgements as the round-trip time increases when you extend the range. Like it does seem to lower the bandwidth and thus increase the possible range.
You need to set the MAC address as peer for sending to some other node, but not for receiving. So you can make it more dynamically with some coding effort. The maximum number of peers you can set depends on whether or not you use encryption.
And from experience, the broadcast feature tends to work even more unpredictable when adding more peers. So do not rely on broadcast packets.
Also there is some really odd stuff going on with the ESP radios when using any channel other than channel 1. So best to stay on channel 1 unless you have a very good reason to use another channel (e.g. when STA is connected to some other AP to try and use as a gateway)
You also need to set the channel when adding a peer, as the ESP-NOW code will remember the channel for a specific peer and if for some reason it assumed the peer was on another channel, you will see really poor performance as the radio needs to switch channels constantly.
You need to have a stable power supply when using an ESP-NOW node via its AP interface as this is constantly on. This is the fastest and most reliable mode for nodes that can be always powered as you will less likely miss a packet.
You can send packets via the STA interface, but only use this for nodes that really need to save the last bit of energy like some wake-up, fire and go to sleep again. In all other situations, use AP interface for ESP-NOW traffic. This also allows to properly set the channel.
If you keep all of these in mind, then ESP-NOW can be a really fun protocol to experiment with and the distance can get surprisingly long between nodes.
It also is quite fast as you mentioned. Like a few msec round-trip-time is to be expected when using the AP interface.
You need to publish this somewhere, like maybe in a GitHub gist
Reliability is linear to payload size. So 200 is good, but 25 is much better. It has to do with the rf environment, such as competing noise makers and the gap between /their/ packets you need to exploit for a successful transmission. I have seen devices that send tiny packets completely disrupt anything with larger packets.
"You need to set the MAC address as peer for sending to some other node,'" - that is NOT true. ESPnow supports broadcast to all who listens.
"The maximum number of peers you can set depends on whether or not you use encryption." - true but partially. If you delete peer you can have unlimited of them.
"Also there is some really odd stuff going on with the ESP radios when using any channel other than channel 1" - completely not true - my network works on all channels but 1.
"You also need to set the channel when adding a peer," - not true - you can send on all channels one by one and hope someone will finally receive
not nice < niais < bravos := not-skilled but you are; can’t write adverb/adjective nor chain a nonprospective verb; fast → swift; will → shall; try _what?_ and use
Thanks for the suggestions. I have a network of 3 esp-now devices, where the 3 devices are gathering data and one of them pushes this data to a web server. For that what I do is set this ESP device to WIFI_AP_STA mode. The issue is that this will set this device in the same channel as the wifi network, so what I do with the other non-wifi ESP devices is to search the channel of the wifi ssid.
This solution was sort of working for some months, but in the last weeks I've been getting disconnections way more often. Since I need reliability on my system, I am looking for solutions but can't think of much. Do you have an idea on how to approach this issue?
When I was in college (circa 1985), I built a one-way digital audio link (in this case using an LED and a photodiode) that employed a delta modulator (Analog Devices chip
?). The key benefit of the delta modulator is that the bit rate is low as data is only sent when the audio waveform is changing. I was quite impressed by the fidelity I achieved well below the Nyquist theorem.
Impressive for the era.
Congratulations! Did you transmit data by light with IR LEDs?
@@gigabytegb - That's correct. I remember that I had to put a shield (tube) on the IR phototransistor because the front end was being swamped out (poor design on my part) from stray IR.
ESPnow is super cool, and there is also a long range mode. That in combination with the wifi on the lowest bitrate and some external antennes(but just simple 2dbi ones) i got 2,5km of bi directional communication. But i have to say it was mounted on a rc plane
Thanks for the feedback. Sounds promising :-)
Wow that's serious range!
do u have github repos for your projects?
@@Sohailkhan-zw1gl i dont store my projects in git. But if you look for espnow long range mode then you find the examples. But external antennes do the trick. And remember a had one side on a plane in the air so these kind of range you dont get that in the ground
@@greatscottlab I would really like a long range test from you :)
WiFi interference of ESP32 is a big problem. I faced it for the first time when I was designing a super stable and noise-free power supply for some specific project of our lab. The power supply output voltage was being controlled by the ESP. The WiFi interference was adding noise to the output voltage. Later we switched to STM32.
Good video. But your comparison may generate some confusion. 433Mhz it's a frequency but Lora it's a modulation protocol. 433Mzh have been used for quite long time before Lora but here in EU Lora transmissions use same frequency plus 868Mhz. Living in Germany you must know that this country have a strong Meshcom community. For those who don't know Meshcom it's a Meshstatic like project that use only 433Mhz frequency.
3:14 That isn't true, you can make a private network between modules without a router and when you do this with websockets it blazingly fast. Range can also be pretty good.
Hey do you have any link or info about this? I want to learn more about it. Thanks
So is this basically unbranded WiFi Direct™?
yes
Still WiFi but No hub or gateway required.
Only this is very slow wifi or not?@@Zeaiclies
best feature for espnow is "transfering data quickly" from my experience. And i did not know the lora module is in the low speed category as you showed in the video, thanks for it.
Comments are very informative! Thank you all, maker community!
I recall looking into LoRa for one project. It's in the kilobits range, if I recall correctly. On the other hand, it seems the range is measured in miles.
@@dacomputernerd4096 LoRa latency is very high too - compared with esp-now.
Just a side note that if you have multiple ESP32 boards communicating with each other via ESP-NOW especially for fast data transfer applications (like RC Car), there might be noticeable lags in the data transfer (but no data loss I think) until you leave only one ESP32 pair communicating. This is, from what I have experienced, due to too much activity in the ESP-NOW channel you set for each ESP32 pair.
There are a few lines of code mentioned in the Espressif docs that allow you to change the channel, just like WiFi, but it was not obvious (at least for me) :(
setting channel is one command: esp_wifi_set_channel(channel, WIFI_SECOND_CHAN_NONE);
In Broadcast mode (one to many) there is no acknowledge even tho the ack callback function reports a successful transmission.
For exclusive pairs - point to point - the ack reports successful reception so decent flow control is possible in this scenario.
Of course, a manual broadcast with full acknowledgement can be achieved by iterating thru a list of peers sequentially. This should be fast enough to be practical.
Don’t you need an antialiasing filter between the mic amp and the ADC ? I think it would be wise to filter out everything above 3 or 4 KHz (depending on the sampling frequency).
Correct, also a post DAC filter is required however he's really just showing a proof of concept not designing a useable project.
I love the WW1 sound of the esp transmission.
Video killed the radio star!
Fallout vibes
THANK YOU! This video is exactly what I have been trying to research for my project. Alternatives to all the other wireless standards. I use ESPs from adafruit and never knew about ESP-Now. Your channel has informed me about soooo much! Thank you!
Glad I could help :-)
I have found out that if you use the ESP-32 Dev Modules that has external antenna connector you can greatly improve the range.
You also need filtering to filter anything above the Nyquist frequency: otherwise you get aliasing.
He just needs to LPF at the highest frequency voice band, 16kHz RC should be enough.
Nyquist is the ideal sa pling frequency, because beyond that rate starts causing follower issues. You can see this on MatLAB and in real-life
Did you try out the long range mode too? In my experience that makes a huge difference, the only downside is a smaller bandwidth
Actually only tried out the standard mode since that was already good enough for me.
I've found that a great application for ESPNOW is RC vehicles. It's pairless so no more waiting for connection, and communication is the most reliable it can be. The transmitter sends regardless of the state of the receiver. It's also fast enough to send data to it over 10 times per second, giving RC vehicles lightning-fast responsiveness. Moreover it has a long range which is again ideal for RC. And it also needs very little power so you dont have to worry about the wireless communication eating through your batteries
Great video (as always) I love ESP-NOW as i dont like having my stuff connected to the internet for obvious reasons and you are only scratching the surface of what ESP-NOW can do, looking forward to the projects you have lined up for it
Thanks for the feedback :-)
I think the ESP wireless protocol would be an excellent tool for a self developed home security network where you don't want your individual cameras or audio recorders available over the wifi network. Many people can exploit wifi insecurity with a simple youtube video search, most of them would not even know to look for ESP wireless signals let alone how to exploit them. If you are able to encrypt the data this is another layer in defeating the "casual" hacker.
I think ESP-NOW offers you an encryption configuration for transmissions one or bidirectional, you can look on the docs
Also I have to say, I have been watching your videos for years now and its amazing to finally put them to good use now that I am in university and studying mechatronics. It definitely gave me a head start so I was able to properly understand and play with all the course content on electrical engineering.
What about Matter ? How does it performs ?
Also embedded using IP and standardized across vendors ?
Very cool. There's so much happening in the microcontroller and wireless worlds these it's impossible to keep up, so I'm glad to see this. WiFi without a router - Thank You ESP!
Can any security protocols implemented? Seems very susceptible to MAC spoofing, etc. depending on use case...impressive for its size though!
one of the best things about ESP Now is its really low latency. It does not guarantee delivery, like udp, but to send then receive a packet takes under 1 ms . I have measured this myself.
Thank you for the interesting video! It's interesting, that on 5:19 you soldered a push button, while your dev board already have one (connected to GPIO 0). As well as a LED =)
Is ESP-now still working well in an environment with lots of 2.4GHz noise ? (Like in an urban setting with lots of 2.4GHz Wi-Fi routers or with lots of microwaves)
3:00 WiFi is a bit slower but not that much, the response time is pretty much instantaneous, notice that the request isn't being sent as soon as you release the button (look at the reload wheel on the top right)
I've got a dozen ESP32's around the house as various temperature/weather/climate sensors. But they all connect to wifi and then talk to a Raspberry Pi server to upload their data.
I guess if I wanted to use this, I'd need another ESP32 acting as a host/gateway? And all the other ESP32's would send their data to it over ESP-NOW, and then the gateway would upload to the Raspberry Pi.
Sounds plausible like this. But not sure how easy to pull off.
@@greatscottlab I'd think of connecting an ESP to the RPI on data level. The RPI has sufficient pins for that. You could use 19k2 speed, how much data do you need to transfer? If more, then you could go over 100k bits/second. Main thing of ESP-NOW is fast connection speed.
All said? No, the ESP is a development board. We use it as a end product already. So far my 2 cents.
I've done something like this. I connected the ESP to one of the usb ports of the Pi and then simply used the serial connection to communicate back and forth. The ESP simply acted as a relay between the Pi and all the other ESPs. The Pi had enough juice to also power the ESP through the usb port.
@@josratsma8438 Thats really cool, thanks for telling! Real confidence booster knowing someone else got it to work. I am debating the benefits though. It would require a lot of extra programming and some hardware, just to have a bit of extra range, which I don't need, less power consumption, which isnt an issue, and less wifi noise, which again isnt an issue. Instead I have my battery powered devices connect only once every few hours and upload the past few hours of data all in one burst, that way the wifi radio is only used for a few seconds every few hours anyway, so ESP-NOW wouldnt really make much of a difference for battery life there either.
Your first oscilroscope display shows massive clipping of the audio input. You might reduce the gain of your electret mike preamp for better results.
For audio and video have you tried esp-eye? Maybe with some integration to hass or frigate?
No yet. I can put it on my to do list :-)
How does this differ from zigbee? I wish the zigbee protocol would be more accessible to the hobbyist user with a soldering iron. :)
I will show off zigbee in a future video ;-) It is on my to do list.
I just want to tell you that your videos inspire me to do better. i am a amateur electronics hobbyist and love the projects you do. i wish i knew half as much as you do when it comes to electronics and such. I wish you would consider making an online course for teaching what you know for people who would like to learn this type of information. thanks for yet another great video! keep up the good work.
Small detail is that it's not true that with with Wi-Fi you can not directly connect two end devices without a router. 802.11 also defines ad-hoc communications, It's called IBSS mode
I am interested to know the problems you have with LoRA seeing as its capable of around 27kbps that should be more than enough for basic audio communication and significantly longer range.
I use ESPNOW for my sensor network. I quite like it. However, when used indoors between 3 brick walls the range is unreliable.
I havent tried it outdoors transmitting and receiving into the house but Id guess an external ipex-like connected or SMA connected external stub antenna based ESP32 would offer better gain over range.
Im sceptical of thr cut and splice approach Ive seem done in some YT presentations. Surely there needs to be some form of matching network in the front end of the radio section to properly deliver RF without mismatching and subsequent reflections on the transmission line.
I recently used ESP8266 with wifi for a project to switch alot of relais and with multiple esp‘s. Yes you need a gateway and a server but the communication was super fast and also secure with certificates.
I am surprised that ELEKTOR is still alive. I started this magazine in the 70s and made many projects over a period of 15 years. Later, I purchased only the double issue in August.
Of course we are! :)
@@ElektorTV $20/mo for a magazine seems expensive!
I am DEFINITELY going to look into ESP-NOW as a (potential) replacement for RF24 modules. The RF24 modules are great so far, but could do with getting rid of the extra wiring.
I made a little 150g combat robot using an ESP32-C3-MINI-1, and, can confirm, ESP-NOW is indeed awesome. I put the robot in my house, then walked outside, past my gate, and it still worked (probably 30m or so). Past that it stopped receiving signals though, probably because my transmitter ESP32 was very small and had a chip antenna which was probably low gain (not to mention the antenna had no ground clearance or anything. Thanks for your awesome videos GreatScott!
Sounds like it's better for control data than sending audio. Have you checked out MIDI over Bluetooth?
You’ve got me curious about how far the walkie talkie works when you add ESP32s along the path. Is it distance times the number of ESPs? Does signal drop off after a certain amount? What if there are multiple ESPs at each “leg of the relay”?
why are you not using breadboards instead of soldering directly to those pins? i have accidently damaged mine b4, hope that helps
I think the only downside is that you need 2 devices then to communicate? for example my Esp32 wifi garage opener i can control with my phone and out of wifi also with port forwarding in my router
Why did you relate AD/DA to speed? Isn't that linked to the sampling rate that is likely determined by microcontroller clock speed and cycle load?
Would an external 16-Bit I2C DAC help with the quality? Do you know how many packets per second you can send? I mean 1MBps is like 10 times as fast as ISDN which was 64kbit/s. With 1Mbps you don't even need to bother much with audio compression.
I think there is room to improve the 8 bit DAC more with better filtering. Was not clear from the video if the audio amplifiers were tuned to the correct roll-off frequency to get under the Nyquist limit ([half] the sample rate).
Also not clear if the the audio was buffered in any way. If it was not buffered: there would be noise on every packet as the data stream drops out between packets.
The slow response time problem for wifi is likely due to Nagle bandwidth shaping. You can get insanely rapid responses over a tcp connection if you disable Nagel (which you can do when you establish the tcp connection). Always something to try depending on how much of a delay you notice.
I use those cheap $2 rf modules, and I get upto 2km if in sight, did you check the power setting? Orientation should be upright, and the antenna maybe needs length tuning.
Range on your router can be extended and directed with proper yaggi antennas or wave guides made out of a pringles can.
Its astounding how capable esp32 is...theres so much just built in!
Coming from arduino nano to esp32 is a lot of fun :)
Try hc12 433. Eazy to use. Based on only 4 pins to module. Range to 1 km outside
Could you also disable the WiFi on the ESP32 somehow (to remove even more interference)? A quick search implies that there are a couple of options for this approach (but it's beyond me at this stage).
I can see your custom made designs do not have the esp32 in the corner so i thought you might not be aware of that using a properly placed footprint, following the espressif antenna placement recommendations for active esp32 modules (tldr: put the antena in a corner without pcb behind) will give you MUCH LONGER range.
The devkits you are using as examples in this video have pcb (probably with ground) routed under the antenna and they have terrible wireless performance, you can easily get >15m for wifi out of a good design. You can also see the change in antenna placement in newer espressif devkits like the S3 ones, they all have the antenna outside the pcb. it can even work quite well from inside a closed metal enclosure.
Thnx for the video, i didn't know about ESP-NOW, i will be using it from now on!
My last video I watch from Great Scott was 7 years ago. Now I'm a certified CS.
Thank you for the inspiration
You mean your first ?
@@raphanunu6912
The English is pretty clear...
@@MiebakaIwarri Sorry, I didn't understand.
For my excuse I'm not English...
I miss the old intro and outro :)
Sorry
@@greatscottlab make sure to like... scher and subskreib... staaaaay creative aaaaaaaaaand iiiiiiiiiiii wiiiiiillllllll seeeeeeeeee youuuuuuuuuuuu nexxxxxxt tiiiiiiiiime :D
If nothing else, it adds to your viewers viewing time with zero extra work from you!
@@imaginitivity7853 nah its all good, i watch his cool videos either way, just have a little tear in my eyes during intro and outro hehe
That means you will remember it forever.
Aww 🥰😍
What would you use to reach the roof a few floors above in a concrete building? I want to add a remote controlled thermostat to my solar water heater.
Wait, where did GPS data come from in 7:25?
Along the.lines of the 2.4gHz frequency, use has greatly expanded to RC ( Radio Control ) transmitters.
For the Bluetooth you also can use a Long range mode which increase distance significantly.
Can you please do a new code for the subscription to the magazine? I just saw your video and missed the subscription. I would’ve taken it up.
Is the a version of esp now for arduino maybe arduino now?
Seems like the delay in the pushbutton example is around 200ms, which is quite a lot for applications like remote control.
The background noises in the video were extremely distracting. Info is also missing: eg can ESP-NOW be used while also connected to a router (the internet) or is it one or the other?
what sort of range do you think you could achieve with an optimized antenna?
Nice video, mesh networking algorithm implementation could be tested for the same form factor and specs.
espNowFloodingMeshLiblary v2 from Leodesigner, for mesh network, i used this for my smarthome
How about just use a 16-bit add/dac with it instead and sample it at 64kbit ? Does the esp have that much buffer space ?
and he did it again he connected the voice source without directly without any filters.
Could this in theory create a mesh network between all ESP devices? Like a zigbee replacement? Would be so helpful to chain my IOT devices instead of installing more APs
ESPnow reminds me of the ELRS (ExpressLRS) protocol for hobby rc controllers. Very efficient, long range, and also 2.4ghz.
How do you control led from phone,
As shown earlier in the video
Video of Zigbee network using a full set of ESP32 C6/H2 as a Coordinator,Router,End Device mode and as a HA bridge would be Super 👌
ESP-NOW rocks! but nobody talks about the power consumption, I'm doing a controller for my skateboard using two xiao-esp32c3 and when the transmitter radio is on the consumption goes to around 300ma, insane consumption!
What about ZigBee? ESP32 supports it too, along with Thread and Matter.
Why don't you use I2S microphone and amplifier it is also supported by ESP 32 ?
Sure. Also possible. Should definitely achieve better quality. For this video it was basically just a test/demo what ESP-NOW can do. For a proper project I would have tried using I2S.
The quality of your audio amp circuit also has a major effect on the results of the audio you get as well. The cartridge mic's quality, the amp circuit you used for the mic (the mic amp used here looks to be class A, so high fidelity, but also high power consumption), and the amp circuit used for the speaker (this looks to be some sort of IC amp, so I am not sure if this is creating any of the distortion or not).
I bring this up because the audio didn't sound like it was being distorted from the ADC and DAC all that badly. There was some packet loss in there, but it sounded more like an audio amp circuit wasn't all that great in the circuit, but I could be wrong. One of the biggest mistakes I have seen done is using op-amps for audio amplification. This should never be done since op-amps don't have even amplification across all frequencies, so they sill distort audio signals. They are for amplifying signals where the fidelity doesn't matter as much, like a simple hi-lo signal from a sensor that is really far away or it doesn't put out that much voltage between the two states.
Have you heard about Gain Bandwidth Product? Other parameters? 🤔
@@jankomuzykant1844 I have and if you are willing to sacrifice fidelity, an op amp does have a nice amount of gain, but with audio signals, you don't want to be adding in random distortions at random frequencies because it makes the audio sound bad, unless the intention is to distort the audio. Hence why I mentioned fidelity being very important for audio.
I do happen to have a degree in electronic communication and a copy of the most recent edition of Audiology handy, if we wanted to redesign the circuit to be better. I personally would have just used another class A amp circuit built with a BJT or a class D amp IC in a DIP to handle the output speaker since I know it would work and is a simple circuit.
Can you make a simple and cheap flight controller for drone using the STM32 board
The NRF24L01 works almost the same as ESP-NOW in BLE mode, which is what you used in this project. ESP32 BLE and NRF24L01 can communicate with each other. NRF24L01 was already in use before the BLE standard was certified in 2009, and products that used the BLE standard came much later. I still love the NRF24 series, it's cheap and easy to use.
In the video, he states he got a 110 meter range. Are you achieving that with an NRF24?
I'd really like to see examples of a esp32 talking to a nrf24l01 !! The esp wifi has a 20dbm power output compared to nrf24 1dbm, so if I can send via esp and recv via nrf24 that would work much better, the nrf can operate with almost zero power consumption.
All the NRF24L01 I ever bough were extremely unreliable and if I happen to get it to work, it had abysmal range (say 10 meters). Yes with all the tricks like extra 100 µF cap right across and direct solder connections bla bla bla. Complete trash. Got a whole bag of them, since I tough maybe I have counterfeit ones and bought more from different vendors.
@@leocurious9919 there are a lot of fakes out there, hope you didn't bought it from AliExpress
Great video as usual. Can you consider making a followup with a version of ESP32 with external antenna connection ?
While it may be overkill for this project, there are a couple of ideas that can be stolen from the VoIP world to address some of the issues.
A codec can be used to compress the voice in real time. Some are very simple, some not so. Even some high quality VoIP systems work with data rates less than what is available here and with only 8 bit samples.
VoIP uses UDP for transmitting voice so is also susceptible to dropped packets. Packets are timestamped so missing packets can be identified and if a packet is dropped, the receiver simply replays the last packet which is more than likely almost identical to the missing packet. If packet loss is small, the impact is barely perceptible.
Like any packet oriented system, a little bit of packet buffering can smooth out slight delays in receiving new packets.
Hi can you please make a video to control a device using a single button like it's different modes of functions and also turning it On and off with the same button!
I can put it on my to do list.
I don't know... if I understood this was 10m. I think maybe 50-100m we can speak together without anything, and better, and I think an FM or AM analog device also better in 10m. But the 8bit in PCM I think, so the question that can we upload a software converter to opus/mp3/flac/AAC/AC3? Because 8 bit 40kHz PCM is 320kbps if I calculate is good. What maybe enough for fine quality sound.
Love the content, hate the soldering, that thing gave me nightmares...
Can you use it in place of Wifi for all of the devices that refuse to offer Bluetooth?
It’s like you redid 1930’s radio tech but with Wi-Fi and other frequencies, wicked cool
Have somebody figured out to build a bridge between ESP-Now and IP based wifi (on a single esp)? This is a challenge and every post on the webs don’t work (for me) even forcing esp-now to the same channel as used via WiFi. Espressif promises a bridge for years but now still no solution. So I build a bridge via two ESPs (connected over serial). But I don’t like this approach.
Practically how much range?
About 100m I would say.
If you use LR modulation mode and a decent antenna, I have observed 500m line of sight
hi great scott I recently brought a electronic kit and wanted to make a flip flop and do other things with the 555 timer so I was thinking if you could make a video on making flip flop and other fun circuits with 555 timer like potentially making a sine wave generator or any other waveforms with it
I can put it on my to do list.
Why are you not using FLRC or ELRS, Zigbee?? They are ultra long range communication system, I personally use ExpressLRS for 100km range for my drones
at 7:50- How can "Range" and "Works" have different results? Surely if something is in range, it should work? otherwise how do you know it's in range? Great video though- thank you
Hi Scott. Thanks for all these interesting videos !
I've got a question for you ... I've been looking for a Li-ion battery protection circuit (or 5v buck boost with low voltage protection) that cuts around 3.2~3.0V, and couldn't find one. They are all set to cut at 2.5V, which IMMO is way too low and harms batteries, reducing their life time. For example, my E-cig has such a protection that cuts at 3.2V, but no way to find such circuit on Ali... any thoughts / advise about this ? Thanks
I agree ESPnow is a good protocol for ESP-ESP communications but, unfortunately, most of the projects I do, I use the RF connection for connection to a PC or phone for UI or data collection.
How does it handles regular German walls? Better than Wi-Fi? I am assuming no because it is on the same frequency range. But as almost always, I could be wrong.
Hi Scott, have you analyzed how to make a WIFI Mesh using ESP32? I think that one would be a killer for most IOT needs. Also, having active/active gateway would remove all the failure points. Please ping me if you'd like to share some thoughts. Thanks!
i was just recently thinking about how how 20 years ago about how cheap but capable micro controllers changed so much. Now everything needs to also be wireless and have an app. Sure, I think it's overused sometimes but its also useful as well
Excellent Video! Thank you!