Todd, I was so excited to test out your sample code that I ran down here to the shop, fired up the mill and loaded the code. IT WORKED! I was so excited to see it load and move in that little square. I went ahead and added an M03 and M05 to the code and it worked first time. Spindle fired up, it did its square movement, the spindle shut down and it went back to zero. My question now is what's the next step?
Awesome Arron! I'm glad that worked and got the machine moving.

The next step is to do what you were already seeking...... getting a post processor that writes out Gcode that the control can understand.

I would pursue that in a couple of directions.

First, give me a few days and I will search around for a BobCAD post processor that I wrote for my V23 a while back (quite a while). At one point I had tweaked the post processor and got BobCAM sptting out fairly reliable code for the F8025M. I just have to refresh my memory on how to do all that and see if I can find the post processor that I finally came up with. That PP would do most simple functions you need to do, such as most G functions, M functions, S functions and even a T function for doing tool changes on my router (which I don't think you'll need or want). That will get you up and running and able to make parts with one spindle. That PP that I had made is not set up for complex things like canned cycles, rigid tapping and things like that. But, for just cutting out fairly simple parts, it will work fine. In a couple days I'm heading out on the road for 10 days for work (my actual day-job that pays the bills). I will have time to play with this stuff then and get back to you with more info.

Second, in conjunction with the above, start hitting up (and keep after) BobCAD-CAM (BCC) to write you a customized PP for that machine. It will take a lot of frustrating calls to tech support and sending them whatever they ask for, but you've paid for that service and they should do it for you. You need to bug them to get the PP capable of doing more complex tasks like what I mentioned above. Also, if those spindles have two different speed ranges, the PP code should be written to handle that too. It will take a while and it will probably get done in increments (when you go to do something new on the machine some day and find out that the PP is not putting out the correct Gcode - you'll have to get them to tweak the PP again, etc.) So, your PP is something that can evolve over time as you try to do more and more complex operations, etc.

Then, start researching info on using a machine with two spindles. Learn more about programming with two spindles, and what the Gcode should look like, etc. You know, I just looked through the F8025M OEM manual and I didn't see anything about multiple spindles. This thing might be a lot simpler than I'm envisioning. When you ran the M03 and the M05, did both spindles do the same thing? They are probably just set up for both spindles to do the same thing (same speed, etc.) using just the standard single spindle Gcode. That makes since, given that the whole purpose for a second spindle is just to double your production rate. This may not be such a big thing after all. Not sure. We'll have to research that.

Also, in the mean time, if you have any particular part that you need to start making you can send me the CAD drawing and I will CAM it out in SheetCAM and you can use that Gcode to get rolling.

Glad you got the machine moving. Let me know if the machine has a tool changer and about the spindles operating together.

R/Todd

BTW - if you can still go back and edit your original post, you can take out most of that code that you posted there. Just leave the first and last 20 lines or so. ;-)