I tried to build an open-source (and unfortunately not longer maintained) USB Audio interface (https://github.com/freeDSP/freeDSP-INFINITAS).
The project is built around a XMOS chip XE216-512 and a Lattice MachXO2 FPGA. While I did not thoroughly study the project's code/schematic, I believe the XMOS is handling the USB to I2S (or other protocol) conversion, and the FPGA manages the routing of audio channels to and from the external ADCs and DACs (located on an extension board that I still haven’t build).
I successfully assembled the PCB and flashed the two chips. Upon connecting the board to my computer, it initially functioned (Windows detected a new USB device called Infinitas) but just for a bunch of seconds. After subsequent tests, involving different computers and different USB cables, I noticed that one of the voltage regulators on the board caught fire.
The board contains three voltage regulators in SOT23 packages: two are used for the XMOS chip (3.3V and 5V) and one (3.3V) is used for the FPGA and its associated circuitry (a CS2100, and a pair of PCA9545A).
The regulator that caught fire was the 3.3V regulator used for the FPGA/CS2100/PCA9545A, a NCP1117LP.
I noticed that the FPGA was dead after the incident, and there was a short between 3.3V and GND, even after removing the dead regulator. Removing the FPGA from the board resolved the short. I have since acquired and soldered a replacement FPGA and a new voltage regulator (LDL1117S33R, should be equivalent), but before powering it up, I have some questions:
- do you think the regulator died because I used 12V DC input (that's what the project documentation calls for), and the 3.3V regulator needed to dissipate too much heat for this large voltage gap? The input voltage is solely directed to the three aforementioned regulators, and I guess that 7V-8V would suffice for 5V and 3.3V regulation, resulting in less heat generation.
- what else could have caused the chip to die? I checked for shorts all over the PCB before the first power up, and everything seemed fine. Also, the flashing of the FPGA was successful.
- since I still haven’t build the associated expansion ADC/DAC board, do you think a reason why the FPGA could have been damaged is because no ADC/DAC were connected to its data bus?
- apart from damaging the old FPGA, is there a possibility that I also damaged the CS2100 and the PCA9545A chips? Is there a way to determine, from their datasheet, if they have a sort of protection that the FPGA didn’t have for this sort of incident?
- if those two chips are indeed damaged, is there a possibility that they could now damage the new FPGA and the new regulator, or both?
sorry for my somewhat paranoid concerns about the FPGA chip, but since I don’t fully understand what happened when the regulator died, and why the old FPGA died too, I’m now trying to take care of this new (pricey) FPGA chip