Guitar buzzing – Ground loop hum

A friend of mine is having issues with his guitar buzzing so I thought I would post some info on getting around it.

Guitars them selves are literately antennas. The pickup/s can pick up and then amplify Hz sound waves from near by devices such as 50/60Hz from your wall outlet or other devices that use wall warts, microwave ovens, phones and even a fridge. These wave forms are a byproduct of electromagnetic interference (EMI)..

There are a few ways to help suppress EMI in the guitar itself by double checking the bridge to see if it is properly grounded. Replace the tone capacitor if it is a vintage guitar. You can even add some copper foil to the inside the wiring compartment and under the pick guard to use as a filter (Faraday cage).

Now there are a few other places to check such as your cabling and most of all the amp and effect pedals.

Lets start with the effect pedals since these cause a lot of issues.
A effect pedal usually uses a 9V battery. They have a option for a DC adapter known as a wall wart. You might notice when you switch from a battery to a external voltage supply that you hear a hum. Well a wall wart is nothing more then a step down transformer converting high Alternating Current to a lower voltage then passes though a bridge rectifier that converts it to DC. They are not earth referenced ground and they’re not regulated. There are a few ways to rectify AC voltage into DC. You have the half bridge and a full bridge. From the rectifier there are some times inside a wall wart a smoothing capacitor but a lot of times it isn’t the right grade for the device you want to power. So you still end up with raw DC power.

Look at this diagram bellow, we have clean DC that is straight across that has the proper smoothing added. Batteries naturally are clean DC. Look bellow that you have rectified half bridge DC that has no smoothing and below that full bridge with no smoothing. When smoothing is applied it straights out the waveform.


Now with the dirty raw DC you will probably hear it in a amp. A high pitch sound around 60Hz to 120Hz.

Now there are also switch mode wall warts and they use a even higher frequency but still audible to a human ear. Do not use switch mode wall warts.

In all your best bet is to stick with batteries since batteries are a clean Direct Current.

Now the amp can cause hum as well. Depending how old the amp is some use a three prong and some use a two prong. Tube amps use two prong and some early solid state amps also used two prong. Do not do something stupid like adding a third prong ground your amp. You will probably blow it up. Nine times out of ten it’s the smoothing capacitors and need to be changed out. Tube amps will still hum at a degree at idle. That’s just what tubes do.

Now if you have a modern amp that uses three prongs for a earth reference ground then chances are you’re running multiple amps, some one wired a outlet wrong or 60Hz is bleeding from the neutral to ground This is a form of ground loop. Almost everyone doesn’t know that the Earth ground is indeed connected the the neutral at the fuse panel in your home. It branches off to literately ground outside near your power meter. To fix this you can make a adapter or even include it inside your amp. It’s just a couple of diodes and a 1K resistor.


Doesn’t matter what end is what. When I deploy this circuit I use it closest to the transformer. This will fix it most of the time. Comes in handy for multiple amp configurations. However since we are in the digital age and you’re brand new Line 6 might be using a switch mode power supply instead of linear so Just use a adapter box. (I’m not sure if modern amps use switch mode supplies.)

Also check the power supply to the amp or take it for a tech to check it out.

That is all the tips I got.

Musician project

I’ve been in a few metal bands in my younger years playing Guitar and Bass. I’ve tried all kinds of effect stomp boxes and amps with my guitars. I even made a few or modified a few effect pedals. A friend of mine that also plays guitar asked me since I am keen with electronics if I could develop a volume pedal that works like a “wah-wah” pedal. However just not no typical volume pedal at that. The specs he requested are pretty neat and I even upped the ante by added a third jack for mixer/tuner output and a preamp booster.

The circuit is a simple LPB-1 Booster from Electro Harmonix. Instead of a stomp box configuration it will be housed in a wah-wah/expression pedal configuration. Already I had to make some modifications to the circuit itself. Instead of a 2n5088 like all of the schematics I have found call for I used a more modern audio TO3p style transistor and also changed out the caps from 100nF to 150nF because there was a bad hum. To power the circuit a LM7805 regulator is needed since most likely a wall-wart will be used. It will cut the hum from the 60Hz AC mains voltage from creeping in. From my testing 5 volts works just fine and also helps add another function to the pedal. One of the requests was a LCD display to show what the volume level is. To achieve this a 2X taper potentiometer is needed because a Arduino will be used to control the LCD. Basically the second side of the pot will control some analog pins on the Arduino and then put the output onto a small 16×2 char LCD. Granted I could make the whole thing digital but most guitar/bass players including myself prefer analog, it sounds more raw then studio mix up crap like Dragon Force.

When the whole project is done I’ll toss up some pictures.

7 Segment Control with 74series digital logic

I haven’t play with digital logic all that much so forgive me if I miss some things.

For my power supply I want to add the ability to control it digitally from a computer let alone a custom 7 segment display. Now I really do not want to use a AVR for this so I’m trying to go a bit old school and use some 74 series logic to control the display.

I’m using a Anode type 7 segment with a 7446 encoder. To control the encoder I am using a 74192 4-bit up/down counter. With two push buttons for the up and down selections it will let me select from 0-9 and 9-0. However there is a crap load of bounce. I tried tossing on a 7404 Hex inverter to deplete the bounce but has no effect. I tried a schmitt-trigger setup and it works better but when I added the count up switch for some odd reason it skips the number 9. When the count hits 9 it quick pops up then moves to zero. Also when counting down it counts by 2s, this is very odd.

In all it was simple but still a bit touchy. Use a 10K resistor to pull up the signal with a cap going from the voltage side of the switch to ground. Works very well with tactile switches.


It may look a bit mess but I’m doing my best to get use to the program for creating the schematics.

Parallel Port Control Done Right 2!

Got a nifty little program to create simple schematics. Before I was using Paint. Never really liked the higher end programs like Eagle.

Anyway, This is a small circuit using Opto Couplers for isolation from the parallel port.

Parallel breakout

Didn’t have a Opto Coupler template so I just used a LED, NPN transistor and a rectangle

Lets talk about the circuit real quick. Since the Parallel Port tosses out a digital voltage (IE a low voltage/current Square Wave) it can power a LED just fine and with out a current limiting resistor. You could add resistors to the circuit if you wish but with my testing with different rated LEDs it works just fine with out them. If you plan to use resistors then a 220 ohm should work. The Opto Coupler is just a LED and Transistor with a photocell on the base. Basically it does a priezo effect to conduct enough current to turn on the base of the transistor. From there the Emitter is grounded and the Collector acts like a virtual ground. From the Virtual ground you connect the negative side of your device/circuit. In all it acts like a solid state switch.

Connect all of the negative side of the LEDs of the Opto Coupler to the Parallel port grounds, pins 18 to 25 are ground. With the Transistor Emitters shown in red go to the external power supply’s ground.

Here is another circuit that uses a R-2R ladder.


Yay! I figured out how to make the runs smaller.

I would recommend on watching the video from the last post on the R-2R ladder. In a nut shell it is a Digital to Analog converter. This circuit has a Op Amp that is acting as a voltage follower and giving isolation to the circuit. Be sure on the ground to the second resistor on D3 to use the ground to the Parallel Port pins 18 to 25. The Op Amp doesn’t have to be a LM358, any general purpose rail to rail Op Amp will work. You can use a external power supply for this but I would stick with a 9v battery to power the circuit.

Parallel Port Control done right!

OK, we covered that with DOS you can easily control data pins of a Parallel port. Here is a short list of pros and cons.


  1. DOS is Outdated.
  2.  Can only turn on the pins and to turn off you have to turn them all off. So if you wanted Pin2 on and want to turn off say Pin5 you have to turn Pin2 off by issuing all the data pins to go low.
  3. Only good for turning things on.


  1. The retro aspect with DOS is fun.
  2. You know for sure it will work since every old machine has a parallel port.
  3. Low system resources is required.
  4. Easy to setup and use.

Now not all of us have DOS, know how to use DOS or prefer multitasking. With this done right approach we can issue a Linux system to do our bidding and a proper circuit to drive the parallel port.

Newer versions of Linux attend to leave out the Parallel port as a default kernel module. Since there are all sorts of flavors of Linux lets stick with Debian as the example.

To see if the kernel has a parallel port configured we need to run a command. It would help if you are a member of the sudoers file so you can issue root commands.

dmesg | grep parport

That command will search the system output log for the parallel port. In Linux the parallel port is typically /dev/parport0.

On the output of that command yo should see something like this.

[   13.265525] parport_pc 00:0a: reported by Plug and Play ACPI
[   13.265525] parport0: PC-style at 0x378 (0x778), irq 7 [PCSPP,TRISTATE]
[   48.673384] lp0: using parport0 (interrupt-driven).

If you don’t get a response then you’ll have to compile a new kernel or you might be able to load the kernel driver. Since we’re using Debian then chances are the driver is loaded since the Debian installer scans the hardware and adds the proper kernel modules.

Now we need to make sure your user can access the parallel port. Issue the command whoami Now we know the exact name the system sees you as.

Issue the command

ls -l /dev/parport0

You should see something like this.

crw-rw---- 1 root lp 99, 0 2016-02-17 10:15 /dev/parport0

Now we need to add your user to the lp group. Just change the adduser in bold to your user name from the whoami command.

sudo adduser user lp

The software side is pretty much done. If you have the development stuff installed on your system you can download this, compile it by issuing make and you can turn Data and Control pins on and off. Also check out this page. Same info I used for this guide.

Since we got the basics of the computer ready we need a solid circuit to be able to plug into. It’s up to you on how to connecting it the parallel port. I myself use a old printer cable but yo can buy a breakout board. But as for controlling Relays and such we need a proper circuit. Now the voltage from a parallel can range from 3.3v to 5volts. This isn’t you’re typical 3.3v and 5v but digital voltage since this is a digital output. It’s low voltage and very low current. Too much load your device won’t work right and too much you can burn up the parallel port.

If you’re planning to control some digital logic then you can toss on a transistor or two and bob’s your uncle but you’re still gambling because sooner or later you’ll need more power. If you want to control other things what is typically analog like lights and such then yo want to isolate it and bring in another power source. Even if you’re planning to do low voltage stuff you still want to isolate it. Granted you can use relays and some hex inverter to cancel out switch bounce but a simple opto coupler is cheaper and easier to use. For DC to DC isolation I would use a 4N35 opto coupler. If you so desire a relay I would use a 9000 series reed relay since it only needs 5mAs.

Isolating it will let you to properly use a external power supply without fear of it frying your computer. Also be sure to not share the ground path with the parallel port after isolation. Since the parallel port is a digital source it would be nice to have analog in the mix. For this we need a R- 2R ladder. It’s basically a digital to analog converter. Here is a video I found from w2aew on YouTube. It covers everything you need to know about R-2R ladders. Also a neat thing is you can toss on a voltage follower to the ladder’s output.

Later on I’ll toss on a schematic for a breakout board since I plan on building one.

Since the parallel port is isolated we can pretty much do what we want. If you plan to control AC voltage I would use a high voltage rated relay or a opto coupler that is rated for AC.

Honestly I’m looking into controlling my lab power supply project with it for fun.


When I was a child my parents use to watch a show on TLC called Connections. The show’s host James Burke would take an interdisciplinary approach to the history of science and invention, and demonstrated how various discoveries, scientific achievements, and historical world events were built from one another successively in an interconnected way to bring about particular aspects of modern technology. Even as a young child no more then nine or ten I thought it was pretty neat of a show. Another show was Secret Life Of Machines presented by Tim Hunkin and Rex Garrod.

Lately I have been going retro with some tinkering. Since I’m waiting on parts for the power supply and CNC I have been tinkering around with some digital logic chips. Today I was looking around and found some chips I’ll never use but still hard to find such as a 6800 PIA and XR-2206CP Function Generator. Then again I could use the XR-2206CP. I might revive the Function Generator project on a future date.

I have noticed I once again haven’t been going too much anything else lately. My guess is because I am stuck with no workshop/work space and confined to a small portion of a bedroom. I could go outside and do stuff but with my apartment complex I wouldn’t want to leave stuff out let alone the mosquitoes here are very annoying since there is a drainage ditch in the back yard in the tree line.

The wife and I plan on moving this year when our lease is up and looks like we might have to rent. I honestly prefer to buy a house but our current credit isn’t up to par. Lesson learn, default on a small credit card that has a $300.00 limit can screw you over. Anyway we’re going to rent a house and hopefully it will have a garage or a huge shed I can use. Then I can setup shop and finally do some decent blogging and be able to complete projects without waiting or permission. I have hundreds of tools I can’t use due to the fact I live in apartment and the neighbors will complain on the noise. Bet anything the neighbor wouldn’t care why I’m grinding a weld with my grinder. All they care is it’s noisy and annoying them. Last week I was using my router with a round over bit on a small shelf I built and when I was done with the first pass out of four passes the neighbor was outside with her arms crossed looking kinda angry. When living in a apartment you learn quickly on how to use hand tools rather then power tools. At the same time you’re kinda spoiled by then and prefer to use a power tool such as a belt sander instead of a sanding block.

With other things going on in my head I wish I had more patience when doing stuff. I attend to rush after I get so far or rush in the planning faze. I need to start putting more effort on planning. It’s like painting a car, you do more prepping then painting.

Well enough jabbering

More Parallel Port Control

Instead of going in the assembly route to control a  parallel port we can use QBasic and get the same results. With QuickBasic you can compile the code and use BATCH scripts to run them or even if you’re crafty enough you can make a simple program to control it.

Here is a simple test script in basic to turn on all of the port’s pins and turns them off in pulses. You can use a LED or a Multimeter as a output to see if it works.

OUT (888), 255
OUT (888), 0

This puts all of the pins high for five seconds and low for one second.

Be aware that not all parallel ports use the same address.

Plans for the PXE server

Since I wanted to play with DOS once again I have ran into a lot of issues with my computer hardware. Since I don’t have any floppies I can’t use a floppy drive let alone don’t want to deal with floppies. The following day after creating some CDs my old CD burner kicked the bucket. It reads discs but doesn’t want to write. Since the PC I want to use a more modern then a typical PC from the days of DOS I decided to go with the PXE route, granted I could add networking software and so on so forth but DOS is finicky when it comes to networking. Just need a bootable image with a custom BATCH file to copy the DOS files over to the PC and execute the SYS command. From there I can use a second bootable image for transferring software such as MASM and FORTRAN utilities/programs.

I know there are other ways such as using a VM but I want to access serial and parallel ports and use the system to control circuits via serial or parallel. Probably most likely via parallel port. It’s just a way to get files from one system onto another. Maybe in the future I’ll add networking and custom autoexec.bat and config.sys files for different TDR load ups.

Debian Issue followup

I gave it another shot with Jessie and figured out a way.Instead of using isc-dhcp-server and tftpd-hpa I tried out dnsmasq. I’ve used it in the past and honestly forgot about it. Works like a treat. I ran into another issue but that was my mistake. Jessie doesn’t come with a proper version of syslinux for older BIOS type systems so with out really thinking about it I mismatched files from different versions and this caused it to break. I removed the mismatched files and downloaded syslinux 5.10 and now I can properly PXE boot a system image.

I still don’t know why but idc-dhcp-server and tftp-hpa were fighting each other. Could be just a broken binary and I didn’t try to compile from source.

First issue with Debian

I’ve always used Debian Linux for server use and sometimes as a daily driver on a client. I also attend to use the latest stable release. However with Debian 8 (Jessie) I have ran into a huge problem. My PXE server does not work and I can’t understand why. Typical software is used such as tftpd-hpa, isc-dhcp-server and nfs-kernel-server. The hardware isn’t the issue. Just as some of you know if you’re going to use a PXE you don’t want multiple TFTP servers on a single network let alone multiple DHCP servers so I have a second nic in the server (eth1) as the access port to the DHCPd and TFTP server. In other words a second LAN. I have tried multiple configurations for the software including iPXE for the PXE bootloader. The client connects but times out. I added permissions to iptables and even disabled the firewall. Changed file permissions and so forth. Locally on the server I can connect to the TFTP server with the TFTP client and get files just fine but on a remote client it just doesn’t connect.

I might have to revert back to wheezy for this setup.