Arduino simple audio spectrum analyzer on OLED SSD1306 display

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

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

  • @RoSi4You
    @RoSi4You 7 лет назад

    *Again, very impressive!*
    *I am glad, that I found Your channel!*

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

    Thank you for posting your code. I've been trying to build a similar setup with a Teensy, and your code help me a lot.

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

    A0 is connect to the base of Bjt 2n3904 L, and not to the collector why?

  • @watercrow1866
    @watercrow1866 6 лет назад

    simple and clear

  • @b9robot01
    @b9robot01 7 лет назад +1

    First let say that I am a big fan this analyzer is beautiful. You sir are a genius. I have been working for the last three days to get this built and am still having some small problems. I went to your google drive page and copied all the files. Using the Arduino IDE version 1.8.1 I opened the sketch and it verified on the first try so I quickly downloaded it to an Arduino Uno hooked, up a .96 in blue oled and the display seemed to look perfect ,maybe a little off center. But when I try to wire it up according to your "amp-linein" diagram the display does not change and the sound cuts out. The moment I disconnect power from my uno the sound returns. I also tried to wire it according to this video and I get the same result even though there are different hookups in this video than in the "amp-linein" diagram. Any ideas what I may be doing wrong. Also I was curious if there were a way to get it to work on a slightly larger 1.3in blue oled? Thank you

    • @cbm80amiga
      @cbm80amiga  7 лет назад

      Use multimeter to check if you have correct voltage changes on output of amplifier. You can use different OLED/LCD but probably you will need different library.

    • @b9robot01
      @b9robot01 7 лет назад

      Thanks for getting back to me so fast. The audio signal I am using is coming out of a cheap ebay 5 watt amp, would that hurt anything? The diagram calls for a 0.1uf capacitor could that be any type like ceramic disk, or electrolytic, radial...?

    • @cbm80amiga
      @cbm80amiga  7 лет назад

      You don't need additional amplifier. Just use regular linein signal and simple 1 transistor amplifier as shown on diagram. I suppose signal in your case is too strong.Check it using voltmeter.

    • @b9robot01
      @b9robot01 7 лет назад

      Looks like I still have a little more work to do tomorrow. I figure I can change the display size myself after I get it working. I was just wondering if you had already tried that. Any way thank you for your help and I wont bother you any more tonight.

  • @Стас-д8я4о
    @Стас-д8я4о 5 лет назад

    I LOVE depeche MOOOOOOOOOOOOOOOOOOOD

  • @CarlosFilmagem2008
    @CarlosFilmagem2008 7 лет назад

    Show!!!!!!

  • @rafifamaricha9972
    @rafifamaricha9972 7 лет назад

    are you using FFT in your code?

  • @alfredappel6993
    @alfredappel6993 7 лет назад

    could you mail me the code? i would like to have something like this in a sterio :)

  • @panda-978
    @panda-978 8 лет назад

    Что за песни

    • @cbm80amiga
      @cbm80amiga  8 лет назад

      +Артур Галлямов Depeche Mode - Master and servant

  • @sshairva
    @sshairva 9 лет назад

    Can you share the schematics please?

    • @ricardocallejo7422
      @ricardocallejo7422 9 лет назад

      Salva The schematics is easy, code is the problem

    • @cbm80amiga
      @cbm80amiga  9 лет назад +2

      Ricardo Callejo
      Uploaded schematics and the code to my google drive:
      drive.google.com/open?id=0B_jncvz2HAYCfkVDd2taYlFrdnR1N0M2WUg5NC1sSS15ckJ6enJnXzk4YnNzZkw4ZHR0NTQ

    • @miklosbelhazy741
      @miklosbelhazy741 8 лет назад

      Error 404

    • @cbm80amiga
      @cbm80amiga  8 лет назад +2

      Try again: drive.google.com/open?id=0B_jncvz2HAYCfkVDd2taYlFrdnR1N0M2WUg5NC1sSS15ckJ6enJnXzk4YnNzZkw4ZHR0NTQ

    • @miklosbelhazy741
      @miklosbelhazy741 8 лет назад

      Thx!

  • @ghercoias
    @ghercoias 7 лет назад +1

    Great project. I used a 0.96" display and it displays the numebers in top, but no graph or VU meter. It compiled fine on Arduino IDE 1.8.1 just fine, I wished I knew what those variables are so I can modify them for my display. Very impressive work Sir!

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

    Depeche Mode Exciter! sps

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

    Hi can u pls tell me what changes to make to display this in 128 x 32 Oled module? I tried changing the 64 to 32 doesn’t seem to work!!! I get all white at left half of module!!!
    Edit: btw I’m doing this in nano 33 iot. I get a warning for the fix_fft.h

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

    Stupid question but I bought an SSD1306 OLED screen that is YELLOW/WHITE and I can't get the Adafruit library to work on it. It has both I2C and SPI. www.waveshare.com/wiki/0.96inch_OLED_(B) This is the screen in question, did I fuck up and waste 10 euros?

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

    Great Job! There´s any way to add a second line of vumeter? reading A1? thanks

  • @erikhoffman
    @erikhoffman 6 лет назад +2

    Where is the connections????????

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

    Excellent video! Thank you for sharing. DIdn't know the SSD1306 did more than one color.

  • @b9robot01
    @b9robot01 7 лет назад

    Hi cbm80amiga, just thought I would let you know I found the problem it was a ground issue now it is working great. I am curious, I have never worked with this FFT stuff and I admit I don't know how although after seeing what it can do I plan on looking into it. I was wondering if there is a way to adjust the sensitivity, preferably with a potentiometer, so the vertical moving bars would fill more of the screen, or less depending on the volume.

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

    Nice work! Exactly what I was looking for!

  • @MimmoIZ0GIF
    @MimmoIZ0GIF 8 лет назад

    I had some problem compiling your skatch with Arduino IDE 1.6.9.
    The problem was in the fix_fft library and the error was "prog_int8_t does not name a type".
    I fixed it:
    - in the fix_fft.h file, add the following rows at the beginning of the file:
    #ifndef prog_uint8_t
    #define prog_uint8_t const uint8_t
    #endif
    - in the fix_fft.ccp file, modify row 47 from:
    const prog_int8_t Sinewave[N_WAVE-N_WAVE/4] PROGMEM = .....
    to
    const uint8_t Sinewave[N_WAVE-N_WAVE/4] PROGMEM = .....
    For my I2C oled display, I modified the display.begin in your sketch from:
    display.begin(SSD1306_SWITCHCAPVCC);
    to
    display.begin(SSD1306_SWITCHCAPVCC, 0x3C);
    Now all is ok for Arduino IDE 1.6.9.

    • @cbm80amiga
      @cbm80amiga  8 лет назад +2

      Ok. Good to know. It was 1.5y old project and I used probably very old Arduino IDE.

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

    i could've donate you a speaker

  • @VolthausLabElectronics
    @VolthausLabElectronics 7 лет назад

    Using Arduino IDE 1.6.5 the code compiled with no problems. The only issue I am having is the spectrum on the display is too low off the screen. I can see the peaks of the response but not the base line. Also i seem to be getting a lot of noise around the middle frequency. I'll try filtering it out, it could be coming from my mic module. Thank you for your good work cbm80amiga.

  • @korebrent1234
    @korebrent1234 8 лет назад

    i wish mp3 players all camewith this ..very impressive man thanks for the video i know its old ....dontmatter

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

    hay man your code too fast we want something slow please upgrade you program 😽

  • @19oscarmartinez65
    @19oscarmartinez65 5 лет назад

    A QUE PRECIO CONSIGUES ESE DISPLAY OLED?

  • @avran9816
    @avran9816 7 лет назад

    Гениально чисто написан код, всё ясно и понятно, однако есть вопросы по поводу библиотеки fft, но с таким кодом будет просто разобраться)
    Спасибо огромное автору)

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

    Very cool : )

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

    Awesome!

  • @AmirPourkashef
    @AmirPourkashef 6 лет назад

    Is the Code available?

  • @victororo462
    @victororo462 6 лет назад

    Dude, this is awesome! Great job on this!

  • @MimmoIZ0GIF
    @MimmoIZ0GIF 8 лет назад

    Congrats, very nice!
    Which is the library used to manage the OLED display?
    I am doing the same using Adafruit library but the display refresh is so low...
    Could you share some sketch?
    Thank you in advance.

    • @cbm80amiga
      @cbm80amiga  8 лет назад

      The code and all resources are here: drive.google.com/drive/folders/0B_jncvz2HAYCfnhENzcxekxiTURWaGdxQzlaOV9qRE1IdTlWazNFSWJLYUFVZmt1THZQRmc?pageId=102377604871671942921

    • @MimmoIZ0GIF
      @MimmoIZ0GIF 8 лет назад

      Thank you very much, I appreciate!!!

    • @cbm80amiga
      @cbm80amiga  8 лет назад

      You are welcome

    • @axelbelleris
      @axelbelleris 4 месяца назад

      ​@@cbm80amigaHello! I'm trying to access to your link to see all resources and code but, it's says that I haven't access and I can't send a request to access. Can you help me, please? Nice your work! Greetings from Argentina. 🇦🇷

  • @ЮрийГерасимов-л4э
    @ЮрийГерасимов-л4э 5 лет назад

    добрый вечер ! где можно посмотреть схему подключения дисплея к модулю ардуино ? и на какой пин подавать измеряемое напряжение с микрофона ? good evening ! Where can I see the display connection to the module Arduino? and which pin to apply the measured voltage from the microphone?

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

      Look at the code and schematics at my google drive

    • @ЮрийГерасимов-л4э
      @ЮрийГерасимов-л4э 5 лет назад

      @@cbm80amiga спасибо! уже разобрался .thank! already figured out.

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

      @@ЮрийГерасимов-л4э You are welcome

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

    Can Sketch be installed at Nano or Uno?

  • @lexyardiansyah2733
    @lexyardiansyah2733 6 лет назад

    can i ask for your program?

    • @cbm80amiga
      @cbm80amiga  6 лет назад +3

      Added link to the description

  • @VioletGiraffe
    @VioletGiraffe 7 лет назад

    Do you calculate FFT on the Arduino, or do you use some external hardware? Do you use Atmel's built-in ADC for this?

    • @cbm80amiga
      @cbm80amiga  7 лет назад +3

      FFT was calculated on the Arduino in realtime, built-in ACD was used here.

    • @VioletGiraffe
      @VioletGiraffe 7 лет назад +1

      Thanks for replying. That's awesome! I wanted to do exactly the same thing to build into my power amp, but I didn't think Arduino has enough processing power to both do FFT and render complex geometry to display in real time.

    • @VioletGiraffe
      @VioletGiraffe 7 лет назад +1

      Did you "overclock" the ADC to achieve higher sampling rate in order to fully cover the audible frequency range? Or did you just leave out the upper range (10-20 kHz sound components)?

    • @cbm80amiga
      @cbm80amiga  7 лет назад +1

      No, I didn't change anything.

    • @VioletGiraffe
      @VioletGiraffe 7 лет назад +1

      I see. Thanks for the reply. So your spectrum only spans up to 6 kHz or so. I wonder if Arduino has enough juice to do the same thing but the right way, at 40-50 ksps. Guess I'll find out eventually :)