Does a mainboard of a Vertex work on the K8200


Is the controller installed in your printer? How are you providing power? You might want to try disconnecting the heaters and motors to rule out a short or brownout.

Did you remember to remove the JPROG jumper? (I doubt this matters.)


Did al you said. The MB is laying separated from the printer on my desk now, together with the LCD. I am afraid the ATMega2560 chip is damaged. It looks someone did some repairing, or it is a bad batch from the factory. Although there is some little dirt on the chip… It used to work right, but won’t anymore and i can’t figure out what is going wrong…


I would be surprised if the chip is damaged so badly that it won’t boot, since you say it took firmware. One other thing you could try would be to put the Vertex firmware back on it to see if you get a display. If you can load a Vertex single-extruder image, it will probably run your K8200.

Single Extruder Vertex firmware:

The downlad page also has a reminder that says DO NOT FORGET TO RELOAD THE EEPROM SETTINGS AFTER THE UPGRADE! If you can connect in Repetier, send an M502 followed by M500 to reset the EEPROM after you load a new firmware image.


Send the codes: Now i do have a display functioning! Even without upload the vertex-firmware. No i go connect it to the printer and see what it is doing with the axis…

This is cheering me up, there is some hope my printer can operate again without the costs of a new MB!


That’s one step ahead. No i have to fix the problem for the wrong movements of the motors…


Excellent news! You should be well on your way now. There is no question you can get this to work.

You may have to reverse the direction of some of the motors, but having a display will help you to see what is going on.

You’ll be printing again in no time.


I hope so. Many thanks for getting me here! As i live on Aruba, it’s 22.22 right now and i have to work tommorow (alarm at 05.00). So i came this far with your help, I’ll try to reverse the direction of the motors by tomorrow by changing it in the firmware. Should work. Thanks again!!


No worries. I am happy to help. Glad to hear you are making progress. Let me know how it works out.


The stepper motor problem may have something to do with the drivers.
The 8400 uses different drivers. if you are using the K8200 firmware you may need to use the drivers from the K8200 MB (watch the orientation) or you can make adjustments to the firmware.


I am using the stepperdrivers from the 8200-board. I have some spare drivers left of the Vertex, can give it a try to use these to see what happens…


Switched the stepper motor drivers (K8200) to K8400 and adjusted them to 0,920 V between the potmeter and the (-). Didn’t solve the problem: the X-axis is moving in the right direction, but isn’t moving right to the endswitch, turn back and come close again. The Y-axis isn’t working at all, and neither is the Z-axis. I think there has to be done some adjustments to the firmware…


The extruder is working correctly. Strange because I made the same settings over all.


@Dr_Vegetable Maybe some solutions for the problems i’m still facing?


I did some measurements on the endstop-switches. it turns out there where some faulty wirings on the x-stop: i’ve fixed it. All the switches are normally closed (NC), and when pressed in open. The z-axis isn’t moving at all, the X- en Y-axis when homing only +10 mm. I also hear a strange high noise coming out of the board. Looks really strange to me…

Placed back in the original drivers of the K8200, and it didn’t help…

This is my log when i connect the printer in repetier

14:55:37.415 : Printer reset detected - initalizing
14:55:37.415 : start
14:55:37.415 : echo:Marlin 1.0.0
14:55:37.466 : echo: Last Updated: Sep 15 2018 14:27:29 | Author: (Boris Landoni)
14:55:37.466 : Compiled: Sep 15 2018
14:55:37.466 : echo: Free Memory: 4296 PlannerBufferBytes: 1232
14:55:37.466 : echo:Stored settings retrieved
14:55:37.466 : echo:Steps per unit:
14:55:37.466 : echo: M92 X64.25 Y64.25 Z2560.00 E150.00
14:55:37.466 : echo:Maximum feedrates (mm/s):
14:55:37.466 : echo: M203 X500.00 Y500.00 Z5.00 E500.00
14:55:37.466 : echo:Maximum Acceleration (mm/s2):
14:55:37.466 : echo: M201 X9000 Y9000 Z100 E10000
14:55:37.466 : echo:Acceleration: S=acceleration, T=retract acceleration
14:55:37.466 : echo: M204 S1000.00 T1000.00
14:55:37.466 : echo:Advanced variables: S=Min feedrate (mm/s), T=Min travel feedrate (mm/s), B=minimum segment time (ms), X=maximum XY jerk (mm/s), Z=maximum Z jerk (mm/s), E=maximum E jerk (mm/s)
14:55:37.466 : echo: M205 S0.00 T0.00 B20000 X20.00 Z0.40 E5.00
14:55:37.467 : echo:Home offset (mm):
14:55:37.467 : echo: M206 X0.00 Y0.00 Z0.00
14:55:37.467 : echo:PID settings:
14:55:37.467 : echo: M301 P33.27 I2.73 D101.40
14:55:39.779 : echo:SD init fail
14:55:39.822 : FIRMWARE_NAME:Marlin V1; Sprinter/grbl mashup for gen6 FIRMWARE_URL: PROTOCOL_VERSION:1.0 MACHINE_TYPE:K8200 EXTRUDER_COUNT:1
14:55:39.853 : X:0.00Y:0.00Z:0.00E:0.00 Count X: 0.00Y:0.00Z:0.00
14:55:39.885 : echo:Active Extruder: 0
14:55:39.901 : Begin file list
14:55:39.901 : End file list
14:55:39.980 : echo:Active Extruder: 0

Changed these in the firmware:
// The pullups are needed if you directly connect a mechanical endswitch between the signal and ground pins.
const bool X_ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops.
const bool Y_ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops.
const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops.

Now the X- axis seems to work fully. The Y- is only homing correct but won’t manual move. On the MB LED7 (z-axis) keeps burning and the Z-axis won’t move at all… strange problem…


Last update: The axis are working, except the Y-. It is homing correct, but i can’t let it manually move in repetier…

Fixed it there were some faulty settings in repetier. Now al the axis are working and the display is working too!


The bedheater has only two pins: i suggest it is better to connect the bedheater to a mosfet with an external power supply to heat the bed, right? To prevent high currents to the MB…


I do not have a K8400, so I don’t know how it compares to the K8200 in a few key respects. I know the endstops on the 8200 are NC, but I don’t know what is used on the Vertex. The firmware will not move a motor if it cannot detect the endstop(s) for that axis.

If you use the Vertex stepper drivers, you will find that they default to 1/32 microstepping instead of 1/16 used by the original drivers. This is ordinarily set by three jumpers beneath each driver card, but on the K8400 controller these pads are connected with traces on the circuit board. Rather than cut any traces, I recommend adjusting your firmware to expect finer stepping resolution. With 1/32 microstepping, you will get finer motor movements (better detail) but you will need to double the STEPS_PER_MM for each affected motor to get proper output scale.

It is always a good idea to use a MOSFET to switch the heaters, as this will keep your controller board cooler. For the bed heater, you can even use a simple relay to switch the heater, but extruders want to be switched more quickly. I agree with your assessment that the 2-pin extruder heater outputs do not inspire confidence.

It might be helpful if you could recap the changes you needed to make to get this to work. It seems like it was mostly plug-and-play, with a few traps along the way.


So what you say: If i use the DRV8825 stepper drivers i can get - with the right firmware settings - a better resolution as when keep using the K8200 stepper drivers? Definitely worth a try… Can you get me the exact chanings i have to make in the firmware?


You will want to search Configuration.h to find the following line:

#define DEFAULT_AXIS_STEPS_PER_UNIT {64.25,64.25,2560,600}

The numbers in parenthesis may be different for you, but there should be four numbers. These represent the number of stepper motor units per millimeter of linear travel for each axis motor: X, Y, Z, and E, respectively. (If you have multiple extruders, they all must use the same steps/mm setting.)

To change from A4988 (original, 16-microstep) to DRV8825 (Vertex 32-microstep) drivers, multiply each axis by 2. You can let the compiler do this by just adding 2* to each axis.

eg: Double the STEPS_PER_UNIT for the X and Y axes:

#define DEFAULT_AXIS_STEPS_PER_UNIT {2*64.25,2*64.25,2560,600}

Don’t forget to run M502 and M500 after you reload the firmware for these settings to take effect.


Right. So it is wise only to change the Y- and X-axis to a DRV8825 microstepper. What has the refV has to be? Measured between the potmeter (clamp on the screwdriver) and the (-)?

Changed the drivers, with Vref at 0,50V. Also saw that in my extruder (600) was set at 150, so i had to go to extreme flow-settings in repetier. Changed it to 600 and no it is printing flawlessly, perfect! I do see a higher resolution in the X- and Y-directions, so the tweak with the drivers is working correctly. Many thanks!