I am looking for a little education on the overall workings of changing a pallet. Sounds simple, but I am missing something.

Sorry for the long post and hopefully it is not to confusing.

I would assume that the pallet change m-codes, M61 and M62 would cross over to several machine and control versions, but my specific machine is a Matsuura H-Plus 300 with a Fanuc 16i controller.

I am a little weak on this particular controller, I am a Haas guy obviously, but we have been changing pallets using what the machine references as a START program combined with the pallet scheduler feature. Within the start program it performs several checks then uses M61 to change a pallet, calls up a program, and proceeds to run said program. We are getting things done in a round about way but I want to change things so that we can start using the M61 and M62 commands without the use of the START program. I have made some progress, but I am overlooking something with the way these codes work and/or how they interact with the pallet scheduling feature.

I can get M61 to work in MDI as expected, as in I press the pallet ready button, execute the M61 and the pallet changes.
In MDI when I execute M62 the pallet changes without checking the ready button as it should.

My problem is when I put things in the program. What I am looking to do is as follows;

If I am just running a program using a single tombstone, I want to use the M61 code at the beginning to cycle the tombstone into the machine, then execute the program. At the end of the program I want to cycle the tombstone out to the load station so the parts can be changed. Once the tombstone is reloaded, I want to press cycle start again and repeat the process.

If I use an M62 at the beginning and end of the program, I can accomplish what I want. I would really prefer to use the M61 so that the machine will look to see if the ready button is illuminated signalling that it is okay to proceed with the program.

When I use M61 at the beginning of my program, the control basically skips right over it and keeps going.

%O12345
M22
M61
G00........(body of program)


Or another scenario, what if I was running the same program on both tombstones? I would definitely want to use M61 to change pallets to make sure that the load station pallet is ready to go.

I think the short version question of all this is how should I set up the pallet scheduler to interact with M61?