ESP32 Walkie-Talkie: DIY Audio Magic

Поделиться
HTML-код
  • Опубликовано: 25 дек 2024

Комментарии •

  • @atomic14
    @atomic14  3 года назад +5

    Interested in ESP32 Audio: ruclips.net/p/PL5vDt5AALlRfGVUv2x7riDMIOX34udtKD
    Looking for all my ESP32 projects: ruclips.net/p/PL5vDt5AALlRdN2KyL30l8j7kLCxhDUrNw

    • @sijojohnson
      @sijojohnson 2 года назад

      update this project to ESP32-LyraT-Mini hardware , its using esp32S3 chipset , esp32wroom B module.

    • @xplode1344
      @xplode1344 2 года назад +2

      Could you please convert your code for Arduino IDE

  • @photopicker
    @photopicker 3 года назад +1

    I appreciate your ESP32 project demonstrations and explanations here on YT. 20 years ago this type of prototype development required $$$ and a team. Today is available to anyone willing to spend the time.

  • @VinodPatel-uf1pi
    @VinodPatel-uf1pi 10 месяцев назад +2

    Thank you for the amazing work. I used this on ESP32-C3, had to change the GPIO pins and it worked like a charm.

    • @daninaustin
      @daninaustin 3 месяца назад

      would you share what you changed for the class? i have a few of these that i could use for this project!

  • @bryndelltorio201
    @bryndelltorio201 Месяц назад +2

    Awesome project!
    I took the hardware modified it a bit to build a public address system. This is only possible because of this project.
    Thank you for sharing your projects! Make some more. You're awesome!

  • @njh
    @njh 3 года назад +2

    Love this idea! Really cool!
    A common thing on Wifi is seeing packets repeated.
    Using RTP header on top of UDP could be a way of detecting out-of-order/missing/repeated packets.

    • @atomic14
      @atomic14  3 года назад +2

      That’s a great idea. I did play with the idea of adding a simple packet number to detect repeated/out of order packets. You could get quite fancy and reorder packets as they arrive - assuming you have a large enough receive buffer.

    • @njh
      @njh 3 года назад

      Started thinking about building one of these myself and had some more ideas:
      - simplest audio speech codec would be A-law (G.711) which gives 2:1 compression
      - use multicast to avoid spamming all devices on the network (although multicast can be a bit funny on Wifi)
      - you could have a channel selector (7-segment display?) that mapped to different multicast addresses
      - a door-bell type device that broadcasts a pre-recorded sound when a button is pressed
      - have a channel connected to a bridge to Alexa, so you can ask questions!
      - love the idea of a desktop Power over Ethernet powered base station (with gooseneck mic!)
      - implement Push to Talk SIP - might end up compatible with other types of devices
      - might even work in a web browser with WebRTC?

    • @atomic14
      @atomic14  3 года назад

      @@njh Sounds very interesting - definitely, some kind of audio companding/compression would be good to fit the audio into 8 bits more effectively. And some simple compression to reduce bandwidth would be really nice.
      Multicast should be done - I had some issues with it working on my desktop Mac - it seemed to work between the ESP32s, but my computer refused to see any packets. As you say, there are some funny things around WiFi and multicast that may mean it's not feasible.
      Love the idea of a channel selector. I think it would look really cool!
      Getting it to work with WebRTC would be very interesting.

    • @njh
      @njh 3 года назад

      @@atomic14 Are you doing setsockopt(... IP_ADD_MEMBERSHIP ...) to send an IGMP packet and tell the kernel to receive multicast packets? Some Switches/Routers/APs look for IGMP packets in order to filter out unwanted multicast.

    • @atomic14
      @atomic14  3 года назад

      @@njh I tried several different examples, one in python and one in C and couldn't get them to work. The code looked pretty much the same as the Arduino code which did work. It also looked like the Mac thought it was a member of the group. So it feels like it's something to do with the router not forwarding the packets on. It might be due to my mac having both an IPV6 and IPV4 address. But that doesn't seem to stop the broadcast packets. Needs a bit more investigation.

  • @Dazza_Doo
    @Dazza_Doo 2 года назад +1

    Impressive for a audio data packet - the sound quality is really good

  • @derrick_builds
    @derrick_builds 8 месяцев назад +1

    Who doesent like a cool little walkie-talkie project. Good work.

  • @xPsIXx
    @xPsIXx 3 года назад +2

    Fantastic. This could be awesome for me with a directional antenna. This brings an idea to mind, two esp's transmitting their GPS location so that each of the esp's points to the other esp.

    • @atomic14
      @atomic14  3 года назад +2

      That's an interesting idea - self aligning antenna.

    • @JasonWho
      @JasonWho 3 года назад +2

      I really like this one, could also work as a short range child location beacon

    • @atomic14
      @atomic14  3 года назад

      Always makes me think of the movement trackers from Aliens :)

  • @csongorvarga
    @csongorvarga 3 года назад +1

    This is a very cool project. I was thinking about building a simple intercom in the house and this just fits perfectly. Broadcast just makes it easy, I don't have to worry about much at all. I remember seeing lot of ESP32 development board for mic and speaker output, those could be readily available hardware for this project.

    • @atomic14
      @atomic14  3 года назад

      Yeah, there's a quite a few very nice boards. There's also quite a few with codec chips which would make compression possible.

  • @SteveWrightNZ
    @SteveWrightNZ 2 года назад +7

    Cool, ok, now we need a repeater pair of them running full duplex for the local hilltop...

  • @JasonWho
    @JasonWho 3 года назад +1

    Love that you implemented ESP-NOW! I’m very impatient for it to become more accessible and easier to use, added to ESP-Home too 🙏🏼. Ideas:
    - voice detection to automatically open the mic maybe using an audio level sensor
    - home intercom system would be cool using a 110/220->3.3V step down at/in a light switch and/or front door communication
    - my mind is wandering into how could this be used with an Alexa??
    - I mean… a toy or for real: an audio spying device
    - pest detection using a high sensitivity
    - okay, I’m probably going this far because of the ESP-NOW ability… great project!

    • @JasonWho
      @JasonWho 3 года назад +1

      A slave (ESP-NOW terminology) device that serves as a hub for ESP devices all over the house would be amazing. A lot less power needed for that comm method, zero need for a router/WiFi AP, potentially more secure, longer distances than RF.

    • @atomic14
      @atomic14  3 года назад +2

      @@JasonWho I had a few issues getting WiFi working at the same time as ESP-NOW - but I know it's definitely possible as other people have done it. Might be down to using the wrong channel as I know the channel has to match the WiFi channel for them to both work at the same time. ESP-MESH is another thing to look at - but I've been struggling to understand the documentation! I need to look more into the noise issues as well - the ESP32 doesn't seem to play very nicely with audio. There's a lot of noise going on!

  • @dl8cy
    @dl8cy 3 года назад +4

    awesome work - and a special thanx 2 u 4 sharing everything!

    • @atomic14
      @atomic14  3 года назад

      Thanks! It was a fun project - I was very pleased that it actually worked :)

  • @binitshah
    @binitshah 3 года назад +2

    This is super cool! Did I see Manim doing the latency calculations? Great work!

    • @atomic14
      @atomic14  3 года назад +1

      You did indeed :) Still learning how to use it so that animation was pretty much straight from the examples. But it’s really powerful.

  • @nickparr3153
    @nickparr3153 3 года назад +1

    Extremely ambitious, although 3W audio amplification is a bit extreme. Very good video, well documented and you have every reason to be proud.
    As I'm being trolled, I apologise for disabling notifications

  • @StormBurnX
    @StormBurnX 2 года назад

    I remember the ESP 8266 first releasing and being heralded as a 'wireless serial cable' essentially, so I picked up a pair to try and make a wireless audio cable. The built-in ADCs were so absolutely garbage that a quick 30 dollar project soon breached triple-digit prices and I realized why there wasn't anything on the market for lossless, latency-free short-range audio transmission that didn't already cost hundreds of dollars... with the ESP 32 series being significantly improved, I can't wait to see another generation or two from now and the possibilities with those :)

  • @ei23de
    @ei23de 3 года назад

    Great project! Very cool that you utilized ESP-NOW!

    • @atomic14
      @atomic14  3 года назад

      Thanks - I do need to do a proper range test to see how far you can actually get it to go - I've seen all sorts of claims and want to test them.

    • @ei23de
      @ei23de 3 года назад

      @@atomic14 It's highly dependent on antenna types. I never tested it on field, but in buildings (pcb antenna on R / external antenna on S) it's about the same as your normal wifi signal.

  • @Arunkumar18
    @Arunkumar18 3 года назад +2

    Excellent !
    What is the range when esp-now is used ?

  • @niels-olekuhl9919
    @niels-olekuhl9919 3 года назад +7

    Have you considered using an audio Codec / compression to achieve higher quality / smaller packet sizes? I think SBC is what bluetooth uses. Not sure how easy it would be to implement.

    • @atomic14
      @atomic14  3 года назад +3

      I did look at an old GSM codec and got it running on the ESP32 - but it was a little bit slow - it took about 15ms to process 20ms of audio which only left about 5ms to do anything else. I'm taking a look at SBC now though as it's a lot more modern and I'm wondering if it might be a bit more lightweight. It would make a big difference - especially with the ESP-NOW transport where we have very small packets.

  • @bloodyspirit058
    @bloodyspirit058 2 года назад

    Thank you for sharing! I was trying to find a way to connect my PC and Radio for some wireless FT8 and this seems like a great start. Look forward to checking out your other videos.

  • @RaminAssadollahi
    @RaminAssadollahi 3 года назад +1

    Love the explanations, great work! Enjoyed the video.

    • @atomic14
      @atomic14  3 года назад

      Thanks! It was good fun making it.

  • @redakouacem258
    @redakouacem258 2 года назад +1

    I have done it and it works great even without noise: the down sides 1. it deliver voice a little late. 2. it works only for few seconds and than no voice transmitted again, maybe i need to use powerfull power supply since i'm using the Tel charger only.

  • @AmanSinghal-ny3ik
    @AmanSinghal-ny3ik 6 месяцев назад +4

    In your test what worked the best in terms of range , and quality of audio data . UDP or ESP-NOW

  • @chall3ng3r
    @chall3ng3r 3 года назад +1

    Awesome project! Going to try soon.

    • @atomic14
      @atomic14  3 года назад +1

      Let me know how you get on - if you get any issues add an issue on GitHub and we can work through it.

    • @chall3ng3r
      @chall3ng3r 3 года назад

      @@atomic14 will sure do that.

  • @Realcryptotalk
    @Realcryptotalk 2 года назад +2

    what kind of range are you getting with esp now ?

  • @giannirusso9639
    @giannirusso9639 2 года назад +3

    is the code arduino ide friendly?

  • @UnexpectedMaker
    @UnexpectedMaker 3 года назад +2

    That really turned out great! Are you sleeping the ESP32 at all when on but not in use? I wonder how long ESP Now takes to wake, calibrate radios and begin transmission. Obviously if it's sleeping it cant received, but I know my kids would 100% forget to switch to off ;)

    • @sharpbends
      @sharpbends 3 года назад +1

      For sleep to be effective you'd probably want to turn off the speaker/amp as well, but it seems to be supplied via VBAT also on the PCB, rather than via the TinyPico ? ( A TinyPico S2 with 2nd LDO might help turning off the rest of the components during deep sleep :-) PS I hope you also include 2nd LDO + 16MB flash when you get to make TinyPico S3 - pretty please ;-)

    • @UnexpectedMaker
      @UnexpectedMaker 3 года назад +1

      @@sharpbends Ha! No 2nd LDO or 16MB of flash ever on a TnyPICO "footprint" board, sorry, no room. I'll have a ProS3 though that should make you happy :)

    • @sharpbends
      @sharpbends 3 года назад

      @@UnexpectedMaker Excellent, can't wait !

    • @atomic14
      @atomic14  3 года назад

      Thanks! At the moment it’s really not very power efficient. Both the microphone and the speaker are running continuously and I’m just not sending any packets unless the button is pushed. That is mostly just laziness on my part - I was having some issues with stopping and starting the I2S drivers and realised that debugging it was a bit of a rabbit hole. With ESP-Now startup should be pretty quick as there’s no need to connect to WIFi and get an IP-Address. With WIFi I’ve seen a few people speed this up by using static IP addresses. You could also spin up the audio sampling and buffer the data while everything else is waking up - definitely doable when you have PSRAM.

  • @LuizCarlos-td5vd
    @LuizCarlos-td5vd 3 года назад +2

    Great project! Do you think would be possible to add a camera in a way to build a wireless Video Doorbell?

    • @atomic14
      @atomic14  3 года назад +5

      Yes, it's on my list of things to do :)

  • @Josephmsy
    @Josephmsy 2 года назад +2

    How much did this project cost?

  • @sharpbends
    @sharpbends 3 года назад +1

    Great series glad you got it all working ok, I really enjoyed seeing how you overcame the Wifi noise issues etc. Many thanks for posting all the design files and code. Have you tried using more than 2 Walkie-Talkies at the same time as yet ?

    • @atomic14
      @atomic14  3 года назад

      Not yet - but in theory it should work without any problems as both the transports are using broadcast so don’t really care how many other clients there are listening.

  • @ayurash
    @ayurash 3 года назад +3

    Very intuitive explications. Hm , i think you can apply a discrete FFT for audio high gain for the audio? Thanks for sharing.

    • @atomic14
      @atomic14  3 года назад +1

      Thanks - yes, I think there's a lot of interesting DSP that could be applied to the audio signal. Need to do some more investigation of what's possible.

  • @juanpablotorres3522
    @juanpablotorres3522 2 года назад +2

    Amazing Project!! I was thinking how make a project with espnow...

  • @degiseptiagi
    @degiseptiagi 3 года назад +2

    Hello sir. Can u make demo or explaination for echo cancellation, or maybe about self-interference cancellation? I wanna learn more about full duplex system on esp device.

  • @Johannzz
    @Johannzz 3 года назад +7

    Nice Project! Whats the range of the walkie talkies, especially in esp-now mode?

    • @atomic14
      @atomic14  3 года назад +1

      That's a really good question - I've not tested it yet. I've seen all sorts of claims 220m - 480m! Not sure if I believe the 480m. I know that you can bump up the transmit power to get better range so could be interesting. I think a lot will depend on how open the space is and how well oriented you have the antennas with each other.

  • @andymouse
    @andymouse 3 года назад +2

    Fantastic project !...cheers.

  • @ekremhb
    @ekremhb 3 года назад +3

    great project

  • @felixe9796
    @felixe9796 Год назад +2

    Is it possible to use ESP8266 instead? Nice Project!

  • @sof_gio_19
    @sof_gio_19 Год назад +2

    When attempting to run the code on the ESP32 board, the audio message seems to be broadcasting the data using UDP (confirmed using Wireshark) however, the audio is playing out of the board that sent the broadcast...ie using the mic from board 1, the audio captured is played out of the speaker from board 1, whereas we want the audio captured from the mic from board to be played out of the speaker on board 2...do you have any suggestions to fix this issue?

  • @Curt-0001
    @Curt-0001 8 месяцев назад

    Great. I'm waiting on some ESPs for some wireless speakers. This should help

  • @digitalartee
    @digitalartee 3 года назад +1

    Great info! :) More please. Thanks.

    • @atomic14
      @atomic14  3 года назад

      Thanks! I've got some more in the pipeline :)

  • @cadeheinberg3047
    @cadeheinberg3047 3 месяца назад +1

    How hard would this be to get working over different wifi networks? Im assuming we could use WebRTC.

  • @JamesMyatt1
    @JamesMyatt1 3 года назад

    This is a great project. I think I have enough hardware lying around for 1 1/2 walkie talkies!
    It would be great to use this hardware to build a mumble client so that can interoperate with Talkie Pi or any other mumble client. Looks like mumble uses the opus codec for low latency low bitrate VOIP so maybe that's a good option here too.

    • @atomic14
      @atomic14  3 года назад +1

      Someone did find a port of opus to esp32 - github.com/XasWorks/esp-libopus definitely worth having a look at.

  • @a.sanusinazareth9213
    @a.sanusinazareth9213 Год назад +1

    how far can it go? i'm talking about max stable range. thank you

  • @tablatronix
    @tablatronix 3 года назад +1

    Love this, well done with all the testing and research, now I want to make one/2 ? lol

    • @atomic14
      @atomic14  3 года назад +2

      If you're feeling adventurous then you can build one and use your desktop/laptop as the client (if you go the UDP route). Or even knock up a mobile app if you're feeling really adventurous!

  • @sathsaranih.w.n.6911
    @sathsaranih.w.n.6911 2 года назад +2

    How many units can be connected at once from ESP-NOW protocol

    • @veitklub
      @veitklub 2 года назад

      should be 20 afaik

    • @veitklub
      @veitklub 2 года назад +1

      wait - 20 is only a limit for the peer-adresses. if you broadcast there shouldn't be a limit.

  • @wjn777
    @wjn777 3 года назад +1

    Great job, thanks for sharing. Would LoRa point to point be an option as transport? Range would be good

    • @atomic14
      @atomic14  3 года назад +1

      I'm not sure I think you'd definitely need to compress the audio very heavily to fit it in the available bandwidth. I'd need to do some research on what is possible.

  • @Mr8perezm
    @Mr8perezm 3 года назад +1

    I was wondering where did you get the double width breadboard in your video at 2 mins 10 secs? I bought two breadboards, put them together and it was too wide for my ESP32. Great inspirational video. Thanks.

    • @atomic14
      @atomic14  3 года назад +2

      Some breadboards let you remove the power strips, they just pop off and then you can join the breadboards together.

  • @nerjuz
    @nerjuz 3 года назад +1

    Waiting for v2 ;)

  • @objection_your_honor
    @objection_your_honor 3 года назад +1

    Is it possible to encrypt with onboard encryption hardware?

    • @atomic14
      @atomic14  3 года назад +1

      ESP-NOW can definitely be encrypted out of the box. For the UDP option, you could encrypt each packet. I found some example code here: gist.github.com/cnlohr/96128ef4126bcc878b1b5a7586c624ef

  • @LiBlock
    @LiBlock Год назад +1

    I don't quite know which file should I upload to the ESP32. Is it the Application.cpp/h , config.cpp/h or main.cpp? Please help. Thanks!

  • @Madsynth1987
    @Madsynth1987 10 месяцев назад

    I love this project! I'd like to build a set with my son. What will we need other than the TinyPico, Microphone, Amp, and speakers? We're fairly new to this sort of thing (don't even have a soldering iron yet).

  • @aaaaaaaaaaaaaa7948
    @aaaaaaaaaaaaaa7948 3 года назад +1

    Neat! Do you think it could be modified to support multiple 'channels'?

    • @atomic14
      @atomic14  3 года назад +1

      Definitely - you could add a small header to the packets to indicate the "channel number". Or with the UDP version you could use different ports for each channel.

  • @tuckjam235
    @tuckjam235 3 года назад +1

    I was about to order the PCB but wanted to confirm that the linked PCB is your new design with headers for additional GPIO.

    • @atomic14
      @atomic14  3 года назад +3

      LEt me get that added now!

    • @tuckjam235
      @tuckjam235 3 года назад +2

      @@atomic14 thank you!

    • @atomic14
      @atomic14  3 года назад +2

      @@tuckjam235 Should be updated now

    • @tuckjam235
      @tuckjam235 3 года назад +1

      @@atomic14 thanks again! Can’t wait for them to arrive!

    • @tuckjam235
      @tuckjam235 3 года назад

      @@atomic14 I think there is something wrong with the gerber files pcbway has for your walkie talkie boards (linked in this video description). I just received my order and they sent me 100 of your ICS43434v0.1 boards, not the walkie talkie boards…. It’s strange because when I look at the order the gerber files and the thumbnails on the pcbway site are for the walkie talkie boards.

  • @garciaveejayd.r422
    @garciaveejayd.r422 Год назад

    I'm wondering if the walkie talkie can support multiple people talking at the same time?

  • @spleenware
    @spleenware 3 года назад +1

    Nice project! What is the lowest sampling Hz where the voice is still intelligible? Does 8000 work, for instance?

    • @atomic14
      @atomic14  3 года назад +2

      Yes, you can get away with 8KHz - that will give you low-quality speech. You can go all the way down to 4KHz sampling rate and still be understandable - but it won't sound very nice.

    • @johnmayorga7082
      @johnmayorga7082 3 года назад +1

      I think old phone tech was with 8k sampling at 8 bits, but I might be wrong. Whatever sampling rate you use, the max frequency you'll be able to digitize will be half of the sample rate. See: en.wikipedia.org/wiki/Nyquist%E2%80%93Shannon_sampling_theorem

  • @inventindiadev8926
    @inventindiadev8926 2 года назад +1

    Hi, Does the transmit button needed ?? Can we do this communication bidirectional ??

    • @kantpredict
      @kantpredict Год назад

      Feedback. They'd be constantly picking up the audio being sent from the other radio and retransmitting it.

  • @Anyone.c
    @Anyone.c 3 года назад +1

    What are the ratings of capacitor and inductor?

    • @atomic14
      @atomic14  3 года назад +2

      For the power supply smoothing, I used a 10uF and a 10mH inductor. I didn't apply any science to the selection of these values, they are just the largest that I have available to hand.

    • @Anyone.c
      @Anyone.c 3 года назад +1

      Thankyou so much for instant replies!

  • @felix41382
    @felix41382 3 года назад

    Great project and nice job!

    • @atomic14
      @atomic14  3 года назад

      Thanks! I had a lot of fun building it.

  • @kurka1186
    @kurka1186 8 месяцев назад

    What maximum range did you get wh3n t3sting?

  • @TheElectronicEngineer
    @TheElectronicEngineer 3 года назад +1

    You published a lot about ESP32 and I2S, just wondering, did you ever find a way to set the attenuation for the adc ( internal) when using i2S. Can't find that function at all..well at least not when using I2s

    • @atomic14
      @atomic14  3 года назад

      Looks like it is possible - but involves some poking around with hardware registers - github.com/espressif/esp-idf/issues/5334#issuecomment-633057910

  • @hygyke
    @hygyke Год назад

    I'm wondering is the new esp32 is good enough to create a wireless microphone trough bt?

  • @xplode1344
    @xplode1344 2 года назад +3

    Could you please convert your code for Arduino IDE

  • @ricardolopez8959
    @ricardolopez8959 2 года назад +1

    hello i really want to be able to make this projector but never pregame an esp32. Could you give me more information on how to put the code you uploaded?

    • @JonathanDeWitt1988
      @JonathanDeWitt1988 Год назад

      ruclips.net/video/xPlN_Tk3VLQ/видео.html
      That is a great beginner's guide to how to program an ESP32. I'm a fan of the ESP32 Node MCU.

  • @viktorhugo8252
    @viktorhugo8252 7 месяцев назад

    All ESP-Boards have two DACs, why you don’t use this for Output the audio signal?

  • @pepethefrog7193
    @pepethefrog7193 2 года назад +1

    Try using a vocoder. The melpe 1200 will compress/decompress 8khz 16bit samples into a 1200bps stream. Each 540 samples of audio generate 11 bytes of data. You can find melpe 1200 source on git.
    I am testing compression with I2S audio and SD card at the moment, struggeling with audio levels. What C ide/compiler do you use on the PC?
    The melpe 2400 codec would fit way better, 180 samples into 8 bytes, but i cant find the source.
    Note the older melp2400 from 1996 is not arduino compilable, but the melpe1200 from 2001 is.

  • @heinq1955
    @heinq1955 Год назад

    Hello, can you pls give the code for the UDP server?

  • @taloot123
    @taloot123 3 года назад +1

    i love it,, what if i use lora u think it will work?

    • @Kawka1122
      @Kawka1122 7 месяцев назад

      To slow, but with very efficient voice compression it is possible.

  • @GadgetAddict
    @GadgetAddict 3 года назад +1

    I was planning to do this myself. But you've literally done it exactly the same way as I planned.
    No point reinventing the wheel. So I'll take a good look through your code.
    What distance have you managed while using ESP-NOW outdoors without obstructions?

    • @atomic14
      @atomic14  3 года назад +1

      That's the next project - I'm going to do a good range test of ESP-NOW

    • @GadgetAddict
      @GadgetAddict 3 года назад

      @@atomic14 great. I'll wait for that. Thank you!

  • @TechInventorAman
    @TechInventorAman 3 месяца назад +1

    Questions , this would work on anything right ? Esp32 c3 or a esp32 pico d4 ?

    • @ABID5
      @ABID5 3 месяца назад

      Probably

    • @bryndelltorio201
      @bryndelltorio201 Месяц назад

      Yes, I use Nodemcu-32S to implement this project and it works fine.

  • @juangonzales-kn1fw
    @juangonzales-kn1fw Год назад

    And without a screen, how do you know in which broadcast you emit and/or receive?

  • @electrovoltmce
    @electrovoltmce 10 месяцев назад

    t is possible to turn an ESP32 C6 into a WIFI DAC Adio - as a reference to play music from RUclips and with the help of C6 to connect it to an amplifier.

  • @nichiforstefan99
    @nichiforstefan99 Год назад

    Hello ! If i use Nodemcu devkit v1 what should I change in the codes? Thanks!!!

  • @mattikro
    @mattikro 2 года назад

    I was looking to build something similar but I want the audio to be received by the browser of a phone, I was wondering if this is something that you have working?

  • @Jim_One-wl4ke
    @Jim_One-wl4ke 9 месяцев назад

    Thanks for sharing ❤

  • @TH-wr1dv
    @TH-wr1dv 3 года назад +1

    about compression. I look that someone was already do speex codec for esp32. Maybe it is good starting point.

    • @atomic14
      @atomic14  3 года назад

      That looks very interesting! Should be pretty easy to integrate into the software.

    • @TH-wr1dv
      @TH-wr1dv 3 года назад

      @@atomic14 yup and speex is probably best codec to that use. It is just absurd how well it compress speech. There is some comparasion www.speex.org/comparison/ I used it at one project where we had store millions phone call records. We got about 10 better compression than mp3 with same audio quality. with 4kbps you will probably get what that speaker can support. At least 6kbps is more than enough.

    • @atomic14
      @atomic14  3 года назад

      @@TH-wr1dv Nice! This will be a great update to the project - I'll do a video about integrating it in (assuming I can get it to work! I may be in touch if I get stuck...)

    • @TH-wr1dv
      @TH-wr1dv 3 года назад

      ​@@atomic14 Great. This project interest to me because I did want do esp32 walkie talkie at some point but as usual I did not had enough time (inspiration) to move from idea to execution. So this project at least fill my "is it possible" desire :D btw why you end up to use i2c mic and speaker instead of internal ADC and DAC? One thing what I think was also that is it possible to save battery by putting radio to 100-200ms sleep and then keep it wake assumed frame lenght time and then put it back to sleep if no frames received. So if there is no trasmission then it sleep most of time and only do fast wake up to listen is there someone transmitting. And only if someone will transmit it will keep listening continously. That can cause some small delay to open receive channel but most probably its not meaningfull. At least if at sender side there is 100ms buffer and it will flood small "heads up" packest beginging of transmission while filling transmit buffer. Then no words will go lost and receiver is guaranteed to be wake when real transmission start. Most probably that will prevent use of udp because I dont know will ap assoc stand over sleep. But at least esp-now probably works with that kind solution.

    • @atomic14
      @atomic14  3 года назад

      @@TH-wr1dv I prefer I2S mics to the built-in ADC as the built-in ADC is pretty noisy and I've found analogue microphones to be very susceptible to power supply noise. I've normally found I2S microphones to be much better at rejecting power supply noise but this time there was still noise coming through. The ESP32 ADC is not that great so I've tended to stick to I2S microphones. I quite like the fact that the audio is converted to digital very early on with the I2S mics as I'm not an analogue engineer. On the output side of things the DAC is ok, it's a bit noisy and not very linear, but does the job, and probably for this use case would be pretty reasonable. When I was testing I was actually using the DAC to drive headphones directly to avoid feedback problems. You would still need an amplifier break-out board to drive a speaker and once you need an extra board you might as well use one that takes I2S as an input - once again staying digital for as long as possible.

  • @shamalchathuranga2079
    @shamalchathuranga2079 2 года назад

    Sir please guide me can i use "ESP 32-30pin" module or "ESP 32 -WRROOM" -32 for this walkie talkie

  • @weirdsciencetv4999
    @weirdsciencetv4999 Год назад +4

    Do this with LORA. With a good codec you could probably get legible voice over 50 kbps

    • @theagentsmith
      @theagentsmith Год назад +1

      AFAIK LoRa can barely send text messages, let alone digital audio. Not only for the super low bandwidth, but mostly for the 1% duty cycle. You may say "Hello" then wait 15 mins for another message...

    • @weirdsciencetv4999
      @weirdsciencetv4999 Год назад +1

      @@theagentsmithThere is a 50 kbps mode. Also the chirped mode goes up to 10 kbps.

  • @wimlenthevan5908
    @wimlenthevan5908 Год назад

    Wouw Great! Would it also work with the esp8266 boards? What do you think?

  • @saysaki
    @saysaki 2 года назад

    Hi Chris,
    l loved your projects on Arduino, on the walkie talkie project do we have any latency,
    a) if we use the intranet will there be any latency

  • @digitalartee
    @digitalartee 3 года назад +1

    Hi, have you tried it in very long distance? I have two ESP 8266 and using ESP now. I put the master statically inside my house then I tried walking outside carrying the slave esp8266 + laptop while looking at my serial monitor . When I reached 50meters it becomes unstable. Do you have any suggestion on how to add to the signal strength? An antenna? Please advise. Thanks.

    • @atomic14
      @atomic14  3 года назад +1

      I've not investigated it yet, but I'm planning on doing so soon. It looks like you can increase the transmit power which might help - github.com/espressif/esp-idf/issues/1414 I suspect that having the master inside the house will limit the range dramatically. All the experiments I have seen have been conducted outside with a direct line of sight.

  • @RaspiAudio
    @RaspiAudio 3 года назад

    Cool project thanks for sharing! Is there a reason why you have used 2 separate I2S channels for the MIC and the speaker? it makes more wires uses more pins

    • @atomic14
      @atomic14  3 года назад

      I must admit that I had not actually considered sharing the same I2S peripheral for both input and output at the same time, but this could make a lot of sense. The code I used for the audio output was my sample code for outputting WAV files which supports stereo so my mental model was that it wouldn't work. But of course in this case it is just mono on both the input and output so that should be fine. I think I need to do some investigating - I've not tried doing both input and output on the same I2S channel before. Do you know if there are any limitations in doing it - can you use different formats on the input and output side or do they need to match? I'm thinking about how PDM microphones would work with a PCM speaker. I guess if you are only either playing or recording this doesn’t really matter. Very interesting! BTW - your Bluetooth speaker looks great!

  • @GoatZilla
    @GoatZilla 3 года назад +1

    Could you have also used bluetooth for the speaker/microphone? Kind of... would make the project simpler.

    • @atomic14
      @atomic14  3 года назад +1

      Bluetooth microphones are another can of worms :) ruclips.net/video/0jR-QNTfydA/видео.html

    • @GoatZilla
      @GoatZilla 3 года назад

      @@atomic14 It kind of seems like this project is a little bit different. For this one you're turning the ESP32 into the Audio Gateway. You're not trying to pretend to be any device; best case you're just shuffling packets between the ESP32 sources and sinks. The devices themselves handle compression for you, hopefully.

  • @SA-oj3bo
    @SA-oj3bo 2 года назад

    Hi, I would like to use I2C MIC to capture the sound and forward it to the I2S DAC MAX98357A, I can not find any example how to do that. Can you help? Thx.

  • @brayamquispeapaza5961
    @brayamquispeapaza5961 Год назад

    Hola buenas quisiera preguntar si se puede configurar a los que puertos udp tengo que enviar según que botón presione por ejemplo sw 1 al esp1 y sw2 al esp2 y en que parte estaría esa configuración

  • @edbagacina6373
    @edbagacina6373 Год назад

    hi sir can i use lora module for this project

    • @martinb.770
      @martinb.770 Год назад

      Lora protocol forbids continuous sending of Data= Limited to sporadic small datagrams of less than 1% of the time.

  • @hstrinzel
    @hstrinzel Год назад

    Would it make sense to break out some sort of ANTENNA so that it reaches further, or that would make no difference? Overall I think this is the BEST ESP32 walkie-talkie I have seen on RUclips. THANK YOU! Great video, great project!

    • @atomic14
      @atomic14  Год назад +2

      Thanks! Yes, I think an external antenna would make a big difference.

  • @wayabryan4208
    @wayabryan4208 Год назад

    Good day @atomic14. The UDP broadcast is not working when i compile the code on my VS code. Even after commenting on that line of the code, it is still not working. It is as though it is been overwhelmed by the ESP-NOW protocol. Please i need your help.

  • @peterlandin457
    @peterlandin457 2 года назад

    Hi. Great project! Is there a way to build a bluetooth monophone with ESP32? A monophone to connect to like a cell phone using Zello, group talk, kodiak etc, a button for transmitting and a mic and speaker? maby a function button as well?

  • @selahattinbabadag2804
    @selahattinbabadag2804 3 года назад

    @atomic14 dear sir , the connection part to button is a little flu , can you please explain connections to talk button ? thanks

  • @SA-oj3bo
    @SA-oj3bo 2 года назад

    Do you have maybe a video where you stream I2S microphone to a server by TCP? Thanks.

    • @sijojohnson
      @sijojohnson 2 года назад +1

      go for ESP32-LyraT-Mini hardware

  • @narendrashiva9360
    @narendrashiva9360 2 года назад

    You're doing great sir! Your videos have very rear information. Could you make a video on how to implement this project with mobile and Walkie-Talkie. I mean that communication between mobile and one Walkie-Talkie over Wi-Fi through a webpage.

  • @xopxxd4214
    @xopxxd4214 Год назад

    Hi Chris, I’m uploaded your code to ESP32 DEV module code is working without error when I push button it show message but there was no sound. I hope to receive a response from you. Thank you

  • @vindulaherath6400
    @vindulaherath6400 3 года назад

    hi, can I use NodeMCU for this?

    • @atomic14
      @atomic14  3 года назад

      I believe so, the ESP8266 supports I2S and the current codebase is not very CPU intensive as we're not doing any compression. So it should work. I generally use the ESP32 so you will be pretty much on your own. Good luck with it!

  • @udobes
    @udobes 2 года назад

    Great project! Thanks for sharing it.
    My question is: what about Bluetooth Headphones? Is it posible to use these for audio-output?
    Udo

  • @Pigirl
    @Pigirl 2 года назад

    If anyone could help me to connect walkie talkie with one side esp32 and the other side andriod app.
    Suggest me with links

  • @summerfun6114
    @summerfun6114 Год назад

    Good job @atomic14. do you have Arduino IDE code for this project? Thanks.

  • @EinsteinAbridged
    @EinsteinAbridged 3 года назад +1

    You may get cleaner audio if you use a capacitive multiplier circuit instead of a LDO. LDO aren't that great for filtering out ripples

    • @atomic14
      @atomic14  3 года назад +1

      EEVBlog has a great video on this - I have used one previously with microphone input, but I didn't see much improvement over an LDO. But my office is not that quiet anyway so there's a lot of background noise. ruclips.net/video/wopmEyZKnYo/видео.html

  • @WestVirginian
    @WestVirginian Год назад

    Is there a way to do this through Bluetooth? I am trying to learn how to set up a Bluetooth intercom system that I could connect and talk to friends similar to this. I know they make motorcycle intercom systems but I want to add some additional functionality to it.

    • @atomic14
      @atomic14  Год назад

      Have a search for esp32 A2DP. That might be what you are looking for.

  • @alexangelino2392
    @alexangelino2392 3 года назад

    @atomic14 , based on the BOM, I've managed to find most of the components on digikey, but I'm unable to identify the 2 smaller capacitors in C4 & C3. What values would you suggest there?

    • @alexangelino2392
      @alexangelino2392 3 года назад

      second question, the 3d printed project has speaker holes at ~32 mm distance apart, but the speakers in your reference have holes that are ~42 mm apart. Is there some other brand of speaker that will actually work with this project?

    • @alexangelino2392
      @alexangelino2392 3 года назад

      lastly, would you still know the make of your spdt slide switch (on/off) and the momentary button? I couldn't make those out from the images. Thanks!

    • @ii_berzin_ii9079
      @ii_berzin_ii9079 2 года назад

      I think he shows 1uf in the schematic.

  • @exexex_tension7630
    @exexex_tension7630 7 месяцев назад

    will this work if both walkie talkie are on different wifi network?

    • @geraldpujaya6682
      @geraldpujaya6682 7 месяцев назад

      read the description

    • @atomic14
      @atomic14  7 месяцев назад +2

      No - needs to be the same network. But with esp now you don’t need a network.

  • @wj625
    @wj625 3 года назад

    Can the UDP be used across the internet or is it only on a local network?

    • @atomic14
      @atomic14  3 года назад

      You can, but your need some infrastructure to help with nat traversal - it's not trivial.