6
\$\begingroup\$

After learning more about this problem, I have continued this question here.

I am trying to remove noise from an electric-guitar circuit that I have created called the ArduGuitar. My circuit comprises 2 opto-isolated parts: the audio circuit between the guitar pickups and the output jack, and the control circuit consisting of an Arduino Micro and a Roving Networks RN42 bluetooth module powered by a 9V battery.

A full description is available on the ArduGuitar webpage but in brief, I wrote an Android App that sends controls over bluetooth to the Arduino via the RN42 bluetooth module. The Arduino interprets the commands and adjusts PWM signals on its output pins to control Vactrol (LED-LDR) LEDs which change the resistances attached to the pickup outputs. Thus, I simulate potentiometers and switches, just as per an "normal" electric guitar circuit, while keeping the analog audio fully opto-isolated from the digital control circuit.

Globally, this works very well and I am happy with the result which I would say scores 90% of perfect.

However, despite the use of all shielded cables and a fully shielded RN42 bluetooth module, significant noise still gets into the audio and comes out the amp. This noise is of 2 kinds:

  • whistling: this is present as soon as the bluetooth is switched on. I have done extensive testing of the use of capacitors across VCC/GND to try to filter this but it all fails. This noise is not very strong, but significant;
  • clicking: at each data transmission, a click comes out over the audio. It is not very loud, but significant nevertheless.

I use all shielded cables and wiring internally on the audio circuit.

The noise level changes depending on where I position the Bluetooth module, and strangely, the best result seems to be when the module is inside the guitar electronics bay (which is unshielded). The worst result is when the bluetooth module is close to the guitar output cable that connects to the amp.

I have been working on the problem for several months and am now at a loss as to how to proceed...

I wonder how this problem is handled in wireless guitar systems?

Would anyone have any ideas as to how to reduce or eliminate this noise?

\$\endgroup\$
8
  • 1
    \$\begingroup\$ It's reproducible, so that's a big help. Do you own a scope? \$\endgroup\$
    – John U
    Sep 5, 2013 at 14:28
  • 1
    \$\begingroup\$ It's probably your amp but a little picture would help understand this better. If you wired your guitar as normal into your amp and used a bluetooth device near the amp do you get the same problem? \$\endgroup\$
    – Andy aka
    Sep 5, 2013 at 14:28
  • \$\begingroup\$ I would guess that the shielding was designed to keep out audio-frequency interference, rather than 2.4GHz. I would expect it shouldn't be hard to design a passive filter which would be effective at killing 2.4GHz but would have almost no effect on audio frequencies. I'm not sure of the normal impedance for a guitar input, nor do I know much about designing passive filters, but designing a passive filter to have minimal attenuation at 20KHz and good attenuation at 2.4GHz shouldn't be terribly difficult. \$\endgroup\$
    – supercat
    Sep 5, 2013 at 15:35
  • \$\begingroup\$ @supercat Guitars are a "Hi-Z," though I'm not sure what specific impedance counts as "Hi-Z" (I'd guess on the order of several kOhm) \$\endgroup\$
    – Shamtam
    Sep 5, 2013 at 16:58
  • \$\begingroup\$ Hi! Thanks for your remarks. I sort of own a scope, a DSO NANO. It's not very effective and I can't get much info from it... My circuit replaces potentiometers with pairs of vactrols. As to the amp, it does not pickup BT noise, for example, if I connect my arduguitar to the android phone via bluetooth, and put it near the amp, or near another guitar plugged into the amp there is absolutely no noise. So I'm not sure how the noise is captured by the guitar circuit. I did notice that the noise is less strong when plugged into to my Tweed Deluxe tube amp, compared to my solid state H&K... \$\endgroup\$ Sep 5, 2013 at 17:52

2 Answers 2

2
\$\begingroup\$

There are two ways to solve these types of problems. Either at the source and or hide the effect. Fortunately the whistling and clicking appears directly related to the RN42 and not the PWM's.

Note the HiZ inputs of the pickup coils are going to pick up everything. From Florescent Lights to the RN42 aliased noises. Typically a band pass filter is used at the point of observation or A2D. Where here your pickups are likely directly tied to the AMPs input. And a filter here is undesirable.

The RN42 is creating noise that is bleeding out onto the power supply and radiating to Pickup's. And shielding the pickup's is impractical. Rather one needs to filter out the noise from its source. My own experience with the RN42 has a lot of clicking in the audio connected circuits.

Recently Elektor's July & August 2013 had an article for Android Elektorcardi♥scope where it used an RN42 to send the result to the Android. Where it was littered with Filters on the power supplies to all the IC's. Below is the filter used on the RN42.

schematic

simulate this circuit – Schematic created using CircuitLab

Where the 30R@100MHz was used on other supply inputs with different capacitance. At DC it typically is under .2 Ohms, but with spikes and noises that will rise dramatically and react with the capacitance to block the noises.

\$\endgroup\$
8
  • \$\begingroup\$ Hi! Thanks for this! I'm sorry to be such a newbie, and not understand how it works - I have 2 or 3 questions: 1. I am running the RN42 on 5V, so would I be able to use the same circuit or would the values be different? Also, C2=10F, are you sure? That sounds HUGE? 2. Would I need to put another one of these filter circuits on the Arduino VCC (coming from a 9V battery) ? And if I power other IC's from the Arduino 5V output, would I need still more filters? Thanks SO MUCH for your help ! \$\endgroup\$ Sep 8, 2013 at 13:14
  • \$\begingroup\$ @gratefulfrog - Are you sure you're running the RN42 on 5V? It's absolute maximum supply voltage is listed as 3.6V in the datasheet. \$\endgroup\$
    – markt
    Sep 9, 2013 at 7:21
  • \$\begingroup\$ I'm using an RN42 embedded in a Sparkfun BlueSmirf Silver which has a regulator on board. Would I connect the above filter to the VCC & gnd pins of the bluesmirf? What is the correct value for C2? Thanks for your help!!! \$\endgroup\$ Sep 9, 2013 at 15:03
  • \$\begingroup\$ Typo, meant 10uF (updated). 5V is bad for the RN42. Its f realm so V is no diff, other than it may be causing the RN42 to make extra noise. It is f=1/(2PiRC). Where the R is closer to .2ohms at DC, but the clicks and whine are likey alias of much higher freq from the radio. it is common to simply use a small R like 27 ohms with 1uF, to yield a 6K cuttoff. between noise sources and rest. Where the 27 ohms needs to also dissipate the current sourced. Hence on the radio which can higher loads the 30R@100Mg is used. But a 10-27ohm can work. I suggest trying 10uF+10R, and go from there. \$\endgroup\$
    – mpflaga
    Sep 9, 2013 at 17:49
  • \$\begingroup\$ Note that 10uF || 0.1uF is common, as the two technically have a Thevenin Equivalent, but being physically different, they actually function separate. The 10uF if having a low ESR will help make up for large surges such as the clicking when transmitting, and the .1uF will help with the whine. \$\endgroup\$
    – mpflaga
    Sep 9, 2013 at 17:52
0
\$\begingroup\$

I wouldn't be surprised if:

  1. The whistling is being caused by your PWM signals.
  2. The clicks are caused by the resistance of the pickups changing suddenly when you issue a command.

I'd try:

  1. Increasing the frequency of the PWM to as high as you can, well outside of audio (>20kHz) while maintaining the resolution you require.
  2. Using a smoother control adjustment to the PWM than a step, e.g. if PWM is at 50% and you want it to go to 75%, don't just step it to 75%, bump it up 1% every 10ms until it hits 75%.
\$\endgroup\$
6
  • \$\begingroup\$ The PWM frequency is already maxed out and tweaked to death... There is no whistling when I connect over a usb cable. I'm not sure if there is clicking or not over the USB (sorry, I will test and report ...). I will try the stepping of the PWM changes and let you know if that helps for the clicking. Thanks so much! \$\endgroup\$ Sep 7, 2013 at 8:51
  • \$\begingroup\$ When I command the Arduino via a USB cable, not using the Bluetooth, I get no whistle and but still clicks! Then, when I use a gradual increase of PWM in steps, there is no click!!!!! GREAT that is part of the answer! Now, if the filter circuit below would help the whistling, were are done and I have learned something really important!! THANK YOU FOR THIS GREAT SUGGESTION! cheers! \$\endgroup\$ Sep 10, 2013 at 14:20
  • \$\begingroup\$ However, there is no way of gradually stepping the digital output pins... Is there away of putting something between the arduino digital output pin and the vactrol so that the Voltage doesn't just jump from 0 to 5v and vie versa? \$\endgroup\$ Sep 10, 2013 at 14:34
  • \$\begingroup\$ After reading some on the web, I see that the vactrol's LED being turned on suddenly will pop! This seems to be the story!!! As per this article: muzique.com/lab/led.htm \$\endgroup\$ Sep 10, 2013 at 15:20
  • \$\begingroup\$ So, the circuits recommended in the led.htm post, did nothing; there is a pop when the led's come on, and even with 100µF cap, the pop remains. I tested with 10,22, 47 100µF. The 0 to 5V pops; the 5 to 0v does not pop much... \$\endgroup\$ Sep 10, 2013 at 16:59

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