programming I2C peripherals on the same board as a SigmaDSP ?
I have a board with an ADAU1452 and some ADCs and DACs that are all connected by I2C to an external controller.
During development I would like to control the ADC and DACs from SigmaStudio - though not from the 1452 as these peripherals are on the host side of the 1452.
I thought there was a generic I2C peripheral 'chip' I could add to the Hardware configuration page of SS, wire it to the USBi with the chip's i2C address, and then point it at an .xml file for the i2C sequence. I can do this in an A2B schematic, but I can't find the equivalent to use with a SigmaDSP.
Thanks for any pointers/suggestions.
Brewster
Audio Signal Processors
adau1452
i2c
peripherals
SigmaDSP Audio Processors
SigmaDSP
Show More
Hello Brewster,
You are correct in that we do not have a generic part we can drag into the project. We have a lot of the building blocks like the Control UI that could be used with it but we do not have that all together. We only have our own ADCs and DACs in the library. Now, that said. I did think about this and I may have a way to do this. This is not really tested and I do not have the cables here with me to test this.
You can drop in one of our DACs and ADCs into the configuration. You then can click on the USBi entry for that part and change the chip address.
So this will connect SigmaStudio with the part. Then go to the register controls and click on any button to get one message in the Capture window. Then copy that message over to the sequencer. Then you can edit the sequence to send whatever you like to the part. It will be IC3 or IC4 etc. You can setup different modes for different parts or command sequences. Then these can be saved out to XML files.
The only problem I see with this is that when you click Link/Compile/Download, SigmaStudio will send all the register settings for those parts which would be a mess because the registers will not be correct.
With I2C you just cannot disconnect them when you compile then reconnect them. Actually, that might work... you would get the comms error but then it would clear up after you reconnect and send your sequences over.
Like I said, I am not able to try this right now but feel free to experiment. This is not something I have ever tested.
Dave T
Hi Dave,
That's probably a bit more awkward than what I'm currently doing, which is having a second schematic where the hardware page has the A2B device on it, then in the schematic I can do this (this is not an A2B system, I just did this to program the ADCs)
I saved the sequence to an .xml file for each device. Though I get some error from the A2B block (besides it not being found) the generic peripheral blocks work. Though they run in the wrong order for program on startup. I think there's a trick to reorder them but I can't remember/haven't found it, but I can manually load the sequences.
Works well enough for bench use and eventually a micro will deal with this.
Thanks for thinking about what might be possible.
Brewster
Please log in to reply.

