GithubHelp home page GithubHelp logo

fft_esp32_analyzer's People

Contributors

donnersm avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

fft_esp32_analyzer's Issues

I2S dma errors & pcb suggestions

Regarding the software i am not able to get it working and spent some time debugging without any results yet:
After one iteration of the mainloop the chip hangs and does not read another sample buffer after the first buffer is processed.
In the serial terminal on every call to the i2s_adc_enable or i2s_adc_disable function it will print a dma error: "I2S: dma error, interrupt status: 0x00002000"

The led matrix is set as a 2x64x64, hub75 enabled, i2s SAMPLEBLOCK = 1024 as default with 2 dma buffers and a sample rate of 44.1kHz.
Increasing the amount of dma buffers to 4 for example will process 3 buffers before it hangs.
The ADC data itself looks valid.

Regarding the PCB design i have a few suggestions of things i noticed while assembling:

If it is intended for the led matrix to be driven by the board i would replace the LDO with a switch mode converter or leave out the power input side completely and expect a regulated 5V input to just pass through.
The expected currents are way too high for a linear regulator and the diode drop will be significant as well resulting in very poor efficiency and high heat at those currents expected by a larger panel. I am completely bypassing the power input section with a fixed 5V PSU.

The analog circuitry should probably be supplied by 3.3V either via a separate LDO or the ESP32 onboard one so it safely clips to 3.3V reducing the need for resistors as there are also a lot of unique resistors and capacitors that may be possible to combine reducing the complexity.

Maybe i misinterpreted some design decisions but thats probably how i would have designed it.

ADCRaw always read '0' value

as title, i think the error is in the i2s _adc config, specifically i2s_adc_enable/disable. As for the input signal, it's still perfect. The strange thing is that the first time I load the code, it works fine, but when I resize the LED panel, it keeps crashing since then.

Problem with display on the P5 32 x 64 matrix

There's a problem. I use a P5 32 x 64 matrix. For all screen options 8, 16, 32 stripes, the leftmost strip is divided in half and one part is displayed on the left and the second part on the right. I don’t understand how to solve it. Who knows, tell me?

Error 'adc_gpio_init' was not declared in this scope

Hi guys,

when I try to compile the code in Arduino IDE and VS/PlatformIo I get this error message:

'adc_gpio_init' was not declared in this scope

I don't really understand what is missing there. Any ideas?

Thank you

In file included from C:\Users\amira\OneDrive\Documents\libraries\FFT_EPS32_V1.0\FFT_EPS32_V1.0.ino:56:
C:\Users\amira\OneDrive\Documents\libraries\FFT_EPS32_V1.0\I2SPLUGIN.h: In function 'void setupI2S()':
I2SPLUGIN.h:52:8: error: 'adc_gpio_init' was not declared in this scope
  err = adc_gpio_init(ADC_UNIT_1, ADC_CHANNEL_0); //step 1
        ^~~~~~~~~~~~~
C:\Users\amira\OneDrive\Documents\libraries\FFT_EPS32_V1.0\I2SPLUGIN.h:52:8: note: suggested alternative: 'gpio_init'
  err = adc_gpio_init(ADC_UNIT_1, ADC_CHANNEL_0); //step 1
        ^~~~~~~~~~~~~
        gpio_init
exit status 1
'adc_gpio_init' was not declared in this scope


Line in Problem

Hello,
I have a problem connecting to the output of my mixer. I can't get a reasonable level to drive the ESP32's input. Attempts to switch on a preamp brought no result. The proposed line circuit needs too high a level. What should I do ?
With the MIC MAX4466 there is no problem. But I don't want to use a MIC.

That was unsuccessful.
https://de.aliexpress.com/item/32960059477.html?spm=a2g0o.productlist.0.0.334a15bffeOFjb&algo_pvid=cbf4c21e-9e10-4301-ab81-e87346bcd13a&algo_exp_id=cbf4c21e-9e10-4301-ab81-e87346bcd13a-21&pdp_ext_f=%7B%22sku_id%22%3A%2210000015686407668%22%7D&pdp_npi=2%40dis%21EUR%2112.54%2110.16%21%21%21%21%21%400b0a050b16626698306171794ee7f8%2110000015686407668%21sea&curPageLogUid=ApJQoSVgHZSY

That was unsuccessful. I had tried several preamps.

Kind regards
J.Kommos

fft analizer peakdelay

Good afternoon dear friend. Please help me if possible.

How can I turn off the potentiometer peakdelay and write the delay only on the sketch... I mean, I want to turn off the potentiometer and write these numbers inside the sketch only, Thank you very much...

// read potmeters and process
Peakdelay=map(analogRead(PEAKDELAYPOT),0,4095,1,100);

Little to no response on display when using microphone input

The amplitude of most mics is to low. You can remove R10 and replace it by a wire or a resistor with a lower value.
On my prototype, I replaced it with a jumper by adding a drop of soldering tin where the resistor use to be.
Now, the microphone response is amazing

Channels <> Bins

I found this while looking for an ESP32 alternative to my Teensy-based dual channel analyser but was thrown when I realised that when you say 8-64 channels, you actually mean 8-64 bins or frequency bands. At least from an audio perspective, channels refers to the number of simultaneous inputs that can be processed.
Given the power of the ESP32, could it handle 2 simultaneous, multi-threaded transforms or is Teensy the only real option? I've been looking at the RPi Pico, which can handle ADC reads far quicker than anything else I've found, but I'm not sure about it's ability to handle the FFT,or even FHT for that matter.

Wrong RGB color

Hi guys,

so far everything works properly. One issue I've encounterd recently is that the HUB75 display which I've ordered online doesn't seem to have RGB output but instead GBR. Does anybody know how to change the code without needing to rewire the display?

Thanx your help.

cheers

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.