I have this logic level converter that only lets data flow when my multimeter is set to measure milliamps and the leads are placed across the high and low signal pins.

On the low side I have an altimeter (page 42 has relevant info), on the high side is a 5v arduino uno. I mocked them up in a protoboard and had to play around with the wires in their sockets but could eventually get the signal working. Once I soldered it in place, the signal was not making it across the LLC.

Here are some pictures of the actual LLC.

enter image description here

enter image description here

enter image description here

I stumped as to why it's not working when just sitting there, or when the signal leads are connected with the multimeter in volt mode, but the data flows just fine when the multimeter connects the signal leads in milliamp mode. I'm testing the data flow by outputting each character read from the serial port so I can view it in the serial monitor.

How can I fix this so it work more reliably?

  • \$\begingroup\$ Can you draw a schematic of how you're measuring that? When you say "the leads are placed across the high and low signal pins", it sounds like you're measuring current by shorting the high to low pins through the multimeter. Remember the multimeter is a short when you're measuring current. \$\endgroup\$ – Samuel May 14 '15 at 17:02
  • \$\begingroup\$ You got lucky :) In current mode, the multimeter probes act as a short circuit. It's common to blow the multimeter (or the device's output driver) by connecting them over a voltage source. Maybe this is a clue as to the behavior that you're seeing. \$\endgroup\$ – bitsmack May 14 '15 at 17:02
  • \$\begingroup\$ @Samuel that is exactly what I did. LV is attached to 3.3v coming from altimeter, GND on low side is attached to GND on altimeter, LV1 is attached to the TX coming from the altimeter, HV is attached to 5v on the arduino, GND on the high side is attached to GND on the arduino, HV1 is attached to RX (pin 0) on the arduino. Additional pictures of the setup can be found on this question but I switched out the LLC because the same thing was happening with the other one. \$\endgroup\$ – Nick Larsen May 14 '15 at 17:09

From what I can tell, this is your setup. If it is not correct, please edit it.


simulate this circuit – Schematic created using CircuitLab

It looks correct, the only thing that seems like a likely culprit is the soldering job. Those pins look like they all have cold solder joints. They'll feel solid, but aren't electrically connected. Try resoldering them, the joints should be concave, not convex.

A couple of other things to note:

  1. The bidirectional level shifter isn't actually required, since you have unidirectional data transfer, but it shouldn't hurt you either.
  2. Using a multimeter, you won't see any data. It's switching too quickly and should just appear as 3.3V (measuring voltage from B1L to Gnd) or 5.5V (from B1H to Gnd). If you want to see the data, you need an oscilloscope or logic analyzer.

You say this works when you "measure current" from B1L to B1H, what you're really doing is shorting them together, completely negating the level shifter. I can see how that might randomly work since the Arduino would be receiving 3.3V signals which might be enough to register as logic high. The problem with shorting these pins together is that you may inadvertently expose the altimeter to a 5V output from the Arduino, though that probably won't happen except during some initialization step.

  • \$\begingroup\$ This schematic is almost correct. The 3.3v is connected to the same 3.3v from the altimeter, not the arduino. The grounds are not connected either. All wires that come out of the left hand side of the level shifter go to the altimeter only and all wires that come out of the right hand side go to the arduino only. Does that matter? \$\endgroup\$ – Nick Larsen May 14 '15 at 17:41
  • \$\begingroup\$ To resolder them, do I just heat it up and let it get extra hot or is there something else I should be doing? \$\endgroup\$ – Nick Larsen May 14 '15 at 17:42
  • \$\begingroup\$ @NickLarsen I believe the grounds are actually connected together. I'll bet measuring the two ground pins on the level shifter will show you < 1Ω of resistance. It's fine to use either 3.3V source as long as the grounds are connected. The altimeter specifically says not to use its 3.3V pin. So the Arduino should be fine, but again, probably no different. \$\endgroup\$ – Samuel May 14 '15 at 17:45
  • \$\begingroup\$ @NickLarsen Add more solder from the opposite side you place the soldering iron. The iron should be touching both the ring on the board and the wire coming through. The solder should appear to suddenly wick through the hole when it's hot enough. \$\endgroup\$ – Samuel May 14 '15 at 17:46

You've got a multimeter set to a current range and you've got the probes connected across something else? Ouch! Sounds dangerous. That's one way to blow components up, if the positive probe for the multimeter is plugged into the current measuring socket on the multimeter. If the positive probe is still plugged into the socket for measuring voltage then you might be ok.

My recommendation is, don't ever do that again. Only put the multimeter on the current ranges if you really do want to measure current and you do so by putting the multimeter in series with, break the circuit, put the probes to measuring current connectors, put the range to a current range and then measure the current. Otherwise, DON'T use the current ranges on the multimeter. Learn to use the tools properly.

I accidentally put a multimeter across a 12 volt lead acid car battery whilst it was on a current range and with the red positive probe connected to the meter for measuring current. The result? In an instant the multimeter got extremely hot! A car battery will deliver 200 amps through the meter!

As another user posted, the solder joints don't look too good. I'd resolder them. And then I'd put the multimeter in to volt mode, ensuring the cables are correctly connected for measuring voltage and then I'd start doing tests again, and I'd discount any tests or observations made before with the meter set to measure current.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.