Hello, so we have an application where we use two AD5270 and i can get one to talk to me but i can't get the other one to change it's wiper position from mid-scale or anything. i've tried on multiple boards and still one works and one doesn't respond or change wiper position at all. just not sure where i am going wrong. here is a scope trace and measurements of my timing. also sending commands 0x1C02 and then 0x0400 (i have also tried first sending 0x2400 but no difference)
T1 = 1000 nsT2 = 500 nsT3 = 500 nsT4 = 3360 nsT5 = 500 nsT6 = 500 nsT7 = 1860 nsT8 = 6.92 usT9 = N/AT10 = n/A
Someone is currently looking into this thread and will answer to you as soon as possible.
Could you share the schematic of the board that you are using? It would help me debug the problem better.
Thanks for the response,
Here is what i can give you here. if you need more we would love to work one on one with someone on this issue.
I think we found the problem. when i would talk to one of the AD chips, it would take control of it's SDO line (SDI on schematic below) and hold it low until it was power-cycled. So after every transaction with one of the AD chips i have to send 0x8001 and 0x0000 to tell it to put it's SDO line in high impedance mode. Making sure i did this when done sending commands to each chip would allow me to talk to others on the SPI bus and remove all of the undefined behavior we were experiencing with these chips. Also, we had to add an external 2.4K pull up on the bus because the PIC32MM internal pull up was not enough for this application.
Summary: If using AD5270/AD5174 on a SPI bus with others, when you are done talking to that chip send commands 0x8001 and 0x000 to have it release control of it's SDO line. Also if something has control of the SDO line while trying to talk to one of these chips it can cause undefined behavior.
hope this helps anyone else experience similar issue with these chips (AD5270/AD5174) and if you guys feel we've made any errors here please let us know. Also, i wish this behavior was pointed out better in the data sheet as it's been a bit of a headache to figure out.