Digital Audio Processing with STM32 #1 - Introduction and Filters - Phil's Lab #46

Поділитися
Вставка
  • Опубліковано 10 лип 2024
  • New mixed-signal hardware design course: ⏵ phils-lab-shop.fedevel.education
    ⏵Course content: www.phils-lab.net/courses
    Real-time digital processing (DSP) of audio data using an STM32 microcontroller on custom audio-processing hardware. Details of hardware design, software set-up, and various digital audio effects. First video in series, covering the system overview, set-up, and simple low- and high-pass filters (IIR, based on analogue RC prototypes).
    [SUPPORT]
    Free trial of Altium Designer: www.altium.com/yt/philslab
    PCBA from $0 (Free Setup, Free Stencil): jlcpcb.com/RHS
    Patreon: / phils94
    [LINKS]
    DSP Playlist: • DSP
    STM32 Playlist: • STM32 Firmware
    GitHub: github.com/pms67
    Digilent ADP3450: digilent.com/shop/analog-disc...
    [TIMESTAMPS]
    00:00 Introduction
    00:25 Content
    01:15 Altium Designer Free Trial
    01:37 JLCPCB
    01:48 Series Overview
    02:35 Mixed-Signal Hardware Design Course with KiCad
    02:57 Hardware Overview
    05:25 Software Overview
    08:33 Double Buffering
    09:34 STM32CubeIDE and Basic Firmware
    14:20 Low-Pass Filter Theory
    18:48 Low-Pass Filter Code
    22:44 Test Set-Up (Digilent ADP3450)
    23:44 Testing the Filter (WaveForms, Frequency Response, Time Domain)
    27:17 High-Pass Filter Theory and Code
    28:22 Testing the Filters
    30:35 Live Demo - Electric Guitar
    ID: QIBvbJtYjWuHiTG0uCoK
  • Наука та технологія

КОМЕНТАРІ • 156

  • @PhilsLab
    @PhilsLab  2 роки тому +19

    Hope you enjoy this video series on DSP for audio! Let me know if you have any questions or comments :)
    New mixed-signal hardware design course with KiCad v6 - with updated pricing!
    ⏵Course sign-up: phils-lab-shop.fedevel.education
    ⏵Course content: www.phils-lab.net/courses

    • @velvetsound
      @velvetsound 2 роки тому

      Looks like you dropped the price for download a lot. Good call.

    • @benish0r
      @benish0r 2 роки тому +1

      Thanks Phil for updating the pricing! I am finally able to go for the $149 one. The $99 one was too bad for hobbyists due to the time constraint and lack of download whereas the business one was too expensive for the regular Joe. Thanks again for providing quality content and listening to your followers!

  • @jamesm6951
    @jamesm6951 2 роки тому +63

    I'd drop an easy $100+ on a full-length DSP course. Your signal processing content is nuts!

    • @velvetsound
      @velvetsound 2 роки тому +8

      Same. All the other Udemy ones i’ve tried have been garbage.

    • @MrCaptianCrunch
      @MrCaptianCrunch 2 роки тому +1

      @@velvetsound facts

    • @PhilsLab
      @PhilsLab  2 роки тому +21

      Thank you - glad to hear that! A full-length, hands-on DSP course may be in the works ;)

    • @guruG509
      @guruG509 Рік тому +2

      @@PhilsLab maybe add Kalman filters in the list and the course becomes a banger

  • @DigilentInc
    @DigilentInc 2 роки тому +28

    This is crazy interesting, excellent job, Phil. Please, anyone feel free to ask questions about the ADP3450 or WaveForms! Cheers, all!

    • @PhilsLab
      @PhilsLab  2 роки тому

      Thank you! Was really cool to test out the ADP3450 with this project :)

    • @flecksrandomstuff4593
      @flecksrandomstuff4593 2 роки тому +2

      Awesome, one thing I really love about it is - Linux compatible! If I could - I would get one! Maybe some day... Also thank you Phil, really love STM32 and all about Digital Audio!!!

  • @zetaconvex1987
    @zetaconvex1987 2 роки тому +2

    Your explanation of the 1st-order low-pass filter is clear. It makes me confident that I could implement it. Excellent video which doesn't skip over important details. Well done, and thanks for posting. I look forward to the rest of the series.

    • @PhilsLab
      @PhilsLab  2 роки тому +1

      Thank you very much, glad you liked the video!

  • @cs8137
    @cs8137 2 роки тому +6

    Man your content checks off almost every box for my personal development. Your presentation is spot on keep it up!

    • @PhilsLab
      @PhilsLab  2 роки тому +2

      Thank you very much, glad to hear that!

  • @badejavuade6774
    @badejavuade6774 2 роки тому +2

    Thanks Phil..the way you dumb things down with explanations and practical applications is amazing.

    • @PhilsLab
      @PhilsLab  2 роки тому

      Thank you very much, Badejavu!

  • @angelosnegkas
    @angelosnegkas 2 роки тому +13

    Your skills are insane! You are so good at sharing the knowledge simple but yet without losing details!

    • @PhilsLab
      @PhilsLab  2 роки тому +4

      Thank you so much!

    • @isaiahhiggins
      @isaiahhiggins 4 місяці тому

      I agree! A hallmark of someone who really understands what they're talking about.

  • @Leezorc
    @Leezorc 2 роки тому

    Some ppl just have a natural talent. Again Brilliant !!! This channel is sooo underrated It should be at the forefront of youtube suggestion list.

    • @PhilsLab
      @PhilsLab  2 роки тому

      Thank you very much, Lee! Well hopefully one day it'll be at the forefront - I can only hope :D

  • @Electromakerio
    @Electromakerio 2 роки тому

    I, for perhaps obvious reasons, am very excited about this particular series.

  • @user-qf6yt3id3w
    @user-qf6yt3id3w 2 роки тому

    Once again I like the way you cover the maths. It's as simple as it can be but no simpler.

  • @MeeBilt
    @MeeBilt 2 роки тому +1

    Excellent start of the series - I will follow it for sure! 🤓

    • @PhilsLab
      @PhilsLab  2 роки тому +1

      Thank you very much!

  • @robert__
    @robert__ 2 роки тому

    As a soon-to-be CS graduate who's looking to get into embedded software development as a career, these videos are invaluable to me! Your video on how to write a driver for stm32 is basically the blueprint on how i try to write software still.

    • @PhilsLab
      @PhilsLab  2 роки тому +1

      Thank you very much, Robert!

  • @werkstattkreuzberg4234
    @werkstattkreuzberg4234 8 місяців тому

    Wow. Huge knowledge. Thanks for sharing!

  • @theonlyari
    @theonlyari 2 роки тому +1

    This is really good stuff. I really like how you are going into the meat of the content and then summing it all up with a real world example. As some others have said, I'd gladly pay for a DSP course. Lastly, nice socks.

    • @PhilsLab
      @PhilsLab  2 роки тому

      Thank you very much! Would definitely be up for making a DSP course - I'll keep you updated :)

    • @guruG509
      @guruG509 2 роки тому

      @@PhilsLab Me too will be waiting to learn DSP from an application point of view rather than cramming up the boring theory

  • @velvetsound
    @velvetsound 2 роки тому +1

    Well that just made my project easier. Thanks Phil!

    • @PhilsLab
      @PhilsLab  2 роки тому

      Glad to hear that, thanks for watching, Jason!

  • @alexxx4233
    @alexxx4233 2 роки тому

    Wow, nice video !!!!Thank you Phil for great content!

    • @PhilsLab
      @PhilsLab  2 роки тому

      Thank you for watching, Alex!

  • @ianmosquera3741
    @ianmosquera3741 2 роки тому

    Great Vid as always Phil. Keep it up.

    • @PhilsLab
      @PhilsLab  2 роки тому

      Thank you very much, Ian!

  • @ganeshbhosle1370
    @ganeshbhosle1370 Рік тому

    Very Nice video...!!! Very quickly and in simple way explained the basics...!!!

  • @mostafakh5075
    @mostafakh5075 2 роки тому

    i hope one day u start the series of c code! u are a great teacher ❤️

  • @pramitchaudhury1821
    @pramitchaudhury1821 2 роки тому

    Phil love your work as always more power to you ❤️

    • @PhilsLab
      @PhilsLab  2 роки тому

      Thank you very much, Pramit!

  • @mancio92M
    @mancio92M 2 роки тому +1

    beautiful video, really beautiful, theory and practice come together. congratulations congratulations

    • @PhilsLab
      @PhilsLab  2 роки тому

      Thank you so much!

  • @maxthecat511
    @maxthecat511 2 роки тому

    Amazing job Phil thanks for sharing.

    • @PhilsLab
      @PhilsLab  2 роки тому

      Thanks for watching!

  • @danielmagnus5239
    @danielmagnus5239 Рік тому

    Informative and great examinations of the math in the filter formulas

  • @radman999
    @radman999 2 роки тому

    Highly recommend Phil's course, check it out!

    • @PhilsLab
      @PhilsLab  2 роки тому

      Thank you very much, Kevin!

  • @viktorhonchar
    @viktorhonchar 2 роки тому

    Wow! Great intro tutorial!
    Thank you

    • @PhilsLab
      @PhilsLab  2 роки тому

      Thank you for watching, Viktor!

  • @Andy-ph1qj
    @Andy-ph1qj 2 роки тому

    Very nice, great work!

  • @VasaMusic438
    @VasaMusic438 2 роки тому

    Fantstic Video !!! Thank you !!!

  • @MrAlFuture
    @MrAlFuture 2 роки тому

    Awesome! Thanks Phil!

    • @PhilsLab
      @PhilsLab  2 роки тому

      Thanks for watching!

  • @vanshthakur7060
    @vanshthakur7060 2 роки тому

    Brilliantly explained

  • @largepimping
    @largepimping 2 роки тому +20

    Phil, please provide the C code necessary to make my playing sound like Yngwie Malmsteen. Thanks in advance.

    • @mimimmimmimim
      @mimimmimmimim 2 роки тому +13

      void main() {while(1){printf("practice 10 hours a day.
      ");HAL_Delay(1000);}}

    • @PhilsLab
      @PhilsLab  2 роки тому +7

      Haha I'm afraid I'm still searching for that code myself...

    • @DanBowkley
      @DanBowkley 2 роки тому +1

      Best I've got makes it sound like a dying yak, will that help?

  • @mikael5743
    @mikael5743 2 роки тому

    Thank you so much Phil

    • @PhilsLab
      @PhilsLab  2 роки тому

      Thank you for watching, Mikåel!

  • @jasontoo
    @jasontoo 2 роки тому

    Mental loadout mate.

  • @Bianchi77
    @Bianchi77 2 роки тому

    Nice video,like it, thanks for sharing :)

  • @242SLjayampathi
    @242SLjayampathi 2 роки тому

    this helped a lot. thanks. 💛💛💛💛🖤🖤🖤🖤

  • @tuguldurjigjidsuren391
    @tuguldurjigjidsuren391 2 роки тому

    Hopefully some day FFT on STM32 video would come out. :) . Your videos are great inspiration. Thanks in advance.

    • @PhilsLab
      @PhilsLab  2 роки тому

      Thank you, Tuguldur! Was definitely planning on making an FFT video at some point - maybe as a guitar tuner demo?

    • @tuguldurjigjidsuren391
      @tuguldurjigjidsuren391 2 роки тому

      @@PhilsLab Yes. That would be wonderful. Thank you for your hard work and effort.

  • @muhamadzainimansur9624
    @muhamadzainimansur9624 Рік тому

    very cool

  • @haguirrebena
    @haguirrebena 2 роки тому

    Epic content =)

  • @nicoladellino8124
    @nicoladellino8124 2 роки тому

    Nice video, TNX

    • @PhilsLab
      @PhilsLab  2 роки тому

      Thank you, Nicola!

  • @m1geo
    @m1geo 2 роки тому +2

    This is an excellent video.
    My only question, since you're measuring voltages, shouldn't your cutoff be 6dB (not 3dB as you use)?

  • @hlw8051
    @hlw8051 2 роки тому

    Hell yea dude

  • @JasonScottHamilton
    @JasonScottHamilton 2 роки тому +2

    Very cool. I wonder how closely you could emulate actual hardware pedals? It would be cool to see you emulate a tube screamer or one of the original hard clipping distortion pedals.

  • @neilllambert5806
    @neilllambert5806 2 роки тому +2

    hi there. am i being silly. i cant find the stm32 project code.

  • @Kilohercas
    @Kilohercas 2 роки тому +1

    I was so hoping you implemented full filter that is capable of 0.5Hz cutoff (at 48ksps), that is nearly impossible to do in analog domain. All you have to do is to run convolution with your kernel, I always wondered if STM32 has enough performance to do it in real time :)

  • @polkijain97
    @polkijain97 2 роки тому +1

    Excellent video.
    Now please make one explaining how to source ST MCUs..!

    • @PhilsLab
      @PhilsLab  2 роки тому

      Thank you, Pulkit! Haha yes that would be nice...

  • @dragonmaster9577
    @dragonmaster9577 2 роки тому +1

    Hi Phil, I had trouble finding the STM32 CubeIDE file, as well as I was wondering if the schematic shown in the hardware overview could be shared please. Thank you for the video

  • @Nelixios
    @Nelixios 2 роки тому +9

    Another splendid video!
    Is there a plan to finish the sensor fusion series?

    • @PhilsLab
      @PhilsLab  2 роки тому +5

      Thank you! Yes, just working on the last EKF video with implementation.

  • @barrykeane2716
    @barrykeane2716 Рік тому

    Amazing job with this channel!
    Is there a link to the actual STM32IDE project/code?

  • @justabasslover4404
    @justabasslover4404 2 роки тому

    Is this dsp also similar to what jbl uses in the charge, xtreme, flip, pulse, boombox series of their bluetooth speakers? I'm currently building a bt speaker, it's drivers are 10-20watts, it's a replacement driver for jbl charge 3, I used tpa3110 amplifier and m18 bluetooth decoder. The sound is good, but I want it to sound like jbl charge 3, it has bass which you can hear loudly. But mine, I don't hear any. Can I use this dsp?

  • @ivolol
    @ivolol 2 роки тому +9

    Careful there Phil, you might start undercutting some pedal companies' $600 effects pedals :)
    An experiment I would really like to see is how *underpowered* you can make your hardware and still get some effects going? E.G, what sort of frequency can you run the CPU and still get real-time processing with floating point / integer math?

    • @velvetsound
      @velvetsound 2 роки тому +3

      I pulled apart my Meris Mercury 7 pedal and they’re using an STM32F4… ;)

    • @dieSpinnt
      @dieSpinnt 2 роки тому

      @@velvetsound That is ‎around £309 ? But it is not an experimentation platform, or? (sorry, besides guitar excursions :) )
      Also what Matthew already forgot from the beginning of the video(1) (and you didn't mention here) is the quality of the ADC/DAC and the analog audio chain. Quality of mechanical construction, etc. pp. That is knowledge which those companies possibly would kill for:)
      (1) NE5534 or something + TLV320AIC, Phil said "very simple" ... and that design is a whole new can of worms

    • @dieSpinnt
      @dieSpinnt 2 роки тому

      What you try to achieve with your second idea, Matthew, is possibly answered on reddit via "What's the worst pedal you ever bought?", because that is exactly what you are moving towards:)
      Sorry for joking(?!?). You can calculate (or measure and then interpolate) the noise and frequency response of digital filters. What I meant is: Be SOME percent over the "shitty sound" margin to have something reliable. Ignore that, if you are Alice Cooper:P

    • @PhilsLab
      @PhilsLab  2 роки тому

      Haha, yes maybe this'll show that it isn't too hard (or costly) to make your own digital effects pedals!
      That's a good idea. I'll show some of the limitations of this F405 MCU when we'll look at FIR filters of various lengths. Haven't really tried much signal processing on lower-power MCUs.

  • @S-MKim
    @S-MKim Рік тому

    25:33 I am curious about the time delay of your system. You can show the phase response measured here and compare it with that from simulation so as to tell the latency. Is the latency mostly due to I2S communication or something else?

  • @niyaziugur
    @niyaziugur 2 роки тому +1

    as an embedded developer, its really hard to solder another opamp resistor to settle or attenuate the signal to the mcu. i'm using i2s channel for trying it out the circuit. i put an adc like you did... and i'm chilling when i need to change attenuation factor or lpf settings because of very fast mcu's nowadays. (we are not populating these ic's at production btw)
    when i'm in the university, there were only the pic family. 20mhz at best ahhaha:)... now i have 168mhz or 240 mhz mcu with fpu and dma and fast i2s peripheral..
    weather is clear for embedded engineers... :)

    • @isaacclark9825
      @isaacclark9825 2 роки тому

      You can get 400 Mhz to 1GHz "MCU/FPU" if you need them. Allegedly.

    • @AnkitSharma-1337
      @AnkitSharma-1337 2 роки тому

      we also have 1Ghz MCUs nowadays

  • @MrKaizen75
    @MrKaizen75 2 роки тому +1

    Would be interesting to see how you determine how many cycles each algorithm takes and how much CPU load. I don't know if it done through statistical profiling or if you use some time measurement technique like watching clock cycles.

    • @PhilsLab
      @PhilsLab  2 роки тому +1

      That's a good idea! I'll try to include that in a future video.

  • @jacobrodgers2700
    @jacobrodgers2700 2 роки тому

    Thank you for this! I created a basic synthesizer on STM32 but I didn't know how I could implement a filter. I just discovered your channel now, but do you have (or would you consider making) a video about how to do an adjustable cutoff filter like this but using the ARM math library filter functions that come with the STM32 libraries?

    • @PhilsLab
      @PhilsLab  2 роки тому +2

      Thank you for watching, Jacob! Potentially I'll make a video on using the ARM libraries, however, I usually prefer showing everything 'from scratch' in these videos.

  • @VTREffects
    @VTREffects 5 місяців тому

    Hi Guy, I'm starting development with dsp stm and I'm using your videos as a learning base. Have you made the GDSP_codec file available somewhere? I didn't find it on your GITHUB and I need this file to get audio from my board

  • @gjvdspam
    @gjvdspam 2 роки тому

    What appealed you to the TLC320AIC as a DAC/ADC? Applications mentioned in the Datasheet don't really match, but that doesn't say much anyway.

  • @Samsul2013
    @Samsul2013 2 роки тому

    Hi Phil, can you make a video that demonstrate (in code examples) some and useful building blocks of DSP library (CMSIS). In C there are if-then-else statement, the are select case, logical operators etc that made up the C entire program. It would be very helpful to see how the program flows in DSP programming by examples. thanks

  • @saqibravian
    @saqibravian 6 місяців тому +1

    Hi I wanted to try this audio acquisition and build a software fsk modem.
    But I couldn’t find the project files on the GitHub link in the description. Hope somebody could help.

  • @RobertPoor
    @RobertPoor Рік тому +1

    I know the question has been asked, but haven' t seen the answer yet: what's the latency between input and output? I assume it's something greater than buffer_size / sample_rate -- what do you measure?

  • @guitarkid8495
    @guitarkid8495 2 роки тому

    Can you speak further about the analog front/back ends you designed between the guitar input and the codec?

  • @KSITREVS
    @KSITREVS 2 роки тому

    Hi Phil, was really interested in this project and thought I would try and create one with the files you supplied on your git page... sadly JLC are charging quite a bit for some of the real small parts and wondered how difficult the audio codec was to solder? I have done very little SMD but im keen to give this project a go! Thank you for the great video i look forward to seeing more of your content. Thank you :)

  • @adaminsanoff
    @adaminsanoff 2 роки тому

    Phil, could you perhaps cover different digital power supply topologies as well? You could start with the basics like short circuit protection and move on to more complicated topics like DC/DC, DC/AC conversion, motor control, regenerative braking, PFC, etc.

    • @PhilsLab
      @PhilsLab  2 роки тому +1

      I actually recently made a demo board for future videos on how to design/control a buck converter. I think both from an electronics and control standpoint that could be pretty interesting. Other than that, as you mentioned, I also have a motor control board ready for some videos! :)

  • @taherdibaei
    @taherdibaei Рік тому

    Woooow great job. 😍😍
    Why dont you use TI's dsp microcontrollers??

  • @bruno6613073
    @bruno6613073 2 роки тому +1

    Thank you again Phil for more great content!
    You mentioned that the ADC of the STM32 is not appropriate for sampling the audio signal and that the ADC of a codec IC should be used instead. Why is that?

    • @PhilsLab
      @PhilsLab  2 роки тому +1

      Thanks, Bruno! The STM32's ADCs and DACs are usually 12-bit and you'll get pretty harsh, very audible distortion. 16-bit is pretty much a minimum for audio.

  • @lu3ebw212
    @lu3ebw212 Рік тому

    Hello. Thanks for sharing. Where could I download the code shown on this video ? Thanks.

  • @teechui2401
    @teechui2401 5 місяців тому

    How does this platform (STM32 + codec) compare to a Teensy 4.0 board (ARM Cortex M7) + Audio Shield?

  • @robjordan63
    @robjordan63 2 роки тому

    Tour de force!

  • @fakharealiraza1205
    @fakharealiraza1205 2 роки тому

    Phil could you please suggest where to start for a beginner ??? In your playlists for RTos stm32 cube I'd .not referencing these videos.

    • @PhilsLab
      @PhilsLab  2 роки тому

      I'd check out the 'beginner' STM32 videos on my channel (firmware and RTOS).

  • @tonghe6899
    @tonghe6899 2 роки тому

    Great series! Since STM32F4 series have built in ADC/DAC, are these built in one able to do the similar thing?

    • @velvetsound
      @velvetsound 2 роки тому

      I don’t think the built in DACs have sufficient resolution (they are 12-bit) for audio applications, particularly the DAC’s ability to reconstruct a pleasing sounding analog waveform. Most better sounding DAC chips in pleasing sounding effects are 24-bit or 16-bit at the lowest end. Aliasing in algorithms is also something that goes away at higher sampling rates (eg 96 or 192 kHz). You can definitely hear the differences.

    • @ivolol
      @ivolol 2 роки тому

      Maybe if you are making a distortion pedal :)

  • @infamousflav
    @infamousflav 2 роки тому +3

    Any chance you'll be supplying the gerber files for your GDSP board so we'all can get our own made? (nudge, nudge, wink, wink)

    • @PhilsLab
      @PhilsLab  2 роки тому +2

      I'll be supplying design files for an updated version of this board in a (near-)future video!

  • @Semtex777
    @Semtex777 2 роки тому

    what is the latency after the stm32 processing ?

  • @noll8b
    @noll8b Рік тому +1

    What would be a good guess for the cost to produce these audio DSP boards? Has anoyone done so already? I can imagine a lot of people who might be adept at an IDE and some light soldering -- but lack PCB and SMD chops -- being interested in buying them ..
    Fantastic video and channel.

    • @PhilsLab
      @PhilsLab  Рік тому

      Thanks! Something around 10-15 USD each to produce in low quantities. I've done an updated version that I may pop on Tindie or the like!

  • @jinfengzhou8420
    @jinfengzhou8420 2 роки тому

    The bolck diagram is really nice, may I ask how you creat it ? Thank you very much!

    • @PhilsLab
      @PhilsLab  2 роки тому

      Thank you! I used draw.io to create it.

  • @arjunramesh6383
    @arjunramesh6383 2 роки тому

    👍🏻💥

  • @helderfilho4724
    @helderfilho4724 2 роки тому

    Where can I download the schematic?

  • @Divyesh_Sinha
    @Divyesh_Sinha 2 роки тому +1

    Hey
    Can you make a video on making a bi-directional power delivery Sink source board using the TPS65982 (or similar)
    And a synchronous Boost buck converter using
    LTM4607
    I am making a powerful Powerbank with 100W PD port and 300w (20v 15A) port for my laptop
    Can you help me out?

  • @techmechabhi5734
    @techmechabhi5734 2 роки тому

    Sir I want a long range sensor which is a kilometer awayThe New Data Sender Receiver has a range of 1 kilometer and can send multiple data along with it, which is a receiver that can receive the same data.

  • @sim1_7
    @sim1_7 2 роки тому

    Can we purchase this pedal in order to try our dsp algorithms? We can follow you through all videos like a cuorse!

  • @saikrishnakaruturi2958
    @saikrishnakaruturi2958 9 місяців тому

    Hi, please provide the link to the code for the audio codec. so that it will be helpful to my project. thank you

  • @arjunramesh6383
    @arjunramesh6383 2 роки тому

    Please make a tutorial on how to record the audio from mic to sd card or usb 👍🏻

  • @power-max
    @power-max 2 роки тому

    What would be the chances of covering how to decode Dolby Digital, DD+, Atmos, or DTS? Am open source library that allows decoding the latest surround sound stuff would be killer!

    • @PhilsLab
      @PhilsLab  2 роки тому

      I'm afraid that isn't on my list of content to make :/

  • @Samsul2013
    @Samsul2013 2 роки тому

    I am more interested in DSP programming for audio applications like the audio equalization, mixer/audio mixing, digital filtering, understanding of the analog ics that made up the analog embedded system (I mean the chip like the dsp audio mixer, audio codec, etc). In digital/mcu based embedded systems there are ics like eeprom, rtc, I/O port expanders, CAN, RS232, RS485, ethernet PHY, etc that made up the system BUT in analog embedded system (again, I mean the DSP based solution) is still to me remain secret and not liberise !

  • @SosasRoomProductions
    @SosasRoomProductions 2 роки тому +2

    Phil, this video is pure gold. The fact that you're providing it for free is so admirable, ill gladly go to your patreon...
    I am developing a similar project, but have chosen the stm32h7. It's awesome that you're usinig a cortex m4 since I was weary the performance would suffer compared to an m7 chip. Have you hit any roadblocks in terms of performance when implementing some more "crazy" dsp algorithms? Do you think the higher performance of the m7 compared to m4 is worth it?
    Cheers!

    • @yaghiyahbrenner8902
      @yaghiyahbrenner8902 2 роки тому

      it depends. the only way to determine is to put an algorithm execution expectation on m4 or m7,
      Example:
      A single channel IIR at 96fs is okay, but you will soon see interesting CPU and Memory issues when building advance "single audio channel high sample rate" algorithms like: ANC (Active Noise Cancellation), Parametric EQ with limiters, Advance Reverb Algorithms (an there are many) then an M4 STM32 wont work, M7 barely but then again? what are you trying to do? what is the aim? M7 for simple to advance low sample rate will work. Yet again the M4 and M7 are great chip most people doing DSP will have to start here and work their way up.Some DSP things I mentioned are highly subjective do you even need high sample rate Audio?
      Many who started looking never even made it designing a low sample rate IIR filter on an 8-bit architecture. It's an additive journey, I say use an M4 or M7 and see if you can max it out, then move on. :)

    • @PhilsLab
      @PhilsLab  2 роки тому

      Thank you very much, Lia! The only time I've been limited by the performance is (unsurprisingly) with long convolutions, e.g. for FIR filters. Another thing is the amount of RAM available, which can of course be extended on some STM32s with SRAM.
      Tbh before the chip shortage the price difference between some M4s and M7s wasn't much, so I'd say just go with whatever the budget allows!

    • @SosasRoomProductions
      @SosasRoomProductions 2 роки тому

      @@PhilsLab cool to know! I will be doing a lot of convolution, so maybe the m7 is what I want. The chip shortage really is a shame!

  • @Ma_X64
    @Ma_X64 2 роки тому

    I'd rather be using pure CMSIS for audio processing to decrease time consumption caused by all that HAL stuff.
    *Many of DSP code snippets can be found with REAPER DAW as JS plugins, but they're written in EEL.

  • @AndruliuSonneilloN
    @AndruliuSonneilloN 2 роки тому

    What's the latency? Also great job! SUB!

  • @WarrenPostma
    @WarrenPostma 2 роки тому

    I would like to buy a pedal that I can program myself. Has anyone built and made pedals like yours available for sale?
    I am comfortable coding in C but not that comfortable populating or designing PCBs and such.

  • @SchoolScienceProjects
    @SchoolScienceProjects 2 роки тому

    It's sad that, especially as a guy, people don't care about how you feel until it gets bad enough that it's too late. That's why this video is so great, we need to change this.

  • @gino.avanzini
    @gino.avanzini 2 роки тому

    At 26:03, why do you have a 0.4dB gain on the passband? Shouldn't it stay flat at 0dB (or potentially a small attenuation)?
    EDIT: I guess it has to do with the volume control presented later. Should have waited till the end of the video to comment xD

    • @PhilsLab
      @PhilsLab  2 роки тому +1

      Exactly, the volume control wasn't centered :)

  • @buiminh4578
    @buiminh4578 9 місяців тому

    Hi, I'm a guitar player too and still keep on my stuff, I wonder where I can find this code, thanks

    • @buiminh4578
      @buiminh4578 9 місяців тому

      in the video, it said the code is in the GitHub link, but I can't find it

  • @user-cy7je5us6v
    @user-cy7je5us6v 5 місяців тому

    bu proje mukemmel olmuş enstrumanım olan türk çalgısı saz adlı bir cihaza sahibim bunda fisherman kiti takılı 5 bant eqolayzır var ve bir flash bellek yuvası ritimleri burdan çalıyorum ama hızları ile oynayamıyorum isterdimki oynıyım 2 4 luk 9 8 lık 4 4 rıtımlerde hızla oynaya bılseydım cok ıyı olurdu aslında 3 bu kıte 3 analog dugme ıyı olurdu bırı sesin hızını real tıme değiştirecek oburu takılı olan flash bellekte rıtmler olan muzık looplarını değiştirsın bu kıtın cıkısını fısherman a verıp birde dısplay ekran olsa bu kıt turkıyede yok satar kımse bunu yapmayı beceremedı ıtalyanlar korg pa serılerınde rıtımlerın hızlarını bir dugme ıle ayarlamıs ayrıca rıtm parcalara gecıste gene bır dugme ıle bu kıt gelıstırılıp hafızalara da atılabılır ve saza monte edılır korkunç nefıs bır proje olur hala bunu arıyoruz fısherman fırması bunu hala yapmadı hoca yapsın bunu artık bu malıyet acısından ucuz olur sa ardınıo rasbery gıbı kartlar kullanılmasın aynı tadı korg pa org serılerınde gıbı enstrumantallerımızın uzerınde rıtm degıstırmeyı kolayca yapalım pıyasada satılan rıtm box adlı yardımcı elemanlar malesef dışardan kontrol edılıyor enstrumanın uzerınden degıl ayrıca bunlar gereksız agırlık ve cok para işimiz de korg pa için ritm kulalnyoruz ama enstrumanı calarken korg u da yanımızda goturmekten bıktık mıcrı denetleyıcıye kod yazmayı bılmedıgımızden ve devre tasarlamayı bılmedıgımızden bu teknık bır iş değerli hoca 3 analog dugmelı bır sd card yada flash belleklı dısplay ekranlı cıhazı gelıstırıp bıze satarsa memnun oluruz fısherman fırması saz için yapmış ama ne çalarsak calalım tempo hep aynı hızda buda çok iyi olmuyor bazen rıtmı azaltıp bazen coşku vermek gerek bunlar ıcınde hız hafıza butonlarıda konabılır
    ,