ΣSigmaStudio Ask AI Русский Log in

ADAU1452 suitable SPI EEPROMs

SigmaDSP & SigmaStudio JeroenRoth Aug 8, 2023 00:00 8 replies Original on forum ↗
Subscribe
JeroenRoth Question
Aug 8, 2023 00:00

I want to go with a bigger EEPROM than what is used in the EVAL board to be safe with large FIR filters. I cannot find much information about which specifications to look for.

I thought 25CSM04T-I/SN would work, but it doesn't selfboot. Some facts about the implementation/testing:

Selfboot was disabled during write trough DSP.

The instructions are the same as 25AA1024, but the chip erase instruction is missing. There are extra features that will not be used.

The schematic is the same as the EVAL board, SS_M has a 10k pullup.

The I2C slave port is used for programming.

I tried several settings, but I think these should be correct?

Can anyone see what I'm missing?

If the EEPROM simply won't work, some pointers to what I should look for would be great. Even better would be MPN suggestions.

Jeroen Roth

Audio Signal Processors

adau1452

Audio Products

hardware

ADAU1787

spi

eeprom

Integrated/Special Purpose A/D Converters

sigmastudio

SigmaDSP Audio Processors

size

Audio CODECs

Show More

pastedimage1691485137484v1.png
pastedimage1691485137484v1.png
Harishgowtham Reply
Aug 8, 2023 00:00

Hello Jeroen Roth,

One thing I can see quickly in your screenshot is that you set 'number of address bytes' as 2. But you are using a 4Mbit EEPROM so you must need three bytes (24 bit addressing) to represent those entire addresses of the memory. Please change that sub address bytes to 3 and see whether it boots.

Regards,

Harish

JeroenRoth Reply
Aug 8, 2023 00:00

Hi Harish,

Good catch! I just tested it, unfortunately it doesn't get selfboot working.

I'll add the schematics to be sure I'm not making a mistake elsewhere:

Jeroen Roth

pastedimage1691513339682v1.png
pastedimage1691513339682v1.png
pastedimage1691513558177v3.png
pastedimage1691513558177v3.png
Harishgowtham Reply
Aug 9, 2023 00:00

Hello Jeroen Roth,

Are you using an interface read and write module from master control port in your project?

If you are then we have to modify something that I will discuss based on your reply.

If you are following the Eva board schematic, then mostly it wouldn't be a problem.

Please help us by attaching your project in your next reply. we will discuss further.

Regards,

Harish

JeroenRoth Reply
Aug 9, 2023 00:00

Hi Harish,

I am not and will not be using an interface read and write module from master control port.

The current project is very simple and is meant to easily test selfboot:

0.25Hz 50% duty cycle pulse oscillator to MP7

MP0 set as SS.

MP7 set as output with pullup.

Scope connected to MP7 to see if the program boots.

USBi:

Slave control port HW config is set for I2C 0x70 (both address pin low)

Master control port HW config is set for SPI according to the EVAL schematics.

MP0 is connected to the SPI EEPROM CS pin.

Here are the settings I used:

Additionally it might be good to know that the plan is to use one ADAU1452 and one ADAU1787 (with level translator) on the same I2C bus to allow programming from one project without sacrificing an extra pin for a second SS.

Jeroen RothSelfboot test.dspproj

pastedimage1691580892456v1.png
pastedimage1691580892456v1.png
JeroenRoth Reply
Aug 11, 2023 00:00

Hi Harish,

I don't mean to rush you, but I would appreciate it if you could take a look at my reply.

Thanks!

Jeroen Roth

Harishgowtham Reply
Aug 11, 2023 00:00

Hello Jeroen Roth,

Your project works fine for me, I exactly simulated your set up. So, we need to take a good look at the connections and all.

I found few threads related to EEPROM issue and solutions from Dave. That I will link here and here.

Make sure and verify that your self-boot pin is in low state while the EEPROM is written.

I haven't taken a good look at your schematics since you are following Eval boards design.

If nothing worked, then we should probe the SPI line and see what's happening.

Just try this and get back to us.

Regards,

Harish

JeroenRoth Reply
Aug 11, 2023 00:00

Hi Harish,

I got the boards to selfboot today.

I had already checked RESET, SELFBOOT, SS_M and the SPI signals (if the signal on each pin was present). But after your comment I realized the one thing left that most likely differs between our boards must be the oscillator frequency. 12.288Mhz is often used and is default, but I am using 24.576Mhz. I knew I had to sort that out, but I thought I could leave it for later assuming everything would just run fine but at double the speed from what is set.

Selfboot worked after changing the divider to 8 instead of 4, but when running "Check Last Compilation trough DSP" I got the following message:

I had a feeling it might have to do with the missing chip erase instruction in the 25CSM04T-I/SN, so I changed it out for W25Q80DVSNIG, which others here have succesfully implemented. Now the "Check Last Compilation trough DSP" was succesfull in addition to working selfboot.

I used the following settings for the W25Q80DVSNIG:

Thank you for your help Harish!

Jeroen Roth

pastedimage1691775696621v1.png
pastedimage1691775696621v1.png
pastedimage1690839929876v1.png
pastedimage1690839929876v1.png
Harishgowtham Reply
Aug 14, 2023 00:00

Hello Jeroen Roth,

I'm glad that you found where the problem is. Thanks for taking your time and reporting this back.

Regards,

Harish