Notifications
Clear all

Selecting larger Esp32 DevKit? Sketch uses 1553523 bytes (118%) of program storage space.

10 Posts
4 Users
0 Reactions
648 Views
(@js-drone)
Member
Joined: 6 months ago
Posts: 6
Topic starter  

Hello,

Please offer guidance on selecting one which will be able to compile on the DevKit.

I am still figuring out some of the basics I need to know for sketching, I am trying the DroneBot workshop for I2S audio. MY WROVER has Maximum is 1310720 bytes, too low. I am not finding specs on Amazon or other resources what Devkit will work. The tutorial doesn't explicitly say which device is being used. I have tried several XIAO ES32s3 and C3, also the WROVER, none of my boards have enough space.

 

This looks like an exciting project, but I need to figure this out rather than ship/trail and error.

🙂

 

I am considering this one:
WROOM

Looking at this tool, but I did not find a relevant metric, neither does Espressif AI chat.

https://products.espressif.com/#/

I would prefer a USB-C device if there's a product group.


This topic was modified 6 months ago 2 times by JS-Drone

   
Quote
Topic Tags
(@davee)
Member
Joined: 5 years ago
Posts: 2042
 

Hi @js-drone,

   I haven't tried I2S, so this comment could be total rubbish, and there maybe a suitable product that will meet your immediate needs, but your question prompted me to wonder, "Does the programme really need more than 1.5 Megabytes of program storage space?"

Obviously, it is possible to write correctly coded programmes that use any arbitrarily large amount of storage, so this may not be a relevant question.

But programmes that require a large amount of storage space sometimes benefit from an analysis of the space requirements, since it is often possible to extend the available storage, albeit with corresponding limitations of how the expansion space is used for. For example, space used for storing a large selection of images as 'data' maybe 'more flexible' about the type of storage space, compared to that required to hold the executable code. 

In short, I respectfully suggest you carefully analyse your storage space 'consumers'.

I would be surprised if you actually had a large enough programme to consume 1 Megabyte for 'pure programme code' storage, but a simple data declaration like:

  int myspace[900000];

would probably be very troublesome!

I have deliberately avoided going into the details, as I presently do not know if it is relevant, but if this is unclear, perhaps, you would like to provide more specific information about your programme, etc., in the hope someone will offer a solution to your problem.

Best wishes and good luck with your project, Dave



   
ReplyQuote
(@js-drone)
Member
Joined: 6 months ago
Posts: 6
Topic starter  

@davee Thanks for your thoughts. From what I have tried, the library is the cause. It's rather large and trimming the program down is a task beyond my current understanding of MP3 libraries. I tried using AI, and it suggested that the program is simplified already. I am using the sample code directly from the DroneBot project, so I expect that there's a DevKit that should work off the shelf using the same code.

To clarify, this is the specific project:
ESP32 I2S Project


This post was modified 6 months ago by JS-Drone

   
ReplyQuote
noweare
(@noweare)
Member
Joined: 6 years ago
Posts: 201
 

@js-drone

I think to get more space for your program you will need to change your partition scheme. I use the esp-idf not arduino so I don't know how to do it in the arduino ide. The 1.3Megs is a default but can be increased if needed as in your case.



   
ReplyQuote
(@js-drone)
Member
Joined: 6 months ago
Posts: 6
Topic starter  

@noweare ok, yes I have the Arduino IDE and the newer replacement for Atmel Studio. I am not familiar with the process, so it may be similar process. Might you time to offer a tutorial on YouTube on the partition system you know that works?



   
ReplyQuote
(@js-drone)
Member
Joined: 6 months ago
Posts: 6
Topic starter  

@noweare does it look like this partition tool will work to you?

 



   
ReplyQuote
noweare
(@noweare)
Member
Joined: 6 years ago
Posts: 201
 

You may get away with not having to create a custom partition. In the arduino ide  select tools-> partition and select "No ota" partition. This should give you 2M bytes for your program. 

You should be able to compile.

 



   
ReplyQuote
(@js-drone)
Member
Joined: 6 months ago
Posts: 6
Topic starter  

@noweare That worked great! I must have  a hardware problem because the internet radio did nothing, but the code did compile and upload as expected. Thank you!



   
ReplyQuote
noweare
(@noweare)
Member
Joined: 6 years ago
Posts: 201
 

Awesome, now the fun begins !



   
ReplyQuote
(@crazyman)
Member
Joined: 2 years ago
Posts: 8
 

So on my stereo project. I used a S3 N8R8. 

I used this audio library with it for mp3 and web radio stations.

GitHub - schreibfaul1/ESP32-audioI2S: Play mp3 files from SD via I2S

I also used a DAC and amplifier. It works wonderfully. Once the deep cold hits I plan on rebuilding it with a touch screen and remote.



   
ReplyQuote