files brynjarh23 found on the basement computer

This commit is contained in:
2025-10-16 14:42:56 +00:00
parent 6e31fe8cad
commit b820ff3a07
3784 changed files with 654066 additions and 0 deletions

View File

@@ -0,0 +1,8 @@
speed.csv:Flow Rate Setting (float):=1.98
reversal.csv:Activate Reversal=True
reversal.csv:Reversal speed (RPM):=35.0
reversal.csv:Reversal time (milliseconds):=75.0
reversal.csv:Push-back time (milliseconds):=75.0
reversal.csv:Reversal threshold (mm):=1.0
reversal.csv:Activate early reversal and push-back=True
replace.csv:M108 S=M108 R

View File

@@ -0,0 +1,31 @@
bottom.csv:Activate Bottom:=False
carve.csv:Layer Thickness (mm):=0.39
fill.csv:Infill > Perimeter > Loops=True
fill.csv:Loops > Perimeter > Infill=False
fill.csv:Infill Perimeter Overlap (ratio):=0.4
fill.csv:Infill Solidity (ratio):=0.4
inset.csv:Overlap Removal Width over Perimeter Width (ratio):=0.7
outline.csv:Activate Outline=True
outline.csv:Outline Margin:=3.0
raft.csv:Base Layers (integer):=0
raft.csv:Base Nozzle Lift over Base Layer Thickness (ratio):=0.2
raft.csv:Interface Layers (integer):=0
raft.csv:Object First Layer Feed Rate Infill Multiplier (ratio):=0.5
raft.csv:Object First Layer Feed Rate Perimeter Multiplier (ratio):=0.5
raft.csv:Object First Layer Flow Rate Multiplier (ratio):=0.5
raft.csv:Operating Nozzle Lift over Layer Thickness (ratio):=1.0
raft.csv:Raft Additional Margin over Length (%):=1.2
raft.csv:Raft Margin (mm):=4.0
raft.csv:Support Flow Rate over Operating Flow Rate (ratio):=2.0
raft.csv:Support Gap over Perimeter Extrusion Width (ratio):=2.0
reversal.csv:Reversal time (milliseconds):=65.0
reversal.csv:Push-back time (milliseconds):=65.0
speed.csv:Feed Rate (mm/s):=28.0
temperature.csv:Base Temperature (Celcius):=230.0
temperature.csv:Interface Temperature (Celcius):=220.0
temperature.csv:Object First Layer Infill Temperature (Celcius):=220.0
temperature.csv:Object First Layer Perimeter Temperature (Celcius):=220.0
temperature.csv:Object Next Layers Temperature (Celcius):=220.0
temperature.csv:Support Layers Temperature (Celcius):=220.0
temperature.csv:Supported Layers Temperature (Celcius):=220.0
wipe.csv:Activate Wipe=False

View File

@@ -0,0 +1,31 @@
bottom.csv:Activate Bottom:=False
carve.csv:Layer Thickness (mm):=0.39
fill.csv:Infill Perimeter Overlap (ratio):=0.4
fill.csv:Infill Solidity (ratio):=0.4
fill.csv:Extra Shells on Alternating Solid Layer (layers):=1
fill.csv:Extra Shells on Base (layers):=1
inset.csv:Overlap Removal Width over Perimeter Width (ratio):=0.7
outline.csv:Activate Outline=True
outline.csv:Outline Margin:=3.0
raft.csv:Base Layers (integer):=0
raft.csv:Base Nozzle Lift over Base Layer Thickness (ratio):=0.2
raft.csv:Interface Layers (integer):=0
raft.csv:Object First Layer Feed Rate Infill Multiplier (ratio):=0.5
raft.csv:Object First Layer Feed Rate Perimeter Multiplier (ratio):=0.5
raft.csv:Object First Layer Flow Rate Multiplier (ratio):=0.5
raft.csv:Operating Nozzle Lift over Layer Thickness (ratio):=1.0
raft.csv:Raft Additional Margin over Length (%):=1.2
raft.csv:Raft Margin (mm):=4.0
raft.csv:Support Flow Rate over Operating Flow Rate (ratio):=2.0
raft.csv:Support Gap over Perimeter Extrusion Width (ratio):=2.0
reversal.csv:Reversal time (milliseconds):=70.0
reversal.csv:Push-back time (milliseconds):=73.0
speed.csv:Feed Rate (mm/s):=28.0
temperature.csv:Base Temperature (Celcius):=230.0
temperature.csv:Interface Temperature (Celcius):=220.0
temperature.csv:Object First Layer Infill Temperature (Celcius):=220.0
temperature.csv:Object First Layer Perimeter Temperature (Celcius):=220.0
temperature.csv:Object Next Layers Temperature (Celcius):=220.0
temperature.csv:Support Layers Temperature (Celcius):=220.0
temperature.csv:Supported Layers Temperature (Celcius):=220.0
wipe.csv:Activate Wipe=False

View File

@@ -0,0 +1,27 @@
#!/bin/bash
DIFF_COMMAND='diff -P -u -x "*~" -x "\.*" -r '
PREVIOUS="replicatorg-0023-linux"
CURRENT="replicatorg-0024-linux"
OUTPUT_FILE="release_diffs"
echo "Profile differences between ${PREVIOUS} and ${CURRENT}" > ${OUTPUT_FILE}
SKEIN_ENGINES=( "skein_engines/skeinforge-35/skeinforge_application/prefs" "skein_engines/skeinforge-0006/prefs" )
for engine in ${SKEIN_ENGINES[@]}
do
for profile in `cd ${CURRENT}/${engine}; ls -d */`
do
echo "" >> ${OUTPUT_FILE}
echo "" >> ${OUTPUT_FILE}
echo "Comparing ${profile} *****************************************************" >> ${OUTPUT_FILE}
previous=${PREVIOUS}/${engine}/${profile}
current=${CURRENT}/${engine}/${profile}
${DIFF_COMMAND} ${previous} ${current} >> ${OUTPUT_FILE}
done
done

View File

@@ -0,0 +1,14 @@
(*** Thing-O-Matic calibration script ***)
(*** ***)
(*** This script will guide you through ***)
(*** calibrating the start position ***)
(*** on your Thing-O-Matic. ***)
M18 (This disables the stepper motors.)
M01 (Move the build platform until the nozzle lies in the center, then turn the threaded rod until the nozzle just touches the surface without pressing into it. Then, press yes to continue.)
G92 X0 Y0 Z0 A0 B0 (Declare the current position to be (0,0,0,0,0))
G162 Z F500 (Home Z axis maximum; go until reaching the end stop.)
G161 X Y F2500 (Home X and Y axis minimum; go until reaching the end stop.)
M131 X Y Z A B (record the current coordinates to the motherboard)
M00 (Congratulations, your coordinates are now saved! To tweak them, use the 'Motherboard Onboard Preferences' dialog in the Machine menu. <br/>Note: You will need to re-generate your gcode files using a new profile in order to use these saved settings.)

View File

@@ -0,0 +1,79 @@
#!/usr/bin/python
import struct
import sys
def parseToolAction():
global s3gFile
packetStr = s3gFile.read(3)
if len(packetStr) != 3:
raise "Incomplete s3g file during tool command parse"
(index,command,payload) = struct.unpack("<BBB",packetStr)
contents = s3gFile.read(payload)
if len(contents) != payload:
raise "Incomplete s3g file: tool packet truncated"
return (index,command,contents)
def printToolAction(tuple):
return "Command %i for tool %i (len %i)" % (tuple[1],tuple[0],len(tuple[2]))
# Command table entries consist of:
# * The key: the integer command code
# * A tuple:
# * idx 0: the python struct description of the rest of the data,
# of a function that unpacks the remaining data from the
# stream
# * idx 1: either a format string that will take the tuple of unpacked
# data, or a function that takes the tuple as input and returns
# a string
# REMINDER: all values are little-endian. Struct strings with multibyte
# types should begin with "<".
# For a refresher on Python struct syntax, see here:
# http://docs.python.org/library/struct.html
commandTable = {
129: ("<iiiI","Absolute move to (%i,%i,%i) at DDA %i"),
130: ("<iii","Machine position set as (%i,%i,%i)"),
131: ("<BIH","Home minimum on %X, feedrate %i, timeout %i s"),
132: ("<BIH","Home maximum on %X, feedrate %i, timeout %i s"),
133: ("<I","Delay of %i us"),
134: ("<B","Switch to tool %i"),
135: ("<BHH","Wait for tool %i (%i ms between polls, %i s timeout"),
136: (parseToolAction, printToolAction),
137: ("<B", "Enable/disable axes %X"),
138: ("<H", "User block on ID %i"),
139: ("<iiiiiI","Absolute move to (%i,%i,%i,%i,%i) at DDA %i"),
140: ("<iiiii","Machine position set as (%i,%i,%i,%i,%i)"),
141: ("<BHH","Wait for platform %i (%i ms between polls, %i s timeout)"),
142: ("<iiiiiIB","Move to (%i,%i,%i,%i,%i) in %i us (relative: %X)"),
143: ("<b","Store home position for axes %d"),
144: ("<b","Recall home position for axes %d"),
}
def parseNextCommand():
"""Parse and handle the next command. Returns
True for success, False on EOF, and raises an
exception on corrupt data."""
global s3gFile
commandStr = s3gFile.read(1)
if len(commandStr) == 0:
print "EOF"
return False
(command) = struct.unpack("B",commandStr)
(parse, disp) = commandTable[command[0]]
if type(parse) == type(""):
packetLen = struct.calcsize(parse)
packetData = s3gFile.read(packetLen)
if len(packetData) != packetLen:
raise "Packet incomplete"
parsed = struct.unpack(parse,packetData)
else:
parsed = parse()
if type(disp) == type(""):
print disp % parsed
else:
disp(parsed)
return True
s3gFile = open(sys.argv[1],'rb')
while parseNextCommand():
pass

View File

@@ -0,0 +1,82 @@
#!/usr/bin/python
# Here are some G and M codes you may find useful.
# G1 X5 Y-5 Z6 F3300.0 (Move to postion <x,y,z>=<5,-5,6> at speed 3300.0)
# G10 L2 P0 X20 Y0 (set preset work coordinate system 0, G54, offset to add 20 to the x axis and 0 to the y axis)
# G10 L2 P1 X20 Y0 (set preset work coordinate system 1, G55, offset to add 20 to the x axis and 0 to the y axis)
# G21 (set units to mm)
# G53 (use the machine coordinate system)
# G54 (use preset work coordinate system 1)
# G55 (use preset work coordinate system 2)
# G56 (use preset work coordinate system 3)
# G57 (use preset work coordinate system 4)
# G58 (use preset work coordinate system 5)
# G59 (use preset work coordinate system 6)
# G90 (set positioning to absolute)
# G92 X0 Y0 Z0 (set current position to <x,y,z>=<0,0,0>)
# M101 (set toolhead 0 on, forward)
# M102 (set toolhead 0 on, reverse)
# M103 (set toolhead 0 off)
# M104 S220 T0 (set toolhead 0 temperature to 220)
# M108 S255 (set toolhead 0 speed to 255)
# M109 S135 T0 (set toolhead 0 heated-build-platform temperature to 135)
# M201 (set toolhead 1 on, forward)
# M202 (set toolhead 1 on, reverse)
# M203 (set toolhead 1 off)
# M204 S220 T1 (set toolhead 1 temperature to 220)
# M208 S255 (set toolhead 1 speed to 255)
# M209 S135 T1 (set toolhead 1 heated-build-platform temperature)
# The nozzles are 19.2374 mm apart along the x axis.
import os, sys
usage = "usage: %s <inputfile>" % os.path.basename(sys.argv[0])
objectToolHead = "T3 (G54)"
supportToolHead = "T4 (G55)"
supportToObject = """
M102 T4 (set toolhead T on, reverse)
M101 T3 (Extruder on, forward)
G04 P2200 (Wait t/1000 seconds)
M103 T4 (set toolhead T off)
M103 T3 Extruder off)
G54
"""
objectToSupport = """
M102 T3 (set toolhead 1 on, reverse)
M101 T4 (Extruder on, forward)
G04 P2200 (Wait t/1000 seconds)
M103 T3 (set toolhead 1 off)
M103 T4 (Extruder off)
G55
"""
supportOpening = "M108 S510.0"
supportReplace = "M108 S255 support replaced"
objectOpening = "M108 S255.0"
objectReplace = "M108 S255 object replaced"
if len(sys.argv) == 2:
if os.path.isfile(sys.argv[1]) == True:
print "Switcherooing tool heads..."
input = open(sys.argv[1])
output = open("switcherood-"+sys.argv[1], 'w')
for s in input:
output.write((s.replace(supportOpening, objectToSupport + supportReplace)).replace(objectOpening, supportToObject + objectReplace))
# for s in output:
# output.write(s.replace(objectOpening, supportToObject + objectReplace))
input.close()
output.close()
print "Toolheads switcherood"
print objectToolHead + ": object material toolhead."
print supportToolHead + ": support material toolhead."
else:
print sys.argv[1] + " is not a file or does not exist."
else:
print usage