I want to design a circuit for 100V loudspeaker line control. I want to periodically check if the line is short circuit or open circuit and receive notifications in case of any short/open circuit. I'll be using STM32F4 to do this and have a few ideas, but need to get precise results and I thought I would need to apply several methods at the same time. The first is to add a signal that is not in the 20 Hz and 20kHz range to the output and check the presence of this signal at the end of the loudspeaker line. However, I am not sure what kind of circuit I need to establish to measure this clearly at the end of the line. Even if I do it with RC LP or HP circuit, how can I check with the STM32 the presence of the signal I added? Another method is to measure impedance, but I don't know how to measure impedance. How can I measure impedance with the lowest budget? I think it is more accurate to measure without sending a signal, but I am not entirely sure if there will be any negative effects. Is it sufficient to check with a single method? Which method should I choose if you think it will be sufficient?

  • \$\begingroup\$ To be clear, you want to detect a short circuit at the loudspeaker end or the amplifier end of the cable? Transistor's idea involves putting circuits at both ends \$\endgroup\$ – user253751 Mar 16 at 9:36
  • \$\begingroup\$ After the 100V line coming out of the amplifier is distributed to the loudspeakers, I want to see if that line is short/open or has no problem. \$\endgroup\$ – Can Mar 20 at 11:06
  • \$\begingroup\$ You could measure the current and voltage going to the speaker and therefore calculate the impedance. \$\endgroup\$ – user253751 Mar 20 at 13:05

I'll be using STM32F4 to do this ...

This is a bit like "I want to make a pavlova. I'll be using carrots . Which recipe should I use?"

A much simpler solution would be to add 0.5 to 1.0 V DC on the line at the amplifier and monitor that at the far end.


simulate this circuit – Schematic created using CircuitLab

Figure 1. Line monitoring circuit.

  • U1 injects some DC onto the speaker lines. This will cause a little heating in the speaker transformers.
  • C1 / R1 allow the audio to bypass the DC supply.
  • U2 will monitor the DC supply. C2 / R2 filter out the audio.

I have never worked on a design such as this but the principal is used on several systems.

  • 1
    \$\begingroup\$ +1 for the pavlova \$\endgroup\$ – Damien Mar 16 at 8:28
  • \$\begingroup\$ Thank you for your response but I don't want to add DC into the speaker line. If I add 1 Volt DC - and I've used this method before - I also need to add a DC blocking to each speaker, but I want to find another way. \$\endgroup\$ – Can Mar 20 at 11:16

I've done testing of multicores with multiple 100V line circuits using a signal around 100kHz, which turned out to be the more-or-less maximum impedance of the resonant circuit formed by transformer and cable capacitance. It made it possible to do a shorts/open test with transformer and various other stuff in circuit. Actually worked very well.

In theory you should be able to adapt this to work with signal present, but you would need some fairly clever LC filtering to avoid driving HF back into the amplifier output, which would certainly screw the measurement, and possibly cause magic smoke. Also to keep audio out of the detector circuit.

Afterthought edit : NOTE if your power amps are class D (very common these days) you're probably not going to get away with this or it will be harder. Those things already chuck out a lot of HF and you will likely need to filter that, and/or use a very carefully chosen test frequency.

Idea would take some adapting and developing but probably can be done. Note though that it's an analogue design problem to figure out and validate a an interface circuit that has an output (maybe analogue voltage, maybe comparator output or the like) which can interface to your microcontroller.


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.