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

ADAU1860 Safeload and usage of memRead / memSignalWrite blocs in FDSP

Processors & DSP Sbr747 Jun 24, 2026 00:00 3 replies Original on forum ↗
Subscribe
Sbr747 Question
Jun 24, 2026 00:00

Dear all,

I'm usign the ADAU1860 for an audio application (headphone). The FDSP is configuerd from Lark, .c.h files compiled, loaded at startup by i2c from stm32 MCU. This part is OK.

I would like to use in FDSP, blocks "memRead" and "memSignalWrite" to create a "signal" loopback, to be sure that the FDSP is running well - I cannot use the TDSP...

As I know, it's possible to use safeload process to change the "signal" value in the memSignalWrite, wait a time, read the "signal" from the "memRead" block.

I don't found documentation about these mem blocks.

Thanks in advance for your help.

Best regards.

Thread Notes
Sbr747 - Moved from Audio to Processors & DSP. Post date updated from Wednesday, June 24, 2026 3:07 PM UTC to Thursday, June 25, 2026 6:59 AM UTC to reflect the move.

Sbr747 - Moved from Audio to Processors & DSP. Post date updated from Thursday, June 25, 2026 6:59 AM UTC to Thursday, June 25, 2026 6:59 AM UTC to reflect the move.

software

processors and dsp

Processors and Microcontrollers

5050.pastedimage1782312971406v1.png
5050.pastedimage1782312971406v1.png
JoseDiaz Reply
Jun 25, 2026 00:00

Hi!

On the getting started Guide you can get a few more details but to be honest not a lot of them.

Those functions allows you to read or write from the FDSP memory. The Mem Address means the instruction number and the the select is the parameter. For instance P1BA means P1 from Bank A.

Hopefully this helps you, although I'm not sure how you plan to implement the loopback.

Regards, Jose

Sbr747 Reply
Jun 26, 2026 00:00

Hi,

It's work!

For my application, I need only to use BankA or BankB.

I use a memRead pointing on P4BC of a free memory address 62 connected to a memSignalWrite pointing on P4BC of another free address 63.

That means the memory of unused BankC P4BC@62 can be configured by I2C with a value (osTick of the STM32 for example), then the FDSP copy it during the audio computing, and finally, the value can be check in P4BC@63 by I2C... If the stm32 performs the check every 50ms for example, we are sure that the FDSP is running wheel.

If FDSP is crashed, the value in P4BC@63 still the same or is corrupted, and the stm32 can reboot the full ADAU...

Thanks for your help, Jose

pastedimage1782481758376v2.png
pastedimage1782481758376v2.png
JoseDiaz Reply
Jun 30, 2026 00:00

Hi!

Now I understand better what you were trying to do.
I'm glad to hear that worked for you!

Regards, Jose