I have seen rotary pen tables costing $250-$300 (even directly from China on AliExpress) - and those don’t even include a controller (just the stepper and the rotary table).
I think we can do better… I have published EVERYTHING required under the above OPEN SOURCE GitHub Project. There is a lot of info in the above project (please read it), but the basics are as follows:
An application on the PC (INDEXER.EXE) is used to communicate directly with a controller on the USB Bus. The controller runs software (USBStepperCtl.ino) on a microcontroller (Arduino or ESP32) to drive a stepper controller (TB6600). The stepper controller then drives a Nema23 Stepper with a rotary table (3D Printed) attached to it.
The above project includes all software source code (PC and Microcontroller), 3D Print Files (for the controller enclosure and Rotary Table), a detailed parts list, and a wiring schematic. Several options are provided such that the enclosure can be printed to hold all components, or split into a controller/stepper pair such that the controller can be used to drive ANY standard stepper which uses a 4-pin GX-16 connector (i.e. a rotary chuck)…
Not only can all these parts be sourced for about $65, but the controller operates COMPLETELY INDEPENDANT of a laser enclosure. The controller communicates via the USB port on the PC and does not require a dedicated axis connection on your laser.
While most Galvo lasers have an axis connector you can use, this rotary table can be ALSO be used with a CO2 laser (which requires that both the X and Y Axis be fully operable when engraving pens (bamboo for instance)).
Anyway, the ONE THING WE NEED is for the Lightburn engineers to add support for a pre-job and/or post job command specification. I have asked for this on several occasions but have never made any real headway. Now that Lightburn includes an option that allows us to control a rotary table on a Galvo laser, all we need them to do is similarly support a “Command Line” option at the beginning and/or end of a run for multiple jobs. IOW: Using the above project, all you need to do is issue the command line “INDEXER.EXE CW” (clockwise) or “INDEXER.EXE CCW” (counter-clockwise) to rotate the table as desired.
There is a lot of flexibility which can be found here. …and it is completely independent of any direct connector to your laser (which may or may not be available).
The requirement of a third party executable that only runs under Windows might be a problem for the Lightburn people… it would clearly eliminate anyone with a Mac or Linux os from using it natively…
Or do you have INDEXER running on these other platforms also?
I noticed it’s executable and/or it’s source code is not in the download zip file from github…
I only write for Windows and/or Linux. I have provided all my source code in any case.
I am not trying to build something that satisfies everyone. However, I am happy to share what I have built for myself. Someone else can write the Mac stuff. However, this clearly demonstrates what can be automated by external command execution…
The ability to issue a command line before and/or after a job is not rocket science. (In Windows it is literally a single function call). Lightburn engineers can implement very easily if they so desire. They have recently added the ability to run a job multiple times (and control a laser-attached rotary table) so they clearly have flagged these types of events within their software. All they need to do is provide the ability to issue a command line execution from within the program.
Right now, I can run my indexer by simply clicking on desktop icons. One icon is defined as “indexer.exe ccw” and the other is defined as “indexer.exe cw”. It would be much easier if Lightburn would simply issue those commands for us rather than manually having to click on icons and manually restart our jobs.
The logic is already in there…
Plus, this type of a solution (command execution from within Lightburn) would open up the virtually unlimited ability to create customized operations (even multiple operations) to automate many different types of things before and after each job. Loading blanks, running robot arms, etc…
I’ve done my part. Microcontroller software, PC Software, 3D printed enclosures, wiring schematics, parts list, photos, online documentation, etc. Now its Lightburn’s turn…
BTW - The PC Source code (.au3) is located in the “PC Side” folder, and the Microcontroller Source Code (.ino) is located in the “Microcontroller” folder, of the GitHub project.
I have not posted a PC executable (but will). (The free AUTOIT script compiler can be used to create one in any case).
However, the microcontroller side doesn’t run any sort of “executable”. Its code (*.ino) is simply loaded directly as firmware by the Arduino IDE…
This project is simply a proof of concept of what can be done by providing external command execution from within Lightburn. Maybe the it will help the Lightburn engineers to understand the value. This type of feature (external command execution) would be trivial to implement (particularly now that they clearly have checkpointed job execution as required to support rotary tables directly).
I’ve done a lot of work here to demonstrate the value. External Command Execution at the beginning or end of a job provides virtually unlimited access to custom designed automation for our processes. …and Lightburn doesn’t have to assume any responsibility for the integration of the user developed automation - they just need to make it accessible…
Anyway (for right now) you can create a desktop icon to click and rotate (index) your pen table between jobs…