I have project that uses a cheap DC SMPS (the low cost fixed-voltage metal enclosed units you see all over Ebay).
The circuit ultimately drives a couple of local relays whose output is interfaced outside the module, so I saw no reason to tie the ground of the circuit to anything, allowing it to simply float.
The supply itself has worked great, but I ran into an interesting problem: With some regularity, I found that I had a problem getting my programmer (an STLink V2) to program the MCU. It gave odd verification failure problems, and flash programming errors. Sometimes to the point I had to leave the module for a period of time (hour, next day) then try to reprogram. I even replaced some of the microcontrollers thinking this was an issue with the IC.
After a number of attempts to solve the problem, I finally found something that worked: If I used a jumper to hook the ground of the programmer to earth ground from the mains, and it alleviated the problem.
In my mind, the fact that the DC circuit was floating, and that I was programming through a non-isolated programmer, the programmer, upon being installed, would immediately tie the ground of the circuit the ground of my laptop. These programming issues seem to hint otherwise. My benchtop supply is floating, and I never have had a problem like this after years of powering all types of prototypes with no ground tether.
So I give this back story to ask the question: Ideas on why this has become a problem? Are these cheap SMPS supplies not really isolated? As a rule, is there some reason not to leave these circuits floating?
The circuit ultimately drives a couple of local relays whose output is interfaced outside the module, so I saw no reason to tie the ground of the circuit to anything, allowing it to simply float.
The supply itself has worked great, but I ran into an interesting problem: With some regularity, I found that I had a problem getting my programmer (an STLink V2) to program the MCU. It gave odd verification failure problems, and flash programming errors. Sometimes to the point I had to leave the module for a period of time (hour, next day) then try to reprogram. I even replaced some of the microcontrollers thinking this was an issue with the IC.
After a number of attempts to solve the problem, I finally found something that worked: If I used a jumper to hook the ground of the programmer to earth ground from the mains, and it alleviated the problem.
In my mind, the fact that the DC circuit was floating, and that I was programming through a non-isolated programmer, the programmer, upon being installed, would immediately tie the ground of the circuit the ground of my laptop. These programming issues seem to hint otherwise. My benchtop supply is floating, and I never have had a problem like this after years of powering all types of prototypes with no ground tether.
So I give this back story to ask the question: Ideas on why this has become a problem? Are these cheap SMPS supplies not really isolated? As a rule, is there some reason not to leave these circuits floating?