Closed gkasprow closed 5 years ago
Is it rev 1 board? That revision does not have ESD protection for I2C so the mux can be easily damaged by discharge. I2C has open drain ports without protection diodes.
From @hartytp on April 11, 2018 23:20
No, this is a v1.1 board.
AFAICT, the issue is with IC15 as that's the one that connects to the Si5324. I'll order a new part and try replacing it. But, it's not obvious to me how this could have been damaged.
From @hartytp on April 11, 2018 23:32
Best guess is that this is related to the grounding issues; if Kasli floats up to a high voltage when powered but not grounded (e.g. no USB) then it could be damaged by handling quite easily...
From @marmeladapk on April 12, 2018 8:55
@hartytp Could you look with scope on levels of I2C signals? IC13 could be damaged.
If there's a signal on USB I2C SDA and SCL test points (below JTAG connector) then IC13 works.
You can test it with:
class dio_test(EnvExperiment):
def build(self):
self.setattr_device("core")
self.setattr_device("i2c_switch1")
self.i2c_switch1.set(7) # 0 - 7
# + some loop with catching exceptions.
From @hartytp on April 12, 2018 9:9
@hartytp Could you look with scope on levels of I2C signals? IC13 could be damaged.
Yes, I plan to do that.
You can test it with:
Don't think I can. Without this switch ARTIQ can't program the Si5324, so it won't boot.
From @hartytp on April 12, 2018 9:16
But, I will have a look with @jordens's Kasli I2C tool.
From @marmeladapk on April 12, 2018 10:14
Ok, so then if IC13 works we expect signal on I2C SW SDA SCL test pads.
@gkasprow we had another Kasli v1.0 die like this today. It was removed from a rack and replaced, and only handled briefly. All supplies seem fine and AFAICT the only issue is the dead I2C bus. We will ask TechnoSystem to repair it...
Was this PCA9548 failed last time? How did Technosystem repaired it? They replaced this chip? Did it die just itself or after configuration of boards changed?
Sorry, I wasn't clear. This is a different Kasli (TechnoSystem replaced the old one with a Kasli v1.1 with higher speed-grade FPGA).
I think the board configuration was changed.
This is a v1.0 board (4HP FP), so IIRC it doesn't have ESD protection on the I2C. So, maybe this is just a good old ESD issue, but normally England is too wet for that.
ESD is one issue, mains filter EMC filter capacitors charge is another issue that can kill such chip
From @hartytp on April 11, 2018 22:4
One of my Kasli boards is now showing up this error on boot "panic at src/libcore/result.rs:906: cannot initialize Si5324: "PCA9548 failed to ack write address"
Copied from original issue: sinara-hw/sinara#540