Forum Rule: Always post complete source code & details to reproduce any issue!
Teensy 3.1 Voltage issue
Hi, I am using a linear position transducer to detect modulation in the widths of cracks.
I have two identical circuit designed for the teensy 3.1. one is on breadboard, and the other is soldered to a breadboard style PCB
The breadboard circuit is fully functional, but the PCB circuit seems to have some issue with voltage. The result is that the SD card will not initialize.
I did some tests. On the breadboard the circuit is running on 5V. On the PCB the circuit is running on 2.7 V. Also it looks like the SD card on the breadboard is receiving 3.0 V, and on the PCB it is receiving 1.0 V.
Any idea how this is happening? Any suggestions on how to fix it?
I already tested every continuity connection, and there is no mistakes. Although, the soldering job is a little messy, it doesn't have any bad connections or any unintended ones.
Also, I know it has nothing to do with code, I am using the same code for each.
If it would help I will take picture of each and post them.
Thanks in advance for any advice you can offer
It's essentially impossible to figure out what might be wrong from the description alone. It's most likely a bad connection (maybe a tiny solder bridge?). Another possibility is that you've blown something up... Measure the overall current draw of both circuits and compare. High res photos of the setup might help, but still without actually holding the things in you hands it's pretty hard to debug such a problem.
Specifying that you are using the same power supply (or not), set the same way, for each version would help us help. Giving us at least an overview schematic and indicating which nodes you are measuring those voltages on would also help us help.
Assuming you are feeding both circuits from the same power supply (or at least extremely similar supplies) then this problem may be a short circuit and that short can be inside an IC but statistics I have gathered make me think it is across a pair of hand soldered joints or a joint to a via, could be a pair of vias shorted together by poor set up over a wave soldering machine or really careless use of a soldering iron. Less common but there is a slim chance that a track on the PCB is behaving like a resistor by being malformed - much less likely in your case imho but fairly well entirely dependent on whether or not the same power supply is used to test both circuits and where exactly in the circuit you are measuring voltages; if measuring at the entry points (ie., at power supply and not mid-circuit) then output voltage being pulled low indicates short pretty much every time.
If you measure ohms across GND and VIN (your VIN, where you attach the 5V supply to your circuit) on the bread board version of your circuit and find a resistance higher than the resistance you find across those two points on the PCB version then a short circuit on the PCB is indicated. If these measure the same (I'll eat my hat, but) then using a power supply with a current meter can show you whether or not the PCB version pulls more current - if PCB pulls more current it is more likely to be a short but it is a trickier one if it doesn't show as differing resistance across the major power rails, if PCB pulls less current then unplanned resistance is more probable.
A dirty trick for 'popping' a short you decide must exist but you cannot find is to get a 'lab' power supply and set it to one volt at low current whilst not connected, connect in correct polarity, observing that the current clip becomes active roll the current control upwards (probably best don't exceed ~3A) till either current draw suddenly falls or smoke exits any portion of the circuit - if current draw falls disconnect and test ohms across power rails, if measuring nearer target then try the circuit as if new; If smoke exits any portion of the circuit then examine where the smoke left, if it was a track burning out then the short is still intact on that track on 'the far side from VIN' to that track.
That dirty trick is risky, I was taught it by an electronics engineer I respect and admire and it has worked out nicely in two out three occasions (that I can remember right now) I used it - it fried an expensive chip on one of the circuits I gave in and tried it on (nailed the short as well tho :P)
If none of the above finds the fault for you then comparing resistance between GND and various nodes in the circuit on each version may help you find the fault; repeat this process comparing between VIN and various nodes if measurements between GND and nodes was extremely similar in both versions. When I reach this point without finding the fault I come down to suspecting devices (ICs) which only conduct like a short while power is applied. Oh, if you have any regulators tapping VIN to supply a lesser voltage (LDO in Teensy 3.x for example) then there is pertinence in checking the output pin of those regulators the same way as this paragraph advises to check GND & VIN.
If you suspect a device and you can detach it (read: desolder it carefully if it is not socketed) and find that the resistance between VIN & GND is more reasonable without it (or current drain is more reasonable, or voltage holds at supplied level) then that is near enough proof that the device in question is the problem - I've removed all ICs with connections to apparently shorted rails only to find a hair thick connection between things like vias and pads and feel pretty embarrassed for not spotting it before removing all them bits first - the one volt trick probably would have worked out OK on these occasions.
if you take fairly hi res pictures of both the top and bottom of the PCB there is a snow flakes chance in a really really hot place that somebody might manage to spot the problem remotely like this but, agreeing with tingo, it is nigh on impossible to debug such a thing without physical access to it.