I have an avid ex servo machine to which I added an ether1616 board to get a few more outputs. I figure there would be some way to go from gcode to relay but I can’t figure out how to do it. I have output 38 set up to control my dust collector.
The cnc12 documentation says that m94/38 should do the trick but it also says that m94/3 should control output 3 (relay 1) but m94/63 is what avid uses to control output 3 so I am guessing that avid has co-opted the m94/m95 commands. I have tried m94/98.
If you’re not using flood coolant you can go into the Acorn wizard and assign “router dust collection” to the Ether1616 output for your dust collection.
You can then start / stop dust collection with M8 / M9.
If for some reason you are using M8 for flood you can map a generic Output1-8 to that output and call on/off using M61-M68 / M81-M88.
This is a great solution, there are also dedicated Dust Collector outputs you can assign as well, I don’t know off the top of my head if there’s an M Code associated with them (I believe there is)
What are the rules/suggestions/best practice on mapping the generic outputs. I see most of them are already assigned, and that you can only use “OUTPUT8” for certain output relays. Assigning it to anything other than then the 8th output of a given device (acorn,ether16) results in an error.
If I start reassigning the outputs do things stop working?
You can go into the list of “custom” outputs and assign them to ether1616 outputs. Those are M94xxx/M95xxx
Those you would call directly by an M command like this:
M94/111 would turn “111” on, m95/111 would turn it off. These are “dumb” outputs, they only do what they’re told with those M commands (you can test M commands in the MDI window in CNC12)
If you use any “descriptive” outputs like “dust collector” “laser align” etc those have additional logic/smarts attached to them. In the CNC12 Operators manual (from Centroid) near the end you can see a description of how all of these work. You can decide if the additional logic for one of these is something you want to use.
I found all that stuff and tried it, only to find that it didn’t work. After you reaffirmed that it should have worked I went back and found that the default setting of the ether1616 outputs is FORCED off. Setting them to normal fixed everything.