#279

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

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

  • @greatscottlab
    @greatscottlab 5 лет назад +1881

    Very nice video. I am glad that fixing the circuit only takes 1 resistor. Easy fix :-) Thanks again for you help. Your video is now linked underneath my Walkie-talkie video.

    • @swagiyo9801
      @swagiyo9801 5 лет назад +11

      I don't know if im missing something, but. i think the major problem is that you're in essence are using a 1bit DAC and ADC. from my experience it won't sound any better then in this video.

    • @hatschmolo2923
      @hatschmolo2923 5 лет назад +27

      @@swagiyo9801 No thats wrong. 1 bit is called "direct current" 🤷🏼‍♂️.
      Great Scott uses 10bit ADC from Arduino and generates Analog Audio through PWM coupled with a capacitor.
      This video is proof that he just did forget about headroom. So he created an overdrive Effect 🤘🏼

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад +167

      @GreatScott: You are welcome. And as I said, maybe we will have the chance for a test on a bike ride ;-)

    • @asagk
      @asagk 5 лет назад +12

      @@swagiyo9801 The quality of output in the video is mainly depending on the noise created by pwm from the receiving side. But to get rid of that, one could choose to have a r2r-dac, instead of pwm, as well as having a "low pass RC-filter" at least between the arduino(328p) and the speaker/headphone, that integrates the high frequency pwm output above 4.5kHz. --- By the way, 1 bit ADC/DAC can create a very high quality output, depending on the internal resolution of digits and sample speed. Good CD-players have high quality 1 Bit DAC!
      [edit] about 1 bit conversion you might want to read this e.g. en.wikipedia.org/wiki/Delta-sigma_modulation#Variations

    • @Margarinetaylorgrease
      @Margarinetaylorgrease 5 лет назад +8

      @@swagiyo9801 Some of the best DACs and ADCs in the world are 1bit
      en.wikipedia.org/wiki/Delta-sigma_modulation

  • @TheJay6621
    @TheJay6621 5 лет назад +736

    Great Scott : My walkie talkie project is not working
    .
    .
    Andreas Spiess : Hold my Swiss Knife.

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад +53

      :-)

    • @UtkarshAmitabhSrivastava
      @UtkarshAmitabhSrivastava 5 лет назад +6

      More like : let me grab my Swiss knife.

    • @EvenTheDogAgrees
      @EvenTheDogAgrees 5 лет назад +6

      You call that a knife/screwdriver/sewing needle/ballpoint pen/file/pair of scissors/fork/spoon/set of pliers/tape recorder/pair of shoelaces/USB stick/hairdryer/jet ski/pet rock/pagan temple/...?
      Yeah, I'm starting to see why they made Crocodile Dundee an Australian. If he were a Swiss, the movie would be over before they finished making that joke... ;)

    • @khashmeshab
      @khashmeshab 5 лет назад +8

      - My walkie talkie project doesn't work.
      - It will work when it hears my Swiss accent.

  • @jeroenjeroen
    @jeroenjeroen 5 лет назад +120

    Excellent debugging example from your previous video. And nice cooperation with one of my other popular channels GreatScott! Thanks.

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад +23

      Actually, it was no cooperation. I just was interested if it is possible. And I thought we can learn how to debug...

  • @birnodin
    @birnodin 5 лет назад +134

    RULE #0 : If your project / code does not work let another guy have a look on it!
    You can be 1000% sure that this line of code works, and so you will never see the error. Another person may say: "But.. in line 99 that..."
    "Oh my God, thats right!"

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад +9

      Here it was not the code ;-) But in general, you are right.

    • @LimbaZero
      @LimbaZero 5 лет назад +8

      Easiest way is to tell you friend about program and tell how it's working. you usually find that bug also at thins point. some people use rubber duck for this "rubber duck debugging". It's also sad that current arduino ide don't support most powerfull debugging (ICD) where you can use breakpoint and read + change values when run is paused.

    • @mahudson3547
      @mahudson3547 5 лет назад +3

      Welcome to open source...

    • @EvenTheDogAgrees
      @EvenTheDogAgrees 5 лет назад

      Ain't that true? Just the other day I was working on some Node-Red project with a friend. I'm the hardware/coding guy, so while he was dragging his flow together I had nothing to do and was entirely distracted trying to catch up with my emails. After 10-15 minutes of him banging his head against the wall, stuck on some issue, I glanced up from my mails and spotted the error immediately.
      Zero Node-Red experience. The only reason I caught the error immediately was because I hadn't been staring at it for 15 minutes straight. Had I been paying attention while he was building the thing, I'd probably missed it too and would be scratching my head alongside him. ;)

    • @ArchonLicht
      @ArchonLicht 5 лет назад

      XP pair programming.
      Also I agree about Arduino IDE - Eclipse is a way better IDE for Arduino development IMO.

  • @zerog2000
    @zerog2000 5 лет назад +150

    Great video, but beware NSFH (not safe for headphones ;)

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад +17

      Do not forget: I am biker with a quite loud Harley. So my ears are no more the best ;-)

    • @suteerthtripathi
      @suteerthtripathi 5 лет назад +7

      I wish I had seen your comment earlier.

    • @TravisFabel
      @TravisFabel 5 лет назад +1

      To be perfectly honest my TV sound bar did not like this one bit... or 10 bits depending upon how you want to look at it. Lol

    • @robertkielty5094
      @robertkielty5094 5 лет назад

      Thank you! Have headphones off ears now.

  • @DanielLopez-kt1xt
    @DanielLopez-kt1xt 5 лет назад +47

    It is allways nice to see DIYers to help eachother, good for you to improove your skills, and perfect for us to learn along with you.

  • @asagk
    @asagk 5 лет назад +135

    A simple RC low pass filter might solve the problem with overtones and the quantization noise. Perhaps add some of this at least in the output to the speaker? Supressing all above 4.5kHz will not distort sound, since main components of human voice is up to 3.5 kHz for males and up to 4.5 kHz for females. Agood choice might be to also filter the input from the microphone, to get rid of unwanted noise above human frequencies right before sampling with the arduino. Noise not being transmitted will do good for the transmission as well, since less artifacts in the samples for the receiver will prevent to reconstruct a wave form that is distorted by high frequency components.

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад +36

      You are right. I could have shown the FFT where you see the overtones. But I thought this was too much for one video.

    • @liewts1049
      @liewts1049 5 лет назад +1

      Really good observation & suggestion

    • @danosdotnl
      @danosdotnl 4 года назад

      i have passive filters on my mic input and speaker output, still ALOT of noise. Added larger smoothing caps on the arduino and rf module power rails, that worked better and tweaked sample and data rate in software to get rid of the last bit of noise

  • @D4no00
    @D4no00 5 лет назад +4

    what is interesting is that a lot of people think that debugging is not an essential skill, however I could say that this is one of the most important skills to have, you cannot be a good specialist without it. I just started learning electronics about a year ago, but I can say that I could debug that also without any problems (of course by having the appropriate equipment). The most important step in this is choosing the right strategy for debugging the project.

    • @mahudson3547
      @mahudson3547 5 лет назад +2

      It is part of being a good engineer and it’s called experience

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад +1

      @D4no00: This was the intention of this video.

  • @DIYTECHBROS
    @DIYTECHBROS 5 лет назад +69

    Very funny to see this this kind of “response” video Andreas! Great job!

  • @LordHog
    @LordHog 5 лет назад +32

    Simple response, fantastic analysis and debugging tutorial!!

  • @gnom69
    @gnom69 5 лет назад +25

    Small Tip: When testing microphones, instead of speaking try to whistle. It's pretty easy to hit ~1kHz to create a perfect sine. A sinewave is easy to check on the scope.

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад +7

      You are right!

    • @recjack2816
      @recjack2816 5 лет назад

      There is also the 3.3 kHz when whistling

    • @mrjohhhnnnyyy5797
      @mrjohhhnnnyyy5797 5 лет назад

      Humming works as well, not as clean, but still :) Try to replicate the hum of the 50/60Hz transformer.

    • @TheRainHarvester
      @TheRainHarvester 5 лет назад +4

      Also, there is an app for tones. Keeps me from passing out on long debug sessions! :-)

  • @AB-pb8oo
    @AB-pb8oo 5 лет назад +26

    I googled the price tag for "Keysight MSOX3054T" and "Siglent SDG1050". Well, I am impressed - nice hobbyist tools... 😂

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад +7

      I got a special price for the oscilloscope :-)

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

      @@AndreasSpiess how special from the list price of $12000? :)))))

  • @pjosephlthewonder5082
    @pjosephlthewonder5082 5 лет назад +1

    I have been working in the electronics field for years, and realized from your video here that I have been using these same rules, with minor exception with out realizing this is what I was doing. Thank You for the lesson on what I do and need to relearn to insure I am doing it right the first time. Great Video! Peace

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад

      Thank you! I tried to do some "abstraction" and I thought it will help beginners to get your experience faster.

  • @hoggif
    @hoggif 5 лет назад +1

    Great vid.
    I use a different rule set: 1. divide in two logical sections by educated guess or halving. Test in the middle if everything is ok. 2. If front part did not work, divide front in half and contunue with rule 1. If later part did not work, half later part and continue with rule 1. 3. if you make any changes due to testing, make sure to remove all of them before moving to next section. 4. Make sure you have objective measured results, avoid assuming too much based on measured data, separate assumed from the fact! 5. Simplify input if possible, like you used a signal generator in the start instead of voice, simpler input makes measuring simpler.

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад +1

      Good set. For this project, I did not want to cut in the middle, as I explained.

  • @philipwpartain
    @philipwpartain 5 лет назад

    As a hobbyist, the way you walked us through your troubleshooting/debugging process was incredibly helpful. Thank you!

  • @sreeprakashneelakantan5051
    @sreeprakashneelakantan5051 5 лет назад +17

    Good, this synergy between RUclipsrs is interesting. 🙏

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад +2

      GreatScott did not know that I do this video. I never met him so far

  • @cfeigel
    @cfeigel 5 лет назад +7

    Wow! The walkie-talkie is a nice project. The debugging lesson is a great extra. Good to see you guys collaborating!

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад +1

      We actually did not collaborate. Unfortunately, I never met GreatScott so far.

  • @dave-in-nj9393
    @dave-in-nj9393 5 лет назад +4

    Excellent. it shows what additional information you can get when you have a scope.
    knowing what you are doing and going about it systematically should be part of our basic tool kit

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад +1

      Debugging without a scope or a logic analyzer is hard, I think.

    • @TheRainHarvester
      @TheRainHarvester 5 лет назад

      Sure beats potentiometer, and unplugging / plugging in capacitors to iterate to a solution !

  • @stefanholtker3944
    @stefanholtker3944 5 лет назад +140

    Nice debug, my ears are bleeding now :')

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад +23

      Sorry about that. I always thought, you young guys are used to loud music ;-)

    • @kilrahvp
      @kilrahvp 5 лет назад +4

      This really needs some better digital-analog conversion, at least filter the PWM!

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад +7

      A filter for sure would be a nice feature, I agree.

    • @tunahankaratay1523
      @tunahankaratay1523 5 лет назад

      Good enough for a walkie-talkie.

  • @loteknomad5032
    @loteknomad5032 5 лет назад

    Home-made walkie talkies seem like such a cool project for new enthusiasts and veteran engineers alike. Always enjoy seeing people tackle this particular build. :)

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад +1

      This is probably why I did this video. I also liked the idea...

  • @sonovoxx
    @sonovoxx 5 лет назад +15

    8:55 Sine wave now works. Just got to troubleshoot my hearing now... 🤯

  • @iceberg789
    @iceberg789 5 лет назад +4

    thanks for debugging greatscott walkie talkie, i also suggested last week in his post that the input audio signal was clipping at the scope screen, but it's weird to see till date that little comment of mine did not even get a single like ! 🥺

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад

      He gets many comments, so maybe nobody saw it :-(

    • @iceberg789
      @iceberg789 5 лет назад +1

      @@AndreasSpiess so it seems. anyways, if you build this for actual usage, may be you may want to consider a 2nd order lc low pass @5-6KHz, to see if any of those irritating sharp noise gets reduced or not.
      otherwise, cellphone companies already made voice calls free, so cellphones ftw.
      i wish you enjoy the actual build, thanks. :-)

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад

      I ride a Harley. So having communication is anyway not possible because of loud pipes ;-)

  • @brenta1905
    @brenta1905 5 лет назад

    Excellent logical reduction in the approach to troubleshoot. Furthermore, cooperation in helping another great designer rather than condemning and trash talking is highly commendable. Cheers to you both and "magic-smoke" to the trolls!

  • @ghanrajsingh7347
    @ghanrajsingh7347 5 лет назад +17

    You both guys are my favorite ❤️ love you work and I always learn something new

  • @EnUsUserScreenname
    @EnUsUserScreenname 5 лет назад +7

    The crossover nobody asked for but everyone wanted.

  • @Martin-DL
    @Martin-DL 5 лет назад +1

    Thank you for another great video and the lesson you have given to all makers and tinkerer. I suspect that you, as OM, heard immediately that there could only be two sources of error. Open Source is a great movement and I love the videos from GreatScott because he mostly does very well researched and competent videos.
    But at the end of the day it shows again that nothing can be replaced by background knowledge and a lot of experience.

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад

      I was not sure if the "Arduino part" worked or had issues. This is why I checked this part first. I am sure it was not easy to write the lib because the NRF transfers max 32 bytes at a time. And I assume it needed some buffering (I did not look into the details)

  • @maycodes
    @maycodes 4 года назад

    We are so lucky to have you guys.

  • @centexrails
    @centexrails 5 лет назад +2

    Congrats on an excellent job and the step by step trip through a debugging operation.

  • @wreckless_-jl6uu
    @wreckless_-jl6uu 5 лет назад

    I would’ve thought adding a cap or resistor somewhere would’ve solved it, but with out a scope no one would’ve known.. good job man!!!

    • @zerog2000
      @zerog2000 5 лет назад

      Illustrates the point that oscilloscope, even an inexpensive one, is invaluable troubleshooting tool for anyone messing with this stuff

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад

      You are right. As I pointed out in my video about important tools: An oscilloscope and a cheap logic analyzer are indispensable.

  • @tonyweil2473
    @tonyweil2473 5 лет назад

    Please make more debugging AND behind the scenes videos like "#111 Labrep: How I work behind the scenes" in addition to the regular videos. Here is why. The regular, relatively short and high production value videos have just enough information for a moderately skilled person to quickly understand the technology and successfully complete the project. This is fantastic.
    Yes, the behind the scenes video was long and somewhat tedious, but I learned so much from watching you work through the problem including your choice and usage of test equipment. The videos show that there is not magic behind how easily you seem complete projects in the regular videos. You show how to carefully analyze options, make hypothesis and then try to prove or disprove them, sometimes end up down blind alleys, but you keep persevering. These are essential skills for advancement.
    The debugging video inspired me to purchase a waveform generator and follow along step by step. This helped me learn the value and usage of the waveform generator. The "#111 Labrep: How I work behind the scenes" showed me the value and usage of a Logic Analyzer that I did not fully understand. I would have used my oscilloscope and rudimentary protocol decoder, but now I will borrow my friends Logic Analyzer and learn more about it. What model do you own and what would you suggest for a hobbyist?

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад

      Thank you for your feedback, it is valuable. It depends a little on my mood how the video is in the end. Short or long ;-)
      Concerning logic analyzers: They are all more or less the same. You get them in two classes: Cheaper and a little more expensive. Both have the same functionality, just more pins, and more speed.

  • @johanso
    @johanso 5 лет назад +27

    Headphone Users: Beware at 8:55

  • @Beeblzaphod
    @Beeblzaphod 5 лет назад

    Dear Andreas, thanks for this video. This is a pure pleasure watching the engineer's approach to solve technical problem. Excellent job, you made my day :-)

  • @skewedmaker
    @skewedmaker 5 лет назад +2

    Thanks for this video, very helpful to see debugging circuits in practice.

  • @mvadu
    @mvadu 5 лет назад

    Next on Great Scott.. "Walkie Talkie mkII" which works like a charm!! The fact that you showed he can even gets to keep the same design and in turn same PCB he made is great!! All he had to change really is two resisters. Awesome!!

  • @agentpx
    @agentpx 5 лет назад +2

    I love GreatSCott and Andres Spiess, love both of your work :D

  • @workethicrecords5901
    @workethicrecords5901 5 лет назад

    2 questions:
    -When is it most appropriate to use the ISP or Jtag Debugger on your micro controller? Do you normally do that after all other options for electronic failures have been evaluated?
    -would throwing a lowpass RC filter on the end of your output get rid of the high pitched noise in the signal? Or maybe a bandpass with a wide high band?

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад

      Maybe you watch my video about debugging and then decide if you need it or not.

  • @BensWorkshop
    @BensWorkshop 5 лет назад

    Interesting that adjusting the gain at the start fixed so many issues though I suspect a low pass filter on the output would help make the sound quality a little easier on the ear.

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад +1

      A filter definitively would help!

    • @BensWorkshop
      @BensWorkshop 5 лет назад

      @@AndreasSpiess I would be very interested to see what an add on low pass filter would do.

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад +1

      Why not try it yourself. For a video, this would probably not be very interesting :-(

    • @BensWorkshop
      @BensWorkshop 5 лет назад

      @@AndreasSpiess My workshop is currently being built... and isn't set up for electronics yet.

  • @GnuReligion
    @GnuReligion 5 лет назад +3

    Great video! The selection of MPU for the project makes me cringe. I have experimented with digitizing and delivering audio with AVRs. While possible, the quality is poor. These chips are wonderful for a great many things, but slow, with only 8 bit ADC at high speeds, and lack hardware DACs / i2s. ESPs and STM32s are only a couple of dollars and have Arduino IDE support. I have a sly suspicion you recognized the problem with the LM358 at first glance, Andreas, due to experience ;) My go-to op-amp these days is a TL082 for its high slew rate, and behavior close to the rails when using a single voltage source.

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад

      First I suspected the problem in the software because I did not believe it was possible to use the NRF24L01 for that purpose ;-)

  • @colinjohnson5515
    @colinjohnson5515 5 лет назад +6

    Andreas Spiess and Great Scott! Biker/Maker road trip sounds like the best thing ever... I hope this happens

  • @bobvincent5921
    @bobvincent5921 5 лет назад

    Thanks so much for this lesson so that if you divide and isolate different functions and test them individually you will arrive at a total solution.

  • @leifclaesson2470
    @leifclaesson2470 5 лет назад

    I learned a really nice detail from this video just in passing, it was never explained or even mentioned. Notice how at 9:14 it shows the NRF24L01 with antenna wires soldered on? I never knew that was a thing! I tried the same on an ESP8266 module and literally improved signal strength by 10dB. This solves the signal strength issue I've been having in some places. Thanks for another great video!

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад +1

      These two NRF24L01 were in my drawer from old experiments...

  • @Chris-ZL
    @Chris-ZL 5 лет назад +13

    Well Done Andreas. It need more low pass filtering or a higher sample rate or both. Also Squelch (in firmware)

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад +2

      You are right. But here I wanted to focus on debugging

    • @Chris-ZL
      @Chris-ZL 5 лет назад +4

      @@AndreasSpiess Absolutely. Excellent Debug video, I'm not saying you should do it :-)
      but what it really needs is a better design from the start using maybe ESP32s for their DACs and radios.

  • @moclan582
    @moclan582 5 лет назад +1

    I love how you both can speak German and correct each other speaking English.
    (I'm also German btw)

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад

      I did not hear any correction. Just debugging of a circuit. In the language of electronics

    • @moclan582
      @moclan582 5 лет назад

      @@AndreasSpiess I just love the fact that both of you are actually native Germans and do Videos in english

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад

      German for me is a foreign language (that is why I understand it, but not speak it properly, only with a heavy accent) ;-)
      If we would do our videos in German we would not have many viewers.

  • @kenseastrand7428
    @kenseastrand7428 5 лет назад

    Hey great job! to both you guys, I enjoy, and learn a lot from people like you and Great Scott, Dave Jones, Ave and others, it is good to see people interact like this, with out being snobs.

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад +1

      Thank you! Concerning being polite: In this respect, my idol is Roger Federer.

  • @erygion
    @erygion 5 лет назад +2

    Great video Mr. Spiess. I need to watch that video. (troubleshooting rules) I know you guys live in different countries but a collaboration would break the internet. (at least for us electronic enthusiasts) If even a shared video to avoid traveling.

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад +1

      Thank you! He is the big guy and he has to decide ;-)

    • @erygion
      @erygion 5 лет назад

      @@AndreasSpiess I'll go bug him lol ;)

  • @819jt
    @819jt 5 лет назад

    A helpful video about a helpful video? Faith in humanity restored

  • @TheDefpom
    @TheDefpom 5 лет назад

    I suggest adding a low pass filter to cut off the digital noise high frequencies, to improve the audio quality, you could cut off above 4KHz pretty safely.

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад +2

      You are right. I did not want to change a lot. And as a HAM operator I am used to some sort of noise ;-)

  • @marcedi2029
    @marcedi2029 5 лет назад

    Excellent! I like this kind of teamwork of youtubers. Keep on both of you.

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад

      Actually, it was no real teamwork. I never met GreatScott :-(

  • @DougHanchard
    @DougHanchard 5 лет назад +1

    Thoroughly enjoyed this episode.

  • @Palmit_
    @Palmit_ 5 лет назад

    The mini-hand to help describe. Genius.

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад +1

      Welcome aboard the channel!

    • @Palmit_
      @Palmit_ 5 лет назад

      @@AndreasSpiess my pleasure! :) and thank you.

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

    It was very fun video to watch. This debugging videos along with the explanation is very interesting. Keep on making such videos.

  • @ahaveland
    @ahaveland 5 лет назад

    Good illustration of Nyquist's theorem - need a sharp low pass filter cutting off around 2/5ths of the sample rate, and there's a lot of jitter. Even 10ns jitter on the sample timing adds a lot of noise. It could be that the code is not sampling using a precisely timed interrupt, or is running in a main loop with unnecessary interrupts still running.
    Also, it's really important to use a sample and hold circuit to fix the voltage as it is being sampled, though this may be already built into the Arduino's ADC. Integrating PWM with an RC circuit is pretty crude, but a proper DAC chip and LPF would also help to improve the sound quality.
    If there's enough processing power available, the sound could be encoded in real time as AAC or MP3, transmitted with a lower RF bandwidth instead of using uncompressed PCM then decoded by the receiver.

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад +1

      If somebody wanted to build a real walkie-talkie this is not the recommended way. I liked the project because it uses our standard parts and still works. But adding a filter would for sure be a small, but useful addition.

  • @dtesta
    @dtesta 5 лет назад

    We now know who the king of electronics is :) I salute you Herr Spiess!

  • @ats89117
    @ats89117 5 лет назад +1

    The folding effect occurs every Fs/2 Hz. The aliased bands repeat every Fs Hz because it is Fs/2 Hz up and Fs/2 Hz back down again...

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад +2

      You are right. I thought that is what the picture shows?

    • @NiHaoMike64
      @NiHaoMike64 5 лет назад +1

      Replacing the Arduino with a STM32 will give you a much better (faster) ADC and quite a bit of processing power to do DSP with.

  • @RobertShippey
    @RobertShippey 5 лет назад

    Great video demonstrating how to debug ☺️ A vital skill for so many things!

  • @athanasiosstefanopoulos5211
    @athanasiosstefanopoulos5211 5 лет назад

    Excellent video and collaborative task with another great maker! You have an awesome engineering mind Andreas. Thank you for sharing such a great content with the makers community. :)

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад +1

      You are welcome! This is just a normal engineer's behavior ;-)

  • @Mat-vb8er
    @Mat-vb8er 4 года назад +1

    At 5:40, what resistor and capacitor did you use? I tried several ones but I still get massive background noise

    • @AndreasSpiess
      @AndreasSpiess  4 года назад

      I used a potentiometer. Background noise is to be expected.

    • @Mat-vb8er
      @Mat-vb8er 4 года назад

      @@AndreasSpiess Is that background noise expected as the output in generated using PWM and that generated the noise?

    • @AndreasSpiess
      @AndreasSpiess  4 года назад

      Yes

    • @Mat-vb8er
      @Mat-vb8er 4 года назад

      @@AndreasSpiess May I ask why you used a capacitor between Potentiometer and ground? (at 5:40)

    • @zazugee
      @zazugee 4 года назад

      @@Mat-vb8er low-pass filter

  • @ShakilAhmed-oc7mf
    @ShakilAhmed-oc7mf 4 года назад

    its great!! not only walky talky but also effort. I really impressed.

  • @yomboprime
    @yomboprime 5 лет назад

    I knew the bug was in the amplifier. As I commented on GreatScott's video, using the Vref pin on the Arduino with two resistors to tune the ADC input voltage amplitude eliminates the need for the LM.

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад +2

      I do not think this would be sufficient. The LM358 amplifies the very small signal with a factor of 100

  • @rGunti
    @rGunti 5 лет назад +1

    The same rules also apply in Software Engineering. If something doesn't work, start making the system smaller and test I/O. Great video :D
    Und grüezi aus dem Ruhrpott von einem Auswanderer o/

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад

      You are right. My video about errors should have been quite universal. Grüezi aus der verregneten Schweiz!

  • @santanumukherjee1548
    @santanumukherjee1548 5 лет назад

    Thanks for your amazing explanation. You and great Scott are really good. I never ever heard this type of explanation except electro boom. Electro boom is also good but he discussed about physic and electrical. (Sorry for bad English)

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад

      Everybody has its specialty. And you as a viewer has the choice :-)

  • @uwepolifka4583
    @uwepolifka4583 4 года назад

    You could use a steep bandpass filter from 300Hz - 2,7 KHz to reduce some of the noise (anti aliasing) before digitalising and a 2,7kHz lowpass before the audioamp.

    • @AndreasSpiess
      @AndreasSpiess  4 года назад

      The goal was to fix it, not to improve it. You are right, a filter could help.

  • @AndrewJones-tj6et
    @AndrewJones-tj6et 5 лет назад

    Nicely done to both you and Great Scott. Now to add VOX to only transmit when talking as we do not like to hog the airwaves and make it work in both directions so a conversation is possible.

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад

      It has a Push to Talk button. VOX on my Harley would always be on ;-)

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

    Very interesting video. I surely will try this at home. But one question, how much is the value of the chenged resistor ? Or is it completly removed from the circuit ?

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

      You have to try it yourself. It depends on your setup.

  • @sidyajv
    @sidyajv 5 лет назад

    Thank you for this video Andreas, there was plenty of information and knowledge gained through it.

  • @typxxilps
    @typxxilps 5 лет назад

    Great work and hands on explanation - every sunday ... Thanks

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад +1

      You are welcome. I try to be precise like a Swiss watch ;-)

  • @rupertprice5508
    @rupertprice5508 4 года назад

    I really enjoyed both videos . thanks guys .

  • @XerotoLabs
    @XerotoLabs 5 лет назад

    great stuff . I also love the distorted voice on teh radio , has that old equipment sound .

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад

      Many of the young viewers complained about this sound. Times change...

  • @darksam1212
    @darksam1212 5 лет назад

    Sounds like a low pass filter set at the highest freq allowed by voice between the arduin and amp or amp and speaker may help the quality a little

  • @Pablososki14
    @Pablososki14 4 года назад

    I found it really odd when I saw that he connected the PWM output directly to the speaker without having the signal go through a RC Low pass filter. Nice Job!

  • @vlad4281
    @vlad4281 5 лет назад

    Hi Andreas,
    Greetings from Australia,
    I recently came across your channel and absolutely love your approach and clarity of explanation .
    Thank you for kindly sharing your knowledge and systematic approach - well done :-)
    P.s. If you ever find yourself looking for new project ideas I would love to see something on diy night vision and the technology
    Behind it.
    Have a wonderful day !!

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад

      I did something on IR lately. Bur for the moment I have no plans for night vision. But you never know. It is an interesting topic.

  • @BillySugger1965
    @BillySugger1965 5 лет назад

    Excellent debugging process. Well done!

  • @mr.b.1589
    @mr.b.1589 5 лет назад +7

    [funmode on]Baaam in you face GreatScott - this is maker-bashing, I hope you have an answer on this video.[funmode off] - Just kidding. I really like the way how normal people interact with and help each other. AND everyone learned something. Thank you!

  • @marcinwitkowski4633
    @marcinwitkowski4633 5 лет назад +1

    Will it be better to make [512 array buffer] and transfer it with packets ? is it real time aqua... is better ?

    • @marcinwitkowski4633
      @marcinwitkowski4633 5 лет назад

      meaby 2 mini-s in one device... and sharer flash...

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад

      Maybe you ask GreatScott? This video is about debugging an existing device

    • @marcinwitkowski4633
      @marcinwitkowski4633 5 лет назад

      @@AndreasSpiess thanks for reply... of coarse i should write it ;-) to GreatScott, ps... I like yours WORK Uare Fantastic Men, and my real inspiration for embeded projects ♥

  • @DocMicha
    @DocMicha 5 лет назад

    Very good. A nice tutorial for younger engineers to work more systematically. I know this too good, because I was once boss of 45 engineers.

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад +1

      That was my intention. I thought this is a good example to show it in practical use

    • @DocMicha
      @DocMicha 5 лет назад

      @@AndreasSpiess Yes, pratice is the best way to learn the theory!

  • @VincentFischer
    @VincentFischer 5 лет назад +2

    "Plz bro, help with my project. My breadboards always burst up in flames."

    • @JanJeronimus
      @JanJeronimus 5 лет назад +1

      The next two items you really need:
      - fire extinguisher
      - fire alarm

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад +3

      Or another hobby?

    • @recjack2816
      @recjack2816 5 лет назад

      Sounds like Electroboom

    • @tek5358
      @tek5358 5 лет назад

      Huh, could make for a good series

  • @daveys
    @daveys 4 года назад

    This is a superb video and walkthrough, many thanks! BTW, love the little pointy finger thing. You got a new subscriber :-)

  • @klausbrinck2137
    @klausbrinck2137 5 лет назад +2

    Marvel: Avengers is biggest crossover in history!!!
    Andreas Spiess: Hold my Swiss Knife...

  • @kleinerfighter-ka6677
    @kleinerfighter-ka6677 5 лет назад

    Pretty well explained and this is a really nice example why an audio design fixing guy needs an Oszi :)

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад

      You are right. An oscilloscope is always handy. I use it a lot...

  • @lollandster
    @lollandster 5 лет назад +5

    You might want to point out that the Great Scott Gadget that makes HackRF is not the same as the RUclipsr GreatScotts.

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад +1

      You are right. I think most of his viewers know that.

    • @linuxuser2858
      @linuxuser2858 5 лет назад

      Everyone know that

  • @samreciter
    @samreciter 5 лет назад +1

    Cool - love both of your channels!!

  • @khashmeshab
    @khashmeshab 5 лет назад

    Andreas, I know for sure than the ATmega328 has internal amplifiers on its ADC inputs. So you can completely omit the pre-amplifier part. But you'd probably need to write the ADC code in plain C. You'd be able to select 20 or 200 gain. Take a look at the datasheet.

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад

      I do not think so.

    • @khashmeshab
      @khashmeshab 5 лет назад

      @@AndreasSpiess You're right. I checked again and ATmega328 doesn't have it. But ATmega32 or ATmega16 have it. It seems that they are different. Download the ATmega16 datasheet and search for "200x". I've actually used it for microphone operations.

    • @khashmeshab
      @khashmeshab 5 лет назад

      There are also other useful features in ATmega series nobody knows about and nobody uses. For example, if you don't use a quartz to clock your ATmega328 and use its internal RC oscillator, you can connect a 32kHz quartz to it. Then you can burn the CKOPT fuse to enable internal 22pF capacitors on the XTAL lines. Then with a good program you'd have an RTC without needing an special IC.

  • @domen6005
    @domen6005 5 лет назад +1

    "Because of this shitty little loudspeaker"
    hahahah made my day!
    I have never heard you use this word before soi it's very comical.

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад +1

      It is as it is ;-). But it was also cheap...

  • @emgab
    @emgab 5 лет назад

    very well done, informative, structured and well thought out - as always - being one your first 20 fans i#m impressed how you developed your channel - chapeau !
    one proposal though to improve the design of this interesting walkie-talkie would be a low pass on the opamp below 8KHz to get rid of the noise - maybe worth considering a thought - cheers, Mike

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад

      I planed this video more as a "debugging" video, not one to enhance GreatScotts work. But you are right.
      And thank you for staying with the channel for such a long time!

  • @jontech9978
    @jontech9978 5 лет назад

    That was awesome. Your knowledge is always helpful

  • @MD4564
    @MD4564 5 лет назад

    Great cross over video guys, more needed :)

  • @brucenik9168
    @brucenik9168 4 года назад

    Another option is to use Wifi AP and client mode (1100-1300 meters range between two ESP8266 NodeMCU) to stream over TCP/IP.

  • @toddmarshall7573
    @toddmarshall7573 5 лет назад +1

    I did notice in great Scott's presentation he never demonstrated going from amplified microphone to speaker with a straight wire. I also noticed in this presentation that was the last thing tried. So one more rule: KISS.

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад

      In my eyes this project is KISS. It does not have one component too much, at least if you want it wireless...

    • @toddmarshall7573
      @toddmarshall7573 5 лет назад

      @@AndreasSpiess I agree. My comment, was regarding the troubleshooting sequence. Make sure something works in the simple case (direct wires) before the more complicated case (wireless).

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад

      Your choice where to start

    • @toddmarshall7573
      @toddmarshall7573 5 лет назад

      @@AndreasSpiess you also quickly drew the conclusion the problem was with the gain. You could have established that it was also an input bias problem just by adjusting the offset on the oscillator. At that point I would probably have introduced. trim pots into the design... If for no other reason than to establish proper resistor values empiracly.

    • @toddmarshall7573
      @toddmarshall7573 5 лет назад

      @@AndreasSpiess KISS makes that choice. If you were bouncing this off a satellite would you troubleshoot the satellite first? The problem proved to be in the simplest part of the circuit ... even ahead of the pwm.

  • @pranjalbhagat667
    @pranjalbhagat667 5 лет назад +5

    Great job with great Scott!!!!

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад +2

      Thank you. But he does not know anything of it ;-)

    • @McTroyd
      @McTroyd 5 лет назад +3

      @@AndreasSpiess ...yet. I'm sure the overlap in viewership will circle it back to him eventually.

  • @dave_dennis
    @dave_dennis 5 лет назад

    It seems to me you'd want the PWM back to linear audio to happen in a circuit designed specifically for this prior to the speaker. Connecting it directly to the speak is too dependent upon the characteristic impedance and capacitance of the speaker. This would also be a good place to add some upper frequency filtering so as to limit the aliasing harmonics. Just my thinking on how to improve this even more.

    • @dave_dennis
      @dave_dennis 5 лет назад

      Looking at some CLASS D amplifier circuits I see they usually have an inductor and cap in series at the output as a low pass filter. I guess this is what I was thinking. I'd never looked at a CLASS D before. I'm a little better at this than I realized.

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад

      You are right: A filter would help there. But I just wanted to make it work. BTW: A headphone is a coil. And a filter.

  • @TheProSlasher
    @TheProSlasher 5 лет назад

    @GreatScott / Andreas you really need to put 100uF capacitors on your nrf24l01s. They power burst on initial transmit is very high (like 250ma IIRC). 100uF is enough, 47 isn't.

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад

      Mine had a 100uF cap on the board

    • @TheProSlasher
      @TheProSlasher 5 лет назад

      @@AndreasSpiess I think I saw 47 on his. My bad!

  • @tonyweil2473
    @tonyweil2473 5 лет назад

    This video inspired me to learn about digital audio and PCM, which I knew nothing about, not to mention re-learn about opamps yet again, and even purchase a small wave generator! I have some very basic questions: My understanding is that the output of the Arduinos (both before the transmitter and after the receiver) is a PCM encoded signal. Looking at it on a scope, this PCM signal appears to be serial pulses containing an 8-bit two's complement number every 2.4us (~400khz). I understand that the number corresponds to the amplitude of the output signal. My first question is how can this digital signal (or two opposite signals like on output pins 9 and 10) drive a loudspeaker directly. I would have thought you would need a DAC. My second question is that if original ADC output was 10 bit and 8k samples/sec, why is the PCM output only 8 bit and 400K/sec.
    How in the world do you have the time to produce such detailed and insightful content on so many subject so regularly! I watch every video until I understand it and build many of the examples to educate myself, and I have a hard time keeping up with you. You are amazing and an inspiration. Thanks!

    • @tonyweil2473
      @tonyweil2473 5 лет назад

      Oops, I was looking at the MOSI signal coming out of the transmitter and the MISO signal going into the receiver.
      What I am really interested in understanding is the digital format of the signals coming out of receiver pins 9 and 10 and how that can drive a speaker. (Input is a 1Khz sine wave). Now, when looking at receiver pins 9 or 10 on the scope, these appear to be complimentary PWM signals with a 24Khz period and a pulse width of about 1.3us for every 100mV or so of input amplitude. I gather these two signals drive a speaker the way a PWM signal can drive the brightness of an LED and the two opposite signals (push-pull?) are stronger than one signal and ground.
      Am I correct that the MOSI output of the transmitter Arduino into the transmitter radio is considered PCM (and the MISO input from the receiver radio to the receiver Arduino )? So we have both PCM and PWM signals. Complicated, but simple!

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад

      PWM (pin 9 and 10) is a simple digital signal where the width of "high" is varied. It has no "data" contained in it. Whereas MOSI or MISO are real digital signals with bits and bytes. And you are right with the "push-pull.
      If you integrate a PWM signal you get an analog value which is proportional to the width of the pulses.

  • @rubenponce1011
    @rubenponce1011 4 года назад

    so what do you change the resistor value too? Also, is the resistor and capacitor on pin 9 needed? If so, what are the values?

  • @santopino2546
    @santopino2546 5 лет назад

    Great video, I was interested to find out the problem, but I'm just to lazy and don't have much time, but I enjoy your work going through the research.

  • @salamelvisual6270
    @salamelvisual6270 5 лет назад +1

    just found your chanel, realy great explanation, now i want to make more stuff :)

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад +1

      Welcome aboard the channel. I hope you will find "food for thought" or for projects.

  • @uwepolifka4583
    @uwepolifka4583 5 лет назад

    My first idea was an overdriven AD converter but a bad working microphone amp could also be possible. You could also try a inductor in the output like it is used in class D amplifiers to build a low pass of 3 KHz. It filters the noise. Most walkie talkies works only up to 3 KHz wich is anough for speech.

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад +1

      A filter would for sure help, you are right.

  • @matheuscardoso1
    @matheuscardoso1 5 лет назад

    AMAZING!!! SO GLAD U POSTED IT

  • @ericoudammerveld424
    @ericoudammerveld424 5 лет назад

    Awesome tutorial, Andreas!
    Thank you for this.

  • @spinningstatics
    @spinningstatics 4 года назад

    When I saw GreatScott's video I was thinking it could be an issue with the input signal being clipped due to overdrive. Really great debugging video!
    If I may ask, is it possible to use the MAX9814 Mic Amp you showed and still keep the LM358 amplifier GreatScott's used in his orginial schematic ?

    • @AndreasSpiess
      @AndreasSpiess  4 года назад

      You have to try out the levels. The MAX9814 is an interesting chip because of its AGC.

  • @sirmiro2
    @sirmiro2 5 лет назад

    Wow. That small thing changes so much.
    That shows I'll keep to ledlights. 😉

    • @AndreasSpiess
      @AndreasSpiess  5 лет назад +1

      Also there small things can change a lot ;-)