-
Notifications
You must be signed in to change notification settings - Fork 263
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Powersaving potential? #728
Comments
This one i don't understand: https://www.esp32.com/viewtopic.php?t=3176 but finally this may be useful. Someone used APLL (without quality luck, but maybe it won't be our case: |
@schreibfaul1 , any hope for update? |
I don't think so. I2S_CLK_SRC_APLL no longer exists in IDF V5.1. (or I can't find it?) |
I'm trying to find this for You: here is some interesting structure:
Here, function i2s_set_get_apll_freq:
Here in i2s_driver_config_t use_apll:
Clock config in
This test_app might be very interesting: https://github.com/espressif/esp-idf/blob/636ff35b52f10e1a804a3760a5bd94e68f4b1b71/components/esp_driver_dac/test_apps/dac/main/test_dac.c#L297 @schreibfaul1 , I'm trying to help You at my best since it would be awesome for my solution (lowering CPU freq gives me around 30 mA (well, I should use REAL multimeter and I will, but currently I'm measuring on cheap USB power meter. So it might be 21 or 39 mA aswell xD). |
@schreibfaul1 , shameless bump! |
I do not know where actually I've found stuff that helped, but now I almost can use this in Audio loop:
it hangs after short while but no choppy sound! This is what I modified in Audio.cpp:197
|
After alot of messing I got this (only important things to show idea: As setup:
"loop" part:
In debug message I get:
Output is corrupted due to often change of cpu freq. But the conception seems to be corrent, is it? Is it possible to split PSRAM memory (buffer) filling and DMA stuff? Is this correct? |
This issue is stale because it has been open for 30 days with no activity. |
Hi!
I'm building portable audio player. I am wondering is it possible to reduce somehow power consumption.
I was wondering about lowering cpu frequency, but even with 160MHz sound gets choppy.
I had an idea to do something like this:
but it also does not work - sound gets choppy. I know i2s does some stuff behind, but I thought CPU frequency won't affect this. I was wrong, but I do not understand why.
I've checked what happens, and with lower CPU APB works on 80MHz:
So the problem must be somewhere else. According to https://docs.espressif.com/projects/esp-idf/en/stable/esp32/api-reference/peripherals/i2s.html (I2S clock section) clock can be sourced from APLL:
I do not know how ESP32-audioI2s is configured now, but maybe it is the way to reduce some power usage here - by safely reducing CPU clock? My CPU does have plenty free time as everything non-audio-crucial was moved to core 0.
Also, I've found this topic: https://www.esp32.com/viewtopic.php?t=14185, but it is way over my undestanding possibilities ;)
Best regards.
The text was updated successfully, but these errors were encountered: