Recently I bough a faulty Wanhao Duplicator 4S to increase the capacity of my 3D printing requirements as I already own one and know the machine inside out. eBay seller’s description wrote that the 3D printer stalled in the middle of a print. I did some digging across the internet before I purchased the machine and was suspecting that some wires were not shielded correctly which resulted in electromagnetic interference. It cost me £300 and that’s half of the retail price so even if I couldn’t be able to fix it, I would have plenty of spare parts for my current 3D printer.
The machine booted up and was already preloaded with the latest version of Sailfish firmware. After the initial inspection, the troublesome wires were already properly shielded so the issue had to be something else.
First thing I wanted do is to update the Sailfish firmware on the machine and reset all settings as I had no clue what previously had been done to this 3D printer. However I could not connect to the printer with ReplicatorG via USB. Thinking that this could have been an issue with problematic firmware upload by previous owner I took out the MightyBoard mother board out of the machine and hooked it up to Atmel-ICE programmer to upload firmware manually.
The upload was successful, but every time the machine booted up, the startup melody would become weird, change pitch and tone as if it was slowed down. Even after uploading the new firmware to the board I was unable to communicate with it via USB cable connected to the PC: the serial monitor would display garbage as soon as the connection was established on the USB to serial COM port.
This looked like mother board is at fault and a replacement costs around £90, but I don’t give up that easily! That’s when had an idea: could it be the crystal oscillator at fault? As it’s the main component that provides clock to the ATMega1280 the symptoms do indeed point to the part: serial communication speeds out of sync and startup melody sounding weird. I quickly found a spare 16MHz crystal lying around in the component box and replaced it with the suspect. Didn’t solder it flat to the board in case I had to remove it if it wasn’t faulty.
The first time the motherboard booted and instantly played the startup melody at correct speed and pitch! Now I could also communicate with the machine via USB without any issues. I soldered the crystal flat on the motherboard, reassembled the 3D printer, calibrated the bed and now it’s printing BlinkStick Strip enclosures just as new.
Nothing compares to that feeling when you get to fix a broken thing :-)