Jon Takacs Log

From Open Source Ecology
Jump to: navigation, search


Takacs Ideas Page DONE TODO BLOCKS

HintLightbulb.png Status - Done: NONE To Do: MES concept design. D3DOH Printer Startup Blocks: Time available


Hard year with a house fire. My company is also making the vaccine, so was out for a while doing that. With a good chunk of money, I'm hoping to have my company work on developing OSE MES.

I have parts for 3 D3D printers, and have 3 ender 3's.

Continuing work again on robotic system for printing and removing magnetic beds from printers.

Also starting work on business plan - OSE_MES Business Plan


Making robotic platform for managing printers. Still working on MES for printers.

Hoping to get things together.

Finally got the 12x12 raising by increasing motor current on stepper board.

4/20/2020 to 4/26/2020

D3D oh 12" work.

  • Still an issue with torque rating bed with both z stepper properly set? Need to look into this. Even had this issue without microstepping (removed jumpers)..See if your 2 steppers are identical. If they are not, one may draw more juice and weaken the other.Swap out stepper driver from other sockets and see if it's a bad driver.
  • Needed fiberglass to get 12" China Heated pad up to 110 C - otherwise topped out at 94C and threw temp overrun errors.
  • E steps per MM WAY off for x, y, z. what is it? Could of also led to torque issues. Which extruder are you using? 425 for E3D, 100 for Universal Gearless.

Making parts for a D3D universal.

2/16/2020 to 3/20/2020

  • Time available issues. Still working on worm gear drive so I can test D3D OH.
  • Other projects are
    • a magenetic quick connect wiring harnesses. (Idea for this, perhaps OTS "magnetic attach phone chargers" for phones (micro usb and usb c mostr likely could be used by OSE) as an off the shelf solution? would just need to get a usb to pcb hat/board/wire adapter )
    • mag hardpoint mounts for PVC (think a friction clamp to the PVC With a D3D exposed magnet grid for attaching a UAxis or other stuff)
    • looking into eliminating a Y motor and a Z motor by just putting a coupling Axel between the axies.

9/27/2019 to 2/16/2020

Testing D3D ohio

-issues with amount of torque from uaxis, cannot lift z plate. --Evaluating what I can do to fix this - I think I want a worm gear device. -Choice of Z 12" heating pad does not heat above 85C. -This isn't magnetically mounting - I'm mounting end on to the PVC that is a loss of movement area. Since switching to the areostruder from the prusa I3, I have not enough room to have the plate centered and be able to cover the whole are which further complicates the Z torque issue. I need to use prints that grip onto the PVC pipe that expose a magnetic mount hardpoint to ensure more travel space inside the box.

  • Designing a Gearbox for D3D OH involute worm gearbox that will attach magnetically to the existing system sorta like a gear box upgrade - and modify its gear ratio.
  • Designing a system for connecting wires, basically a magnetic wireing quick connect that only needs two magnets, two screws and two nuts.

These will be at

Ideas and notes

  • For D3D uaxis, some basic test data is not here yet- we need some basic quality and scale testing like its mechanical limits*

So, here is a design of experiments to find its absolute max load and effective recommended load.

Evaluate the breaking load of D3D axis under various micro-stepping levels. find load mass that is conductive to reliable operation.

--Detail of item under test--

  • Take a D3D axis with a standard NEMA17 motor of 2' length. (detail exact parts used and specs of motor) Place it vertically. put two steel rods through it.
  • Evaluate the maximum load-bearing capability by placing two vessels of water (or whatever mass) on either end such that the load is evenly placed on the device.

--Find the point at which it cannot move when attempting to move at no micro-stepping and max micro stepping.

--At this load, cycle it up and down until the unit is broken and does not raise. evaluate the failure mode.

--decrease the load and retest until the device operates for a favorable period of time, and shows no signs of critical wear caused by that load.

I need this kind of data to better design things around this and know this is the way to do things right. all future products need this kind of testing. Instead of just building a gearbox, I should know what this can do and what I need it to do. But honestly for now - wormgear. I want that passive holding torque and know an arbitary choice will accomplish this - the belt is no mechanial advantage to the shaft force afterall, and is only a minor boon to speed and bane to torque. Found some good videos on sweeping out a thread pattern

Tests Today

3:16 -Removed micro stepper jumpers in an attempt to boost torque. no discernible gain. -Other ideas -- single worm gear driven u-axis with a shaft going under the printer made of a lathed down piece of stock would allow for a single Z-axis motor. -- could also likely apply this logic to the y-axis; except would not need a worm gear there. so, subtract two motors from the BOM.


Parametric Universal Magnetic Wiring Quick Connect

Idea for a wiring harness - strip a wire exposing a large amount of conductor. bend conductor over a square channel piece in a "D" shape. Hold wire in place with bolted plates securing both parts. repeat. Mesh connectors using guides and magnets. Easy quick connect harness for almost any size wire! size of wire guides could be parametric in CAD. Drawing: WIP


OSE_Automation this page tracks robotic automation systems that will work with the MES. this is focused on machines that will take orders from operators or the MES system to preform tasks Such as Logistics, inventorying, Manufacturing, Assembly and track and trace.


OSE MES code -Worked on main python script file -some research on octoprint integration


MES Datastructures and


D3D_Ohio_v18.02 -setting up endstops, had issues here Issuing M119 to show endstop status - I only see Xmin Ymax Zmin

All electrically are closing the contactor. Issues: -Zmin does not show up when triggered but is on Zmin pin. check out firmware -Why is only Y Max showing up? arn't these all mins? Y max shows triggered when depressed when I issue M119 properly, and not energized when not depressed. BUT does not STOP the Y Axis! Yikes! BECAUSE what is stopping it is supposed to be a Y min... NEEED to fix in FW -XMIN is working fine...

Follow up 5/7/2019 --> use this to get down how they are doing this in production. maybe check out how FW is setup for 19.02 and do NP ++ compare with mine... why are my ES reporting so oddly>?



  • Focused on Machine SQL tables
  • Working on the concept of "Tools"
    • - All machines have tools they use Assembly instructions will remark what TOOLS a machine requires to execute the instruction.
  • Worked on Daemons some more.

MES Core Dispatch

    • Produced a GIT repo for MES:

MES_SDS worked on project management and schedule here.


MES SQL system and Daemon design. MES Core Dispatch - Primary Daemon that takes and order from the commercial paid orders table to supervises other processes to see the product all the way to shipping.


MES_SDS - MES core design documents, machine dispatch service, Part design language [PDL], Machine control section, using Octoprint as a basis for automated print clusters.


I need a working printer to do anything!

So, REALLY need to get my ducks in a row on the D3D... I just need to start from the ground up, to difficult to follow our prior build docs. AND I need to make the docs we need!

Here is what Dist. partner Marcin is selling, so it must be tried true and stable :

  • Added my printer firmware to a GIT repo:
  • Reflecting that software is technically a "part" that needs assembled though "flashing" to controlers parts. I should track software and versions just like to track everything else

with the MES... Need to table this in MES SDS feature requests. (maybe later tonight I kick off a GIT for that?)

Taking orders and continuously printing parts

    • There is a print queue request for octoprint and some discussion on it. Might roll with this. Just needs a connector to the ERP system to get a list of pending commercial orders. Basic connectivity is the goal right now.
  • This feature is huge and needs a page. And consideration of how we will organize machine automation features - I'd like to, for now, have each machine use a linux (raspi?) machine for managing machine operation.
    • so, here is born D3D Mass production DS and D3D Mass production SDS these will cover hardware and software solutions for having a D3D geneology printer preform unmanned printing and ejection; maybe even QC.
    • DS is a design spec. more tailored to mechanical or electro-mechanical machines. SDS is a software design specification for some software project.
    • short term tho - I need to have a queue of orders from the website use some sort of GCODE starter. (octoprint API? or some sort of net connected printer control to just STREAM gcode from the RASPI to the RAMPS)to run a GCODE file for ejection of a print, and one for printing to start.
    • checking the bed for stuff visually before printing, machine vision checking of prints after printing yadda yadda yadda are all just feature requests of these down the totem pole.
  • Open Source Commercial Webpage SDS - Here is where I will track the project for a distributive enterprise documented open source website for selling microfactory produced goods.

this page will be a blog for the factory owner, and will integrate with the Enterprise Resource Planning ERP system for putting commercial orders in queue, that the MES MES SDS will consume to produce product.


Looking into data formats for MES SDS

Microfact product ideas

4/1/2019 to 4/2/2019

D3D_Ohio_v18.02 wiring and inital startup attempts

Bringing my commercial website online - considering only open source options OSE DE Webstore

Also writing about integrations with MES SDS to an Enterprise Resource Planning ERP system.

ERP in simple terms is the business side of things, money, accounting, purchasing sales. It is the highest level of the industrial business computer system.

Here's a good article:

order is

  • 1 ERP- buiznasssss
  • 2 MES (Manufacturing execution system)- takes direction from the buisness side to manage all aspects of production, accounting that production, and implimenting track and trace on produced goods though their lifecycle.
  • 3 SCADA (Supervisory control and data acquizition)- this will be the system that sends out supervisory commands to all the plants machines based on what the MES wants to

do with orders from the ERP.

  • 4 PLC PID PC - or in our case all our machines. this is how the machines execute direction given by SCADA
  • 5 sensors actuators and hardware - this is how the parts in the machine execute orders from the machine. like the position data of 3d printer head, its temperature and other data. this layer also shoots that data all the way up to all the other layers.


MES SDS manufacturing execution system software design specification A MES system keeps track of-

  • Raw material supply
  • Orders upon the factory for products
  • Placing and tracking orders made for raw materials or components to fulfil stock or quota determined by MES analetics or people
  • WIP (Work in progress) products and product componets
  • A ton of other things

BIT SDS Buisness Intelligence System software design specification A BIT keeps track of and does:

  • sales and bean counting
  • Accounts receivable
  • basically, tracks performance and resources... very related to the MES.


D3D_Ohio_v18.02 firmware and connections


Look like I'm about to ellipse when I ordered the D3D parts last year. Moving the work indoors and having beat being out of work sick a week and other life changes I will focus on resuming efforts here - Not to easy to start a business with a child and family while maintaining balance with them. What may help other developers in the future is developing "Days" of the week for each of you - Sunday is my day to focus on hobbies and some of the house chores I focus on. While I enjoy being with my daughter every second of the day, Having break days is proving to be a good rest.

So, less talking/Writing and more doing! I need the D3D and my other cluster printers up so I can start making products, products, products.

I've thought of several products to have on release, and general business missions statements that I will capture in my log today. On the D3D today, I will focus on wiring and extruder / printer calibration.

Business / Mission statements

Product Ideas

Product general mission - Do more with less. I want to have minimal, minimal electronic platforms. I'd like most or all products to be focused on Raspi, arduion, relays and a small count of basic discretes. Mechanical parts will also be standarized. So, for example I would select a micro, small, large and xlarge motor I want to use that could conceivably enter into the ecology at some point. I would always use these same motors in similar mounting traditions, and have special boards to make them controlable or ROS (Robot Operating system) compatible. AND all these boards will be easily drillable with our D3D circuit mill, and would be able to use the D3D pick and place. Same idea with electronics frames. Modular, low part count products both electrially and mechanically. More with less.

1. Low part count Robot Vacuum (as discussed with OSE team at large)

2. Drill (as discussed with OSE team at large



Haven't been on for awhile- been pretty busy and cold to get out to the workshop. going to move the operation indoors, so I can finally get this printer running tonight!

Also, I've been considering products I want to print, and the structure of my store.

goal is to get this and the other four printers up and running, then jump right into a development of a MES (manufacturing execution system) linked store where people can buy prints on my printers, and I can request them.

After that, it will be all about products, products products built with OSE values that I can sell - and the rest of the machines I may need to make them. Making this as automated as possible.

first of these will be an ROS robot modules that will help with production, and compleate ecology requirements for industrial robots, ect followed by robot mower, snowplows and vaccume cleaners.

Lofty goals, hoping to land somewhere near them.


Happy new year! working on the D3D oh today D3D_Ohio_v18.02

-today I am starting with compleating wiring of the D3D prusa I3 Extruder - the idea here is to get basic operation; once I at least have this running I'll look into building our most recent extruder iteration.

-I have the workarea cleaned up and the other three printers set up on newly built workbench - none of them are functional, all have clogged old style extuders. cannot wait to get a good extruder live on these guys!


Takacs Ideas Page


D3D_Ohio_v18.02 Design and printing of 1" D3D PVC drilling jig.


D3D_Ohio_v18.02 Drilling and mounting of D3D - testing cutting methods and test fit with .5" scrap PVC. printing of new extruder parts on new printer


D3D_Ohio_v18.02 recieved new prusa I3 printer!


D3D_Ohio_v18.02 -Work on purchasing -work on a friction mount for the D3D axis - this would friction clamp onto the PVC with screws; and expose a magnetic mounting hardpoint.


D3D_Ohio_v18.02 Hiatus getting 3d parts sourced for D3D extruder. Incorrect JHead was in my home stock, ordered proper J-HEAD and confirmed good fit. Ordering rest of required vitamins to build extruder today. build of new D3D extruder


D3D_Ohio_v18.02 Finish belt routing. Mounting axies to frame. Z bed mounting some electronics work



  • assym of x and y axis to PVC frame. Some electronics rigging.
  • research on how to setup the printer.


D3D_Ohio_v18.02 2hrs repair of airwolf 3d so we can print the Debugged issues with Geeetech mark 8 extruder - fillament jammed. Disassym and emersed hotend in acetone.

- looked for details on assym. of the d3d (Programming, settings ect)


D3D_Ohio_v18.02 PVC cuts and D3D assym.


D3D_Ohio_v18.02 assembly of axis modules


D3D_Ohio_v18.02 Modified CAD drawing to use short idler. Calculations redone and posted to calcs page for team review.


D3D_Ohio_v18.02 Frame added. small adjustments to items. Beginning adding in short idler.


D3D_Ohio_v18.02 Updated drawing. moved around X Y and z axis per meeting feedback. More work to do this weekend.


D3D_Ohio_v18.02 Updated drawing. measurements basicly complete D3D_Ohio 18.20 Calculations - Made and updated


D3D_Ohio_v18.02 - updated drawing (Pending), BOM on dev template.

3/4/2018 to 3/9/2018

D3D_Ohio_v18.02 - updated drawing.

Contracted Pnemonia, have been slow on getting to things past few days. Still trying to get a print out of my old I3 - If someone has parts or can provide D3D prints, please contact me.

3/3/2018 - 3/4/2018

D3D_Ohio_v18.02 -- Played around in freecad, trying to resize be part to 12", then need to resize axis to match. Once I have the right rod lengths and the U-Axis accomidating the 12" bed, I can measure the length and render a pvc frame. I'm having issues moving the assymbly around. Have to get past the learning curve.

-Also worked on my home printer so I can start printing D3D parts. I added a thermister to the heated bed and worked on getting my mark8 extruder to behave.

Corner ends at 1/2 inch and 1" size have arrived.

mass production? see end for contious belt 3d printer. prints on a slant... VERY intresting.

also you can sinter metal looks that the cool way is to print metal bond in resin the normal way, then cut that.


-Going to start having this log just be a quick blurb of what I did and what pages I edited. this stuff needs to start living in my DS branch off of the 3dprinter FS D3D DS.

D3D Functional Specification --Filled out!

D3D Ohio 18.02 Design Specification -- Added stuff! This is where my D3D work will now live. If I mess with it, I will mention that here.

Found a Basis for a render

So ploted up: First Rendering!

I have a great deal to learn in Freecad on more adv. assym work. Such as how There are parameters for assymblies, and there is a linked parameter for rod lenght between the Right and left Y universal axis so you can change lenght in one spot. super cool.

Attempting print again. Modeling 3D3 12" PVC Morning rendering:

First Rendering!

2/23/2018 to 3/1/218

Family sickness, bed versus late night hours Occasional printing and tuning attempts to get parts out for D3D

Parts for D3D continue to come in. purchasing corner ends from amazon per what was modeled by Ruslan

2/22/2018 to 2/23/2018

-Tried to print, had issues with sensors. I had a min temp, this means a short on my extruder0 thermoster... need to check out -Purchased parts from ebay and amazon. --McMaster - still working on getting my account setup there. having a few troubles.

-Having trouble finding all parts and such for freecad was hoping to use an existing rendering. may ask or look for other area. -working with ruslan on getting workbench and pvc stuff loaded up.

Issues finding latest work with freecad, and locating latest workbench


D3D Functional Specification

D3D Ohio 18.02 Design Specification

Functional Specification Document Definition and Template

Design Specification Document Definition and Template

2/17/2018 - 2/20/2018

Ordering of D3D parts per: Learning freeCAD more (macros and move advance assembly) several fixes and epoxy work on printer. Working on bed leveling.



Fixed Z endstop issue! it was always closed. checking with a meter, that port was floating. To fix, I enabled pullups on the Zmin (ardu pin 18) and it is working well. Needed to reglue and attach endstop so will try an actual print tommrow.


more messing around with freecad



Glued and secured extruder to frame on test printer. Started looking more into purchasing parts for main printer build. Looking into 3D modeling the runout sensor. was able to import the .STL mesh into FreeCAD easily.



-z motors moving slow. endstop has a good signal, but not picking up per the 3D3 wiring diagram, z just stops quickly after starting... need to debug... glued in the mk8 extruder to the frame. -Loaded parts and started getting freecad setup to render the filament sensor tomorrow.


-Started researching GIT for versioning our HW / SW projects. -Started thinking about DS / FS layout for 3D3 basepage.



Creating a short development template for my 12" PVC replication of the D3D D3D_Ohio_v18.02

--Organization ideas--


Let's apply some software project management to our printer Hardware and software development cycle to better organize the effort. There are a few key, often "Living" (constantly evolving) documents in any project, R&D or tightly scoped. These documents attached to Project management methods and version control solutions allow for divergent R&D efforts to support a central goal.

So, you'll have a

Functional Specification (FS): "As a user I want to be able to" "The hardware will do x"

Design Specification (DS): "The software accomplishes user requirements in the FS By Though these technologies"

Then you have project management artifacts such as critical path and roadmaps to line up your efforts - what needs to happen before next steps can occur. Then pieces such as gnat charts and burn-down charts to track progress toward a goal. Finally, you have version control that holds organized backups of the project as it progresses in time and is iterated upon to reach the requirements of the FS.


  • So, for 3D3 hardware / software independently there will be InDev and Stable hardware / software releases.
  • The FS will live as a core, living document reflecting the final evolving requirements of a particular machine (aggregate of modules) or module in the OSE ecosystem.
  • Now, off the original FS with both hardware and software there will be, especially with hardware R&D, several "branches" in the project; where a current machine takes a step in a different direction.
    • These new pieces can be organized though DS documents For Each Branch (or wiki pages :) ) That will keep solid track of WHERE that current Branch of the current hardware or software is.
    • At the end of a branch that grows into a stable release, a the DS goes from a WIP document that is laboriously (and necessarily updated) to a wonderfully detailed report on how that particular artifact works at a technical level with support accessible portions so those whom just wish to replicate, can replicate.
  • Strict tracking of branches and versions will allow creation of clear landing pages for any design effort, so any person joining or wishing to use the project can visualize and draw inspiration from the design effort as a whole, or jump down any give rabbit hole of branch and iteration.
  • We can realize an effective distribution of research effort though sharing repository links along with related FS and DS Documents.
    • For OSE, we will have the FS as a wiki page and DS's also as wiki pages.
      • The main project will have a landing page with a blub (A sort of DS in and of itself of the current design of the overall project, R&D efforts and progress) that organizes these documents into a directory of DS pages.
      • Of course, this page for a project links up to an overall current engineering effort page for all machines, and then the individual DS's keep track of their Subversion (version control) links.


Calibration Sunday!\

-Calibrate and adjust the prusa!

-We will attempt our first print today, if all goes well

-Order Recent rev parts I need for D3D (might cannibalize motors from this printer)

-loaded v1.0 of OSE linux... somehow I had V.45?

-Loaded OSE marlin firmware. --Cura seems super limited, no manual control options to calibrate and level the printer. ---OK, making sure I have printer assigned to VM after POR on the printer board I CAN now see a grayed out "control" option in cura- Good. ---Needed to load a print before it would let me touch control thank goodness! ---After tweeking, I have X and Y axis homing properly! Finally! Z endstop is a little sluggish, and Y axis endstop pin mapping is odd, searching for what that might be.

--Tried hooking printer with OSE linux to repiter host, no dice. -Here is where the wiring is. yes, it was a bit unexpected. As I'm using a different printer (for now) I may go back to using repiter host and that firmware for this one. Could test filla runout now though.



Fixed endstop issue. First time, I shorted the logic +- by the common and normally open.

Then, I found the actual firmware (at least what I have loaded) Expects a normally open signal so rewired. rammed into the z axis and had to reglue the sensor, so stopped for the night there.


Filament Runout Sensor


researched converting STL to freecad for model I want to use for the runout sensor.


-Resoldered Servo connector for RAMPS board. -Hooked up all wiring to new RAMPS board

-steppers only move in one direction when commanded from repiter host? (oppisate if contact group reversed... don't know why yet.) Dua - this is due to the endstops. Need to home first, it uses that to "know" where you are allowed to move. I was able to get the x moving after messing with this.

-Board not powered by ATX now, maybe somthing fried. can still command and lcd boots when USB attached and motors still move as before. At the start. only used 15A rated input, then just wired 5A and was able to boot it on just 12V... same results with both 12V inputs wired (Old printer directly put 12V line to the heated bed)

Wired up!

-When endstops are hit, system restarts... looking at the wiring diagram I have this right - I checked the switch contacts--this switch is 3 wire, maybe I'm (o crap) shorting something on one of the lines?

-Yup, dosnt restart with the 3rd wire clipped... darn... Totally likely burned out the 5V reg from 12V?

Yep... need a new reg - no biggie and a lucky break.


OSE marlin- I don't see this installed in the OSE linux image. The wiki seems to suggest it is in the OPT folder, but did not find it there or in home. Wiki also mentioned checking the Arduino Examples directories, but did not see it there either.

for now, I'll get this printer rolling and learn marlin. Once I have a handle on navigating marlin, I'll load the latest and just adapt the mechanics for my printer; I'll need this one to print the D3D parts anyway.

OSE Documentation and project management


I've also spent time thinking how to organize some of OSE's projects, particularly D3D. There will be a landing page for the current hot topic machines, then for each machine i'll cover the KEY pieces someone wanting to replicate the Latest version would need

Current Projects Landing Page

D3D Landing Page


Received my 3D printer kit from amazon! excited to convert my old printer tonight. I'll test the filament sensor if I can. And hopefully, start printing some components for the 3D3 Printer!

Here is the new RAMPS board for my Air Wolf Prusa

My old printer

I pulled a wire out of one of the servo connectors, so need to resolder that!

So far, Firmware updated and ready to roll.


Fillament Runout sensor setup notes


-Downloaded a new copy of marlin firmware from [1] [Latest 1.1.8] -Identified area in firmware that needs updated before pushing to the RAMPS arduino ROM. You need to uncomment line 827 of configuration.h to enable the feature.

Firmware area to edit. Uncomment line 827 of configuration.h in the firmware root directory


To reiterate from prior logs, you need to use or jump SERVO3_PIN. For other boards you may need to define FIL_RUNOUT_PIN seperately, also in this config file. [You'd jump this if you do not have a filament sensor installed]

TODO: When I have a physical RAMPS provide nice pictures on what I am jumping and where that is on the hardware.


Fillament runout sensor Notes


I've an older Airwolf 3d printer (Prusa I3 style ~2013) with a dated, proprietary control board. It doesn't appear to be directly marlin compatible and earlier attempts to load repetier firmware had failed.. As a RAMPS is cheap and I've been looking to replace for awhile, I'll go ahead and grab one on the amazon so my setup can look like the groups. Once I have this, I can quickly test the endstop concept in software.

I also am thinking how I might render this to our current 3D printer.

Here's what I have:

My old printer

Here's the older control board:

Old closed source control board!‎

because i found it, I'm putting the PVC version here:


I'll be making the code change identified in my previous log to OSE linux and finding where the marlin firmware is.


Filament run-out sensor notes 1


some interesting designs. Very simple! I like the first one I see - Printable, and uses just a simple whisker contact switch.



From: [marlin FW site]

"RAMPS-based boards use SERVO3_PIN. For other boards you may need to define FIL_RUNOUT_PIN."

Software -Looks to be easy enough


 #define FIL_RUNOUT_INVERTING false // set to true to invert the logic of the sensor.
 #define ENDSTOPPULLUP_FIL_RUNOUT // Uncomment to use internal pullup for filament runout pins if the sensor is defined.
  1. endif

With this feature, a mechanical or opto endstop switch is used to check for the presence of filament in the feeder (usually the switch is closed when filament is present). If the filament runs out, Marlin will run the specified GCode script (by default “M600”). RAMPS-based boards use SERVO3_PIN. For other boards you may need to define FIL_RUNOUT_PIN.

So, That M600 G-CODE is just

"The M600 command initiates the filament change procedure. The basic procedure will move the print head away from the print, eject the filament, wait for new filament to be inserted and the user to confirm, load and prime the filament, and continue with the print. M600 may be initiated automatically if a filament runout sensor is installed.

Usage M600 [E<pos>] [L<pos>] [X<pos>] [Y<pos>] [Z<pos>] Argument Description [E<pos>] Retract before moving to change position (negative)

[L<pos>] Load/unload length, longer for bowden (negative)

[X<pos>] X position for filament change

[Y<pos>] Y position for filament change

[Z<pos>] Z relative lift for filament change position"

Work Plan

  • Week 1-2 - open source the filament runout sensor - mechanical and electrical design that interfaces with preexisting Marlin Firmware. Clearly document this. Upload code to your log. Entries + Design Spec in Google Presentation embedded in your Log. FreeCAD modifying the existing extruder. Check out the Prusa i2 MK3. Point: just the runout, nothing else at this point - essential rationale is - not losing a long print when the filament runs out. Detects runout, it saves position, moves out of way and reload filamnet.
  • Week 3-6 - Design PVC version - with a 12" print beds fully. Details of exact dimensions - so print bed gets you exactly
  • Week 7 - generate a full BOM
  • Week 8-10 - build 3D printer
  • Week 11-12 - Join Large Extruder Team and replicate.


Found some interesting thermal batteries: Crystalline phase change materials for heat storage may be an OSE compatible device - just using salt to store heat would be super efficient and easy to replicate.


  • Jon works at - good experience on automation
  • Knows ROS + Gazebo
  • Worked on steam turbine (4MW) controls at a wastewater plant incinerator
  • Worked in water purification at a wastewater plant
  • Knows hydraulic and other controls
  • Has friends who do 3DP clay extrusion + kiln


CAD test debrief SCORE 85%

Installing Linux 5 minutes

I had used virtual box to load the OSE linux image. This was a very familiar task for me I do often on the job.

Learning FreeCAD (Most Difficult) - 8 hours

- I had issues finding the "planer constraints". when I tried to rotate a part, I was locked in the x,y axis and did not know why; took some searching to find. - Otherwise, I found freecad accomplished many tasks differently than AutoCAD or Sketchup, with which I am most familiar. The use of separate 2d "sketches" and embedding them to faces was similar to certain aspects of AutoDesk.

Documenting your work - 2 hours

-I have used wiki's from time to time. Took a bit to re-learn the "red Text" concept that a new page is made as a link from a prior page. All content is linked.

-Had issues getting vokoscreen working, Resume functions did not work for that application. When I went to shorten my video, kdenlive was limited to 2000% speed increase, keeping my video at over 30 seconds.

File:TakacsOSECADTest TRY1.mp4


Kdenlive dosn't allow speeding a video beyond 2000%. My capture was 30 minutes log, so I'm left with around a minute video. Either I find some creative way to speed up further, cut, or I need to redo the test with a "time limit"

Attached is the video I have so far, which is a minute or so long instead of the required 30 seconds.

Viewing the video, it also did not render properly. Checking this file I made from memory, I appear to of made some errors on the part layout. I'll redo the cube and shoot to do it in under 20 mins.

File:TakacsOSECADTest TRY1.mp4


-Created this log entry and completed recording of the CAD test. This time, I was able to get vokoscreen to behave and successfully stored the video! now to learn how to edit it to the 30 second version and add the music track.

-Here is the YouTube Video of my full speed CAD test

-Here is the file for the CAD test

File:Takacs - PowerCube.fcstd

1/12 to 1/26/2017

-Focused on installing OSE linux to a Virtual Box image to start working in freecad -Worked on learning freecad ~4days / 8 hours Initially, I had issues rotating objects until I learned how to use the planer constraint tool - I was locked to only a certain axis. I also took plenty of time understanding constraints and how to use them

-Created the cube several times. Vokoscreen would not start and stop correctly, so several recordings were lost