Jump to content
Ultimaker Community of 3D Printing Experts


  • Posts

  • Joined

  • Last visited

Personal Information

  • Country

Dagnall's Achievements



  1. Json's are now sorted, see my recent post https://ultimaker.com/en/community/39211-y-extruder-jsons-for-cura-24-working Still waiting for Cura to fix the center = zero errors.
  2. the error was to use "value" and not default_value" in the Gcode part of the json. Now I have a working set of Jsons. See https://ultimaker.com/en/community/39211-y-extruder-jsons-for-cura-24-working
  3. I have now got a set of Extruder and Machine Jsons that load and work the extruders have "start and end" Gcode definitions that are essential for the Y extruder as it requires a lot of filament to be pulled back before swapping to the next filament. There is room for improvement in the pull back code as it could do with a little push pull sequence to make the pulled back end neat. For anyone else wanting to experiment with the Flux Capacitor dual extruder, the Json can be found at https://github.com/dagnall53/JSONS-for-Cura2_3
  4. Thanks for the support so far. Now I understand that I cannot edit the G code from Cura, I am proceeding.. but slowly. I have a set of Jsons that now compile and slice two colour prints. They are in my GitHub :https://github.com/dagnall53/JSONS-for-Cura2_3 I found the variables "machine_extruder_end_code" "machine_extruder_start_code": And have added these in the extruder jsons, example below "machine_extruder_start_code": { "value": " ; code from right extruder \nG1 E190 F600 ; extend filament fast \nG1 E7.5 F50 ; And take up slack.. \n ;end of start right gcode"}, but they are not resulting in code at the Extruder changes. However the Blank lines after the G92 E0's that Cura adds when the extruders are changed have been replaced with "None" G92 E0NoneT1G92 E0NoneM109 S190 .. so something is happening. There is a note about "Parse errors" in the Cura log : UM.Settings.SettingFunction.__init__ [36]: Parse error in function ( ; code from right extruder I can find no examples of the use of these variables.. I have repeated them in both extruders, should they perhaps be in only one? I tried adding these variables to the Machine definition, as it seemed logical to me that they should be part of the machine, but that did not work either. I hope you can assist... And many thanks Dagnall
  5. I have made some updated extruder and machine json and loaded them in a git hub. Cura now shows me two extruders, BUT I cannot access the "manage printer" setting s that allow me to modify the machine start and end G code from Cura. Code is held in https://github.com/dagnall53/JSONS-for-Cura2_3 along with a copy fo the cura.log file Is Cura VERY pedantic about the json format, or have I made a silly error in adding the G-Code settings?? Thanks in anticipation..
  6. I think it was something to do with the punchtec extruders not finding a punchteck machine. After I found this, I tried to make a pair of delta extruders, (and modified the json to look for these, ) (but they did not work either). Unfortunately, at that point I cleaned out the App data files to make usre I had everything clean. Unfortunately I then deleted the appdata logs as part of trying to clean cura. I then modified the shape of the "punchtec_connect_xl.def" json, and it seems to work..sort of.. There is a serious problem with the machine center= zero causing problems with the print towers, so I have logged that on the github.. From this I assume that it must be something to do with the way Cura now seems to have multiple cross references in the extruder and machine definitions.. Revised machine, one extruder and log code follow below :
  7. Hi, thanks for the work updating 2.4 so it now supports more Delta stuff. I am trying without success to modify a Delta json so that I can use a "flux capacitor" type single head dual extruder. I saw that the punchtec_connect printer has a similar set of extruders (ie no offset between the "two" heads), so I tried to set up a Json for a "deltabot 2extruder" using these extruder definitions. After much trial and error the following code does at least now not cause Cura to crash, but it fails to properly load. If you select it, it sort of "half leaves" the last selected printer on screen, with part of the delta mesh overwriting the last printer mesh. It also fails to show two extruders. I am sure it must be a simple error in the Json , but I cannot find it. Any corrections would be much appreciated. { "id": "deltabot_2ex", "name": "DeltaBot 2ex", "version": 2, "inherits": "fdmprinter", "metadata": { "visible": true, "author": "", "manufacturer": "", "category": "Other", "icon": "icon_ultimaker2", "platform": "kossel_platform.stl", "file_formats": "text/x-gcode", "machine_extruder_trains": { "0": "punchtec_connect_xl_extruder_0", "1": "punchtec_connect_xl_extruder_1" }, "platform_offset": [ 0, 0, 0]}, "overrides": { "machine_name": { "default_value": "DeltaBot 2Ex" }, "material_diameter": { "default_value": 1.75 }, "speed_travel": { "default_value": 150 }, "prime_tower_size": { "default_value": 8.66 }, "infill_sparse_density": { "default_value": 10 }, "speed_wall_x": { "default_value": 30 }, "speed_wall_0": { "default_value": 30 }, "speed_topbottom": { "default_value": 20 }, "layer_height": { "default_value": 0.2 }, "speed_print": { "default_value": 30 }, "machine_heated_bed": { "default_value": true }, "machine_center_is_zero": { "default_value": true }, "machine_height": { "default_value": 127 }, "machine_gcode_flavor": { "default_value": "RepRap (Marlin/Sprinter)" }, "machine_depth": { "default_value": 175 }, "machine_width": { "default_value": 175 }, "machine_extruder_count": { "default_value": 2 }, "retraction_amount": { "default_value": 4.2 }, "retraction_speed": { "default_value": 400 }, "machine_start_gcode": {"default_value": "G21 ;metric values\nG90 ;absolute positioning\nM82 ;set extruder to absolute mode\nM107 ;start with the fan off\nG28 ;Home all axes (max endstops)\nG1 Z15.0 F9000 ;move the platform down 15mm\nG92 E0 ;zero the extruded length\nG1 F200 E3 ;extrude 3mm of feed stock\nG92 E0 ;zero the extruded length again\nG1 F9000\n;Put printing message on LCD screen\nM117 Printing..." }, "machine_end_gcode": {"default_value": "M104 S0 ;extruder heater off\nM140 S0 ;heated bed heater off (if you have it)\nG91 ;relative positioning\nG1 E-1 F300 ;retract the filament a bit before lifting the nozzle, to release some of the pressure\nG28 ;Home all axes (max endstops)\nM84 ;steppers off\nG90 ;absolute positioning" }, "machine_shape": { "default_value": "elliptic"}}}
  8. Although this bug has come up in another topic, I thought i would start a new simple topic just to record this bug so the developers can sort it. The Print tower position is incorrectly shown when machine_centre_is _zero = True The image below shows a print tower at 60x,40y (as it set it in the dual extrusion positions tab). BUT, the greyed shadow in bottom left quadrant, just below and to the left of the printed items, is where Cura "thinks" the print tower is for slicing. Placing items here causes slicing for that item to be stopped. Obviously the print tower locations have not accounted for 0,0 offset to the middle of the printbed when "machine_centre_is _zero = True" Cura will not accept negative values for the print tower, so obviously it does not properly recognise the effects of "machine_centre_is _zero = True" The Json I used is just the Ultimaker_Original_Dual_Extrusion, but with these changes: "platform": "kossel_platform.stl", "machine_center_is_zero": { "default_value": true} I found this in 2.3, and reported it, but I was hoping that 2.4 might have corrected the bug, but its still there.... This is related to my thread on Disallowed areas
  9. I tried slicing a tiny part and placing it well away from the disallowed area! But it still did not slice. To test, I modified the standard Ultimaker original dual extrusion JSON with just these changes: "platform": "kossel_platform.stl", (so I can visually see that the machine JSON is different from the original.. "machine_center_is_zero": { "default_value": true .. Because my machine is center = zero.. },"machine_disallowed_areas": { "default_value": [ [[-34, -85], [ -85, -85], [-70, -70]]]} .. the test for disallowed areas.. With just these changes, it refuses to slice: SO, I remove the Disallowed area, and restarted and - providing I have the prime tower suitably placed see later...., I can slice... What I noticed however is that "red" box showing the prime tower placement ( or the small grey shadow it leaves) is NOT where the final slicing places the box.. I assume that this because there are faults in the program that do not take account of the "center is zero" switch. When modifying the tower position, it looks like the "red" ( or greyed box) position that shows the prime tower when you adjust the position is showing in the lower left printbed quadrant, (where 0,0 would be if not center=zero) but when slicing, is properly placed in the top right quadrant. You can see in the image that the prime tower is top right, but the "shadow" of the "prime tower location" is down in the left bottom quadrant at 60 x, 40 y. As confirmation, I tried to set negative values in the prime tower positions, and the code refuses to accept them, making the data entry box red.. Thiis is definitely a fault as far as Center=zero is concerned. I suspect that the disallowed area problem is also related to this issue as my test disallowed areas are negative (so should show in bottom left?) .. but actually result in a greyed area in the top left.. Interestingly, if I use the full set of disallowed areas that produces a near circle, they seem to be "correctly placed, but I strongly suspect that the code is misinterpreting the Y axis for disallowed areas and Center = zero , and that this is the root cause of the refusing to slice.
  10. I am trying to move to 2.3.. but.... I have added a very small triangular "machine_disallowed_areas" to my dual extruder printer's .def.json. Now it will not slice at all. Removing the lines that I added : "machine_disallowed_areas": { "default_value": [ [[-34, -85], [ -85, -85], [-70, -70]]]} makes it print again, so it is just this disallowed area that is stopping the slicing for some reason. With a single extruder printer, the machines_disallowed_areas seems to work fine and I can slice. This looks like a bug to me.. Can it be fixed, or is there something else going on? Second question: where are the "preSwitchExtruder" and postSwitchExtruder" G codes ?? I need these to do some extruder purging when switching extruders... I am sure you must have kept them somewhere, but I cannot find them. Thanks for the otherwise awesome software!. Dagnall
  • Create New...