Closed paulreimer closed 4 years ago
Have you tried the latest version of the programmer software on github (easypdkprog v1.1)?
I changed the voltages in "fpdkicdata.c" for PFS173 a bit (especially WRITE CMD voltage) which improves the situation a bit.
-
To debug the hardware there is an extra program called "easypdkprogtest".
Compile it with "make easypdkprogtest" and the execute it (with no IC attached).
It outputs 5V on VPP and VDD and uses internal ADC to measure it.
When you execute it write down the measurements reported from easypdkprogtest and also measure VDD and VPP with a multimeter.
Expectation: All values should be very close to 5V. If not you should check that after the 2 diodes you get -2.4V when easypdkprogtest is running (check schematics and measure with multimeter). This is the negative reference for the opamp. In case the diodes are wrong / damaged / not soldered properly you get a wrong negative reference voltage which would explain wrong / shifted output voltages for VDD / VCC which could cause the problem you describe.
Another cause could be the crystal / decoupling caps next to crystal are not soldered properly.
I assembled over 30 pcs now and all of them are working perfectly.
Thanks for your help with debugging this! Super helpful to have the easypdkprogtest
and happily I do have several boards that are working well to compare against.
easypdkprogtest
and the working boards have ~5V for both VDD and VPP. The bad boards have ~13.66V for VDD and ~5V for VPP (multimeter confirms this at the IC pins).So now I'm wondering about the opamp (maybe that needs to be replaced?), and also about the xtal as you suggest (but continuity test seems good.) If you have any other pointers, please let me know! I'm already feeling a lot better knowing that I can confirm some of the symptoms with easypdkprogtest
.
Hi,
* I ran `easypdkprogtest` and the working boards have ~5V for both VDD and VPP. The bad boards have ~13.66V for VDD and ~5V for VPP (multimeter confirms this at the IC pins).
This explains everything.
Just to be sure. You measure +13V on VDD and +5V on VPP ? This scenario is almost impossible and could be caused by wrong resistor values on the DAC lines only.
* I checked the voltage w.r.t. GND for diodes D2 + D3, and they appear to be similar for both the good boards and the bad boards (-2.7v D3<->GND, and 0.0v D2<->GND, -1.5v<->GND for both diodes on the shared side). I'm not sure where to probe to find 2.4v.
I said -2.4V, you measured -2.7V which is ok as negative reference for the opamp (anything less than -2V is fine).
So now I'm wondering about the opamp (maybe that needs to be replaced?), and also about the xtal as you suggest (but continuity test seems good.)
The XTAL + decoupling caps just need visual inspection of soldering. If you say they are good then they are good. (The 13V problem has nothing to do with XTAL).
@paulreimer Could you solve your problem?
Thanks for checking @freepdk!
I checked the resistor values and they all seem to be correct, the value varies somewhat maybe due to low-ish tolerance, but it doesn’t seem like any values were swapped or shorted. I’m not sure what else to check, but I might order extra parts from LCSC and try to replace the STM32 or op-amp and see if that helps?
Feel free to close this issue if there’s nothing else to check (maybe I cooked the boards a bit too much). I can post something if I learn more about this issue.
@paulreimer Better to find the cause so others can participate from it. I have something like a "troubleshooting" document in mind.
Here a first start:
Reference voltages when running easypdkprogtest:
+-------+
| O |
(DAC-VPP) 1.18V -> |5 P 4| <- -2.7V
1.18V -> |6 A 3| <- 2.49V (DAC-VDD)
(VPP) 5.0V <- |7 M 2| <- 2.49V
14.9V -> |8 P 1| -> 5.0V (VDD)
| .|
+-------+
Please measure the voltages on your non working boards and report back.
After assembling several boards (over 50% working perfectly!) I have an issue with the other 40%, and I haven’t been able to fix it (by metering signals, reworking some parts, etc).
Specifically, while the USB->STM32 works and the programmer is detected, I get “wrong icid” when trying to flash a PFS173.
Can you suggest what parts/traces to check that might cause this? (shorts, unconnected pins, diodes in the wrong orientation, etc)? It would be great to get those boards working and/or understand the likely causes for future builds.