Problem with IRAM

l.wuyts
Posts: 7
Joined: Wed Mar 24, 2021 12:48 pm

Problem with IRAM

Postby l.wuyts » Tue Mar 30, 2021 9:04 am

Hello everyone,

I'm trying to make an application which plays an mp3 file from flash (spiffs) to I2S and at the same time is able to use Bluetooth and WiFi.
I read on the reference pages, when this is required, PSRAM is needed. I've enabled PSRAM and the ESP32 recognized it. When I try to compile my application with Bluetooth and WiFi enabled and using provisioning, I get the error that the IRAM is too small and that it is 20kB oversized.

When I compile without provisioning, it compiles OK, but the IRAM is already almost full. Is there any fix for this?
This is the memory usage sorted by IRAM.

Code: Select all

Archive File DRAM	 .data	 .bss	 other	 IRAM	 D/IRAM	 Flash code	 rodata	 Total
libpp.a			1262	0	0	20769	0	34991		4485	61507
libfreertos.a		4140	792	0	15523	0	244		2091	22790
libesp32.a		80	128	0	12564	0	15102		21683	49557
libnet80211.a		1038	0	0	11664	0	97783		21548	132033
libsoc.a		216	4	0	10885	0	8872		2999	22976
libspi_flash.a		1629	294	0	8136	0	1678		1638	13375
libphy.a		1621	675	0	7837	0	32190		0	42323
libc.a			41	8	0	6761	0	61276		4195	72281
libesp_ringbuf.a	0	0	0	4469	0	0		615	5084
libheap.a		305	8	0	3940	0	1707		1062	7022
libcoexist.a		1999	28	0	3580	0	4273		303	10183
libesp_system.a		1901	29	0	3293	0	335		203	5761
libdriver.a		171	109	0	2389	0	30520		10339	43528
librtc.a		0	4	0	1697	0	0		0	1701
libesp_timer.a		16	104	0	1403	0	1064		832	3419
libnewlib.a		190	272	0	1007	0	1094		80	2643
libcodec-utils.a	0	0	0	699	0	165		0	864
libxtensa.a		0	0	0	580	0	0		69	649
libesp_wifi.a		536	69	0	535	0	5762		3207	10109
libesp-mp3.a		0	0	0	465	0	17394		12134	29993
libhal.a		0	0	0	443	0	0		32	475
libesp_common.a		169	159	0	305	0	2388		6620	9641
liblog.a		8	272	0	276	0	844		161	1561
libpthread.a		16	12	0	239	0	811		493	1571
libapp_update.a		1	12	0	224	0	179		470	886
libgcc.a		8	12	0	193	0	5835		872	6920
libesp_ipc.a		0	56	0	192	0	441		106	795
libmbedcrypto.a		64	33	0	30	0	49763		4215	54105
(exe)			0	0	0	3	0	3		12	18
libvfs.a		308	48	0	0	0	6547		1026	7929
libaudio_hal.a		76	8	0	0	0	2928		2805	5817
libefuse.a		52	4	0	0	0	1209		740	2005
libHAL.a		52	0	0	0	0	421		108	581
liblwip.a		21	0	0	0	0	88600		15913	104534
libwpa_supplicant.a	12	844	0	0	0	46142		3782	50780
libesp_netif.a		12	25	0	0	0	6170		2346	8553
libstdc++.a		8	20	0	0	0	2680		1044	3752
libm.a			4	0	0	0	0	6590		75	6669
libspiffs.a		0	12	0	0	0	24889		1559	26460
libnvs_flash.a		0	24	0	0	0	15399		3018	18441
libaudio_pipeline.a	0	4	0	0	0	10209		3586	13799
libesp_processing.a	0	0	0	0	0	7985		2396	10381
libmain.a		0	246	0	0	0	3681		1526	5453
libesp_peripherals.a	0	12	0	0	0	3366		1417	4795
libesp_event.a		0	4	0	0	0	3392		1185	4581
libaudio_stream.a	0	0	0	0	0	3164		1165	4329
libaudio_board.a	0	4	0	0	0	1067		702	1773
libsoc_esp32.a		0	0	0	0	0	0		1530	1530
libaudio_sal.a		0	0	0	0	0	489		586	1075
libcore.a		0	29	0	0	0	609		228	866
libbootloader_support.a	0	0	0	0	0	752		20	772
libtcpip_adapter.a	0	17	0	0	0	228		0	245
libcxx.a		0	0	0	0	0	11		0	11
libAppError.a		0	0	0	0	0	0		0	0
libdisplay_service.a	0	0	0	0	0	0		0	0
libesp-aac.a		0	0	0	0	0	0		0	0
libesp-ogg-container.a	0	0	0	0	0	0		0	0
libesp-opus.a		0	0	0	0	0	0		0	0
libesp-tremor.a		0	0	0	0	0	0		0	0
libesp_adc_cal.a	0	0	0	0	0	0		0	0
libesp_dispatcher.a	0	0	0	0	0	0		0	0
libesp_eth.a		0	0	0	0	0	0		0	0
libfatfs.a		0	0	0	0	0	0		0	0
libmbedtls.a		0	0	0	0	0	0		0	0
libmbedx509.a		0	0	0	0	0	0		0	0
libmesh.a		0	0	0	0	0	0		0	0
libsdmmc.a		0	0	0	0	0	0		0	0

Who is online

Users browsing this forum: Baidu [Spider], Google [Bot] and 325 guests