Printing on linux

All of my computers are running linux so I have tried to figgure out how to run the printer from that, I have got repetier host working and I believe I know how to update firmware aswell so I figgured I might share what I have done. Im currently running Antergos, an arch derivative but there is no reason this shouldn’t work on other distros.

Repeiter host

You want to controll your printer so this program is pretty important. I have mainly used it for generating the gcode and the printed it from an SD card but I know that the manual controls in the program sort of work.

The first thing you need to do is download repetier host which can be found here http://www.repetier.com/download/. Download and unzip it somewhere.

Navigate to where you unzipped the program using a terminal and type

sh configureFirst.sh #use sh shell to run the script

or

chmod +x configureFirst.sh #Make the script executable ./configureFirst.sh #Run the script

The script will ask you for your superuser password to allow it to “install” the program.

Once this is done, repetier host is installed. Your desktop manager should be able to find it and you can run it from a terminal anywhere using repetierHost

Slicer config file

Cura engine which is used to create the gcode that the printer reads uses a config file to generate prints for the vertex printer in particular so you will need to provide that file. One way of doing it is by pulling it from a working windows installation. All you have to do is open repetier host on the windows computer, click the slicer tab, click configuration and pressing export. If you don’t have a windows computer avalible, this is the config file I use which I pulled from a fresh install on dec 29 2014.

[print] name = VertexSettings defaultQuality = UGFdGjaROx9aQouMAZfWQqs4mQsUIfod travelSpeedMin = 180 travelSpeedMax = 180 firstLayerSpeedMin = 15 firstLayerSpeedMax = 15 infillSpeedMin = 48 infillSpeedMax = 60 infillType = 0 innerPerimeterMin = 42 innerPerimeterMax = 48 outerPerimeterMin = 35 outerPerimeterMax = 48 printSpeedMin = 42 printSpeedMax = 48 gcodeFlavour = 0 retractionCombing = True multiVolumeOverlap = 0 cutOffObjectBottom = 0 shellThickness = 0.7 infillTopBottomThickness = 0.3 infillDensityPercent = 20 supportType = 0 platformAdhesion = 0 dualExtrusion = 0 wipeAndPrimeTower = False oozeShield = False enableRetraction = True retractionSpeed = 70 retractionDistance = 9 multiExtruderSwitchAmount = 9 startGCode = """ G28 ; Home extruder G1 Z5 F{Z_TRAVEL_SPEED} G1 Z0 F{Z_TRAVEL_SPEED} M106 S165 ; Turn on fan G90 ; Absolute positioning M82 ; Extruder in absolute mode ; Activate all used extruder {IF_EXT0}M104 T0 S{TEMP0} {IF_EXT1}M104 T1 S{TEMP1} G92 E0 ; Reset extruder position ; Wait for all used extruders to reach temperature {IF_EXT0}M109 T0 S{TEMP0} {IF_EXT1}M109 T1 S{TEMP1} {IF_EXT0}T0 {IF_EXT1}T1 M83 G1 E10 F100 M82 G92 E0 ; Reset extruder position M117 Vertex is printing G1 F1000 Z5 """ endGCode = """ M107 ; Turn off fan ; Disable all extruder G91 ; Relative positioning {IF_EXT0}T0 {IF_EXT0}G1 E-1 ; Reduce filament pressure M104 T0 S0 {IF_EXT1}T1 {IF_EXT1}G1 E-1 ; Reduce filament pressure M104 T1 S0 G90 ; Absolute positioning G92 E0 ; Reset extruder position M140 S0 ; Disable heated bed M84 ; Turn steppers off T0 T1 T0 """ preSwitchExtruderCode = postSwitchExtruderCode = wipeAndPrimeTowerVolume = 5 retractionMinimumTravel = 0.1 minimumExtrusionBeforeRetract = 0.02 zhop = 0 skirtLineCount = 3 skirtDistance = 3 skirtMinimumLength = 150 solidInfillTop = True solidInfillBottom = True infillOverlapPercent = 0 supportStructureType = 0 supportOverhang = 5 supportFillPercent = 20 supportDistanceXY = 0.8 supportDistanceZ = 0.1 supportExtruder = -1 spiralizeOuterContour = False brimWidth = 7 raftExtraMargin = 5 raftLineSpacing = 1 raftBaseThickness = 0.3 raftBaseWidth = 0.7 raftInterfaceThickness = 0.2 raftInterfaceLineWidth = 0.2 raftAirGap = 0 raftAirGapLayer0 = 0 raftSurfaceLayer = 1 fixCombineEverythingA = True fixCombineEverythingB = False fixKeepOpenFaces = False fixExtensiveStitching = False fanFullAtHeight = 0 minimumSpeed = 10 coolHeadLift = True numQuality = 1 nozzleDiameter = 0 [quality_0] name = 0.1mm signature = UGFdGjaROx9aQouMAZfWQqs4mQsUIfod layerHeight = 0.105 firstLayerHeight = 0.2 layer0widthPercent = 100

Create a text file and put that text in it.

To import a config file, open repetierHost, open the slicer tab, click configuraton and click import. Select the config file and it should get imported.

When you want to slice a model, you need to select the printer in the “Printer Configuration” field, it should have the same name as the file you imported.

That’s all you need to do, click slice and put it on an SD card. It might be possible to print from the computer aswell but I havn’t tested it.

You might also have to set the port of the printer, to do that, go to config->Printer Settings and select the port of the printer. The default /dev/ttyUSB… worked fine for me.

Firmware

This is only a theory but I suspect that it is perfectly possible to flash the firmware of the printer from linux. The arduino IDE is cross platform and runs fine on linux and the “drivers” for the printer seem to be installed automatically. All you need to know is the serial port of the printer which I found to be /dev/ttyUSB on my system. Once you know that, all you would need to do is open the firmware sketch in the arduino IDE and upload it.

I got some of this info from the k8200 forum but I don’t remember the specific posts so credit to whatever posts they were.

If I made any misstakes or you have any questions I would love to hear them.

The setting firmare from linux is true. You just install the Arduino IDE, open the Marlin.ino and upload to the printer as per the instructions on the velleman manual. No problems.

Repetier on linux is working good with these settings. It is important to also have correct filament settings, they have been posted on: viewtopic.php?f=61&t=13248&p=58566#p58543
I have some problems with the extruder, but I use ABS not of Velleman, so perhaps that is a bit of a problem. Still tweaking settings.

I have a K8400. For me the settings on this page did not work. They caused Y-axis shift problems.

The settings at
viewtopic.php?f=61&t=13248&p=60336
work for me. They are different in more than filament department.