Category Archives: Technology

Problems with my AnyCubic 3D Printer

Earlier in the year, my AnyCubic Kossle Linear Plus failed. The LCD would power up, but the display would be blank. I also could not access it via USB. Thinking it was the Trigorilla logic board that had failed, I ordered a new board. Once it arrived, I had the same problem.

I then made a rookie mistake. I checked the power supply and found that it displayed 28v instead of 12v. I then spent some time troubleshooting my power supply. It was only when talking with my father that I triple checked it with him looking over my should. He pointed out that when measuring for 12 DC, I should have my multimeter sent to DC instead of AC. It was embarrassing but a good reminder. When you see strange results, double-check your tools and techniques.

Knowing my power supply was good, I just needed to check why I couldn’t access the control boards via USB. I assumed the firmware had become corrupted or blank or something similarly strange was going on. I spend hours searching/googling and reading on the internet without any luck.

Checking out the Trigorilla, I could see what appeared to be an ISP connector, and the documentation confirmed it. I have a little USB ISP Programmer from Jay Car. https://www.jaycar.com.au/isp-programmer-for-arduino-and-avr/p/XC4627, and I thought it was time to start playing with it.

XC4627 – ISP Programmer for Arduino and AVR

Usually, I would use my Mac, but I needed Windows because of the range of tools to work with the logic boards. Also, all the forums and blogs people were using either Windows or Linux. I was using the software AVRDUDES from https://blog.zakkemble.net/avrdudess-a-gui-for-avrdude/, in particular, the portable executable https://blog.zakkemble.net/download/AVRDUDESS-2.13-portable.zip

I haven’t used the original AnyCubic Kossel firmware in years. I have switched to the Marlin 2.0 firmware. Still being a relative 3d printer newbie, I did not roll my own. I followed the instructions created by Lukas Pomykal on his website, https://www.lpomykal.cz/kossel-marlin-firmware/ . This made a file “Marlin.ini.with_bootloader.mega.hex”. This hex file is the firmware I would be uploading to the printer.

Using the USB ISP programmer was a time sink. I had compiled the firmware using Arduino IDE, and I had a hex file ready. Every time I tried to upload, I would get a cryptic error and warning messages from avrdude. “Warning. Cannot set sck period. Please check for usbasp firmware update” or “Verification failure, first mismatch at byte 0x0000 0x08 != 0x0C”

avrdudess verification error

I thought I had the latest firmware on the USB ISP but decided to make sure. I have a copy of the device created by Thomas Fischl, https://www.fischl.de/usbasp/ . I downloaded the newest firmware and went searching for how to perform the update. I used my Arduino Uno with the ‘ArduinoISP’ sketch. 

Once the update completed successfully, I tried to do the firmware update again, with the same result, “Verification failure”.

I then decided to ignore the USB ISP and use my Arduino with the ISP sketch. I selected programmer = ‘Atmel AVR ISP’, Port (-P) = ‘COM4’, Baud rate (-b) = ‘19200’, selected the Marlin.ini.with_bootloader.mega.hex file. I connected the 6 pins as per the below table.

Arduino UnoISPTrigorilla
D13SCK3
D12MISO1
D11MOSI4
D10RESET5
+5vVCC2
GNDGND6
Wiring connections

Then I held my breath and hit the ‘Program’ button. Success! “261406 bytes of flash verified”

Feeling victorious, I returned the Trigorilla board to the 3d printer and re-wired everything. The LCD screen appeared precisely as it was supposed to!

Success … ?

I made the mistake of getting too excited. I knew I needed to recalibrate the printer and started the process. I attached the levelling probe and found my troubles were not over. The printer head began to move in odd ways, up toward the printer’s top instead of down towards the print bed.

The printers behaviour perplexed me for over a day. I was chatting with my son, and I remembered that the Kossel has two different probe options! I reopened the firmware source and found the section about test probes. I followed the instructions and referenced the images and found that, indeed, the firmware was configured with a different probe than what I had. I made the change, then recompiled the firmware and re-flashed it.

Finally, after way too long, my printer was working again and, at the moment, appears to be working 100%. I’ve published this hoping that other people find it helpful with troubleshooting their Kossel/AnyCubic printer.