crush depth

Journey To The ... Earth

I bought a Yamaha Pacifica PAC120H a while back. I wanted a guitar that I could use as a testbed for hardware experiments. Ideally, an inexpensive guitar, so that I wouldn't care too much about ruining it. I've played a lot of guitars over the years, so I was pretty shocked when this almost-bottom-of-the-range instrument turned out to be one the best sounding and best feeling guitars I'd ever played.

It did, however, have a slight grounding issue (the guitar would quietly hum until you touched any metal component). It was also fairly noisy when the coil split was engaged. This isn't exactly unexpected; when the coil split is engaged, one of the coils is disabled and therefore the hum cancelling property of the humbucker is also disabled.

I'd heard of people applying shielding to the interiors of guitars in order to reduce noise, so I decided to try it. Shielding essentially involves covering every surface of the guitar's internal cavities with conductive material. There are lots of options here, but the cheapest and simplest appears to be common garden copper tape (with conductive adhesive).

I bought a couple of rolls of this:

Kraftex Copper Tape

I tested it with a multimeter and it had roughly the expected resistance for copper of that thickness. I also checked that the adhesive was actually conductive, and it did appear to be.

I opened the guitar, and was presented with bad wiring. The Pacifica series has a slightly frustrating design where it's simultaneously front-routed and rear-routed. Most guitars pick one or the other, so that when you're doing work on the internals, you don't have to work on both sides of the guitar simultaneously. The wiring was chaotic, and wired in an order that meant desoldering many components just to move one wire:

Internals 1 Internals 2

The wiring also followed the horrific guitar convention of soldering every ground cable to the volume pot, resulting in a giant compost heap of solder:


I ended up ripping out all the components in the process of applying shielding to the cavity:

Shielded 1 Shielded 2

Unfortunately, the ground pin of the volume pot had been mutilated in the process of soldering the pin to the casing along with everything else. Clearly someone just grabbed the pin with a pair of needle-nose pliers and bent it around as hard as they could until it made contact with the casing. Rather than try to fix that mess, I replaced the volume pot with something with the same specifications.

I took off the scratchplate and shielded it and all the front cavities too, leaving plenty of excess so that the back of the scratchplate would be in contact with the internal shielding in as many places as possible.

Shielded 3

With a fresh volume pot in place, I didn't want to repeat the convention of soldering everything to it. I fabricated a little block with some screw-in terminals on it that could be mounted inside the back cavity that essentially provided a solderless connection to ground for all of the things that needed to be connected to ground.

Ground 0

Unfortunately, I constructed the board such that the screw terminals ended up mounted too high in the cavity. This meant that, with (or without) cables plugged into it, there would be no way to get the backplate on without squashing the cables somewhat.

Continuing the theme of overengineering, I decided the best and most compact way to get a good quality ground connection would be to have a small PCB made with eight side-mounted screw terminals on it. The small cavity makes it extremely difficult to get any kind of screwdriver into the cavity in order to loosen or tighten screws, so I decided that the most pleasant way to work would be to have something that could be attached and detached without tools that could host the connections. It would then no longer be necessary to try to jam a screwdriver into the cavity to work on anything.

I put together the most idiotic circuit ever designed in KiCad:

Grounding Schematic Grounding PCB

I uploaded the resulting Gerber files to pcbway and had some nice printed PCBs a week later. After soldering on the screw terminals the result was obviously far better than the original perfboard construction:

Ground 0

I didn't want to fix the PCB directly to the guitar. I instead designed and printed a small mounting plate that could be hooked onto a pair of wood screws inside the cavity.


Mounting the plate and PCB inside the cavity was painless, and the resulting solderless connections are solid. I subjected them to more-than-the-minimum amount of violence, and was unable to get the wires to come out of the connectors when screwed in.

Mounted 0 Mounted 1 Mounted 2

With the backplate back on, I strung the guitar with the cheapest, worst strings I could find (as I fully expected to have to take the strings off again to fix one or more accidental grounding problems). I plugged the guitar in and ... it worked!

So was it all worth it?

Well, I took a recording of the guitar before I added the shielding. Compared with a recording taken with the new shielding and wiring in place... Noise levels are lower by 1dB. At least the wiring is now actually maintainable.


Join us again next week when we disassemble a washing machine to reduce the length of the rinse cycle by 3.2 seconds.

New PGP Keys

It's that time of year again.

Fingerprint                                       | Comment
A438 A737 C771 7871 95CF C166 F843 51F7 2C91 8476 | 2023 personal
62AB 091D 563E 51BE 9E54 B680 7E20 DC73 5505 FE84 | 2023 maven-rsa-key
567B 7EA4 703E D530 5B73 3FBC 10C3 9A85 438F 996F | 2023 jenkins-maven-rsa-key

Keys are published to the keyservers as usual.

Boot Config

Did a pile of server updates today, and for some reason one specific VPS refused to boot with this error:

Boot error

It turned out I hadn't updated the boot code to handle the latest zpool version. There's a note about this buried at the bottom of the zpool administration chapter of the FreeBSD documentation:

This would be fine, except I've literally never had to do this once on any number of physical machines or virtual machines over more than a decade of continual upgrades. I don't understand why it was suddenly a problem on this one machine.

I mounted a FreeBSD ISO into the virtual machine, booted from it, temporarily imported and mounted the zroot zpool to /mnt and ran:

# gpart bootcode -b /boot/pmbr -p /boot/gptzfsboot -i 1 vtbd0

Exported the zpool again, and rebooted. Machine came up.

New PGP Keys

It's that time of year again.

Fingerprint                                       | Comment
2680 A50E FD03 2007 FABE 8C87 B0E4 322E EE81 8BDE | 2022 personal
3CCE 5942 8B30 462D 1045 9909 C560 7DA1 46E1 28B8 | 2022 maven-rsa-key
8EAE 10EA 3E8D F42F E58F CFD2 7863 6912 E065 EAD3 | 2021 jenkins-maven-rsa-key

Keys are published to the keyservers as usual.

Cold Spot ABS

I'm attempting to print a part like this:


The part must be printed in the orientation shown due to the anisotropic properties of 3D printed parts: The part needs to be printed such that the print layers are oriented perpendicular to the expected load.

This wouldn't normally be an issue, but the part is 25cm long. The build volume of the Prusa i3 MK3S is 250 × 210 × 210 mm. That left me exactly one way to print the part: Lay it on the print bed lengthwise.

Because I wasn't completely certain that the part dimensions were correct, I printed a small slice of the end of the model for testing:


Unfortunately, the printed part was pretty severely warped. The two highlighted lines are supposed to be parallel!


The part was printed in eSun ABS. Now, ABS has the reputation of being difficult to print. It reportedly has a tendency to warp and shrink in exactly the manner shown above. However, my personal experience of ABS has been the complete opposite to date! I've not, so far, had a single part warp in any observable way. I think I've had good results so far due to printing exclusively in an enclosure, using a 110°C heated bed, and tuning the material settings carefully. Therefore, having a part come out of the enclosure looking like this was a bit of a surprise.

My first thought was to question where I was printing on the bed. I don't normally print in that lower right corner. I tried moving the slice of the model to the middle of the print bed and printing again... No warping!

Late last year, I attached a small PVC duct to the back of the enclosure so that I could vent ABS fumes out of the window during prints. Given that we're coming into the winter months in the UK, I wondered if the warping was actually caused by a cold draft from outside getting into the enclosure and ruining the first print. I moved the part back into the corner and printed again... It warped. Not only did it warp, but it suspiciously warped in exactly the same manner as the first print; one of the corners (not both) lifted from the heat bed. Coincidentally, the corner that lifted was the corner that was placed in the same location on the heat bed both times (the bottom right corner).

I tried printing a version of the part with "mouse ears" - small brims placed under each corner. Once again, the part warped, and specifically only warped on one corner. The entire brim on that corner of the part actually lifted off the heat bed, whilst the other corner stayed firmly down.


In the above image, the marked lines are supposed to be parallel. Severe warping and buckling can be observed on the right side of the part, and absolutely no warping is present on the left side. The part is symmetrical; if it warped on one side, it should warp on the other.

At this point, I was pretty much convinced that something was unusual about that specific part of the heat bed.

I found a discussion thread on the Prusa forums where someone had produced a thermal image of the heat bed running at temperatures very close to the temperatures I'm using for ABS:


The original poster notes:

Heat distribution is not perfectly even, but it doesn't look too bad. The cold spots are where the magnets sit.


These images are without a steel sheet attached. When a steel sheet is added, it should spread out the heat more evenly towards the perimeters of the bed.

Note that in the image, both the bottom left and bottom right areas of the heat bed are noticeably colder than the rest. This might not matter for larger parts, but for a part with a small corner area, it clearly does!

I suspect moving the part to the next grid square over (in the horizontal band that says "Do not print") will fix the problem.