Category Archives: Heidenhain

Heidenhain Program Restart iTNC 530

Category : Heidenhain

Heidenhain Program Restart. Now you must have heard me banging on about program restart on certain machine controls.

On some it’s just non existent the best you can do is move to a tool change and start there. Oh and pray to any god you may believe in.

On a Fanuc control program restart it’s a rare option, and no fucker knows how to use it anyway, except me so click on this link.

Work Around

Without it, if you really know what you are doing you can restart programs.

This said you must have a real good knowledge of programming and modal G Codes.

What you can do is read the tool change line (M6 T06) then let the machine read the G43 line to take in the tool offset. Now you can then go on to read the canned cycle. From this point you can move on to any position and it will carry on (allegedly).

This is Fuckin dodgy. It’s a bit like having cataract surgery whilst driving a Sherman tank. You definitely need to be over 21 and not of a nervous disposition.

Chimpanzee baby

Anyway it does work, honestly, just be sure there is a full moon and you turn the control panel to face Mecca.

Joking aside make sure you understand the modal information on your control panel which you should do anyway.

What’s Modal Information?

Well it’s that screen you’ve been ignoring for years.

Please take your time and have rapid at minus 1000,000%. Be in single block and read this.

Remember if you crash this beast I will say I never met you and I definitely didn’t write this article, which will suddenly disappear into the ether at the slightest sniff of a lawsuit.

You know that screen you cant even be arsed to look at?

Well actually it contains some very useful shit so pay attention you naughty boy.

So this means you know and understand the following.

  • Is the machine in absolute or incremental?
  • What work offset is active?
  • Is the tool offset active and if so which one?
  • Is the machine still in compensation G41 G42?
  • Is the plane selection correct, usually XY G17?
  • Is the machine in feed per rev or feed per minute?
  • What speeds and feeds are active?
  • Is the machine in rapid or feed G0 or G1?
  • By the way if you come to me for some training I can impart all this knowledge on you.

Good Luck With That One

Anyway the other day I was let lose on this beast. So I’m going to show you the Heidenhain Program Restart on a Heidenhain iTNC 530 control.

Heidenhain Program Restart

Yes it’s a big bastard but a handsome beast at that. It’s a Hartford gantry type machine. The tool changer is no longer used but in it’s present home it’s not needed. It’s main use is drilling hole patterns and a few slots.

BT50 taper with through spindle coolant. Oh yea and it has a touch probe which I haven’t quite got working yet.

There were no manuals with this machine so  it does make some of the training difficult mainly knowing what the M codes are. Not wishing to brag but my 40 years of training knowledge is not without it’s advantages. Well 10 years if you discount the 30 years when I was permanently pissed.

M codes really are a bastard because they are different on all machines that’s why my M code list is only short. You really need the machine tool manual because only a handful of them are generic.

The Machine The Machine

This machine has huge capacity and has enough power to machine flats and drill holes in rocking horse shit.

The control is a Heidenhain iTNC 530, fantastic control. Easy to program, easy to set, editing is a dream. Oh and the Heidenhain Program Restart feature is brilliant.

Graphics… Oh No

Oh but one thing, as usual graphics are dogship poor. Don’t get me wrong always use them because it will save time. It will also spot any daft mistakes but…. they are as jerky as a Charley Chaplin movie and about as clear

They wont spot collisions and only the largest of position errors will be noticeable. So unless the tool is actually poking you in the knackers you wont spot a positional error.

Anyway they are crap but most of the others are crappier (is that a word?). So you can take some solace from that.

This Is True

I couldn’t possibly name names on this one. This guy who was a machine tool sales representative once said to me.

Well, I said to him first of all “my customer is not happy with your service department says theyre shit” to which he answered “I know I don’t blame him it’s true, but everyone else is even worse”.

What a fuckin sales pitch that is!

“Oh hi errrm.. all our products are shit but be careful because everyone elses are even worse”

Sorry I Went Off On One Again

Forget Graphics. Lets talk about what is awesome, fuckin awesome.

Yes you guessed, the program restart is good well actually it’s very very good. I only used the word awesome to try and fool the reader into thinking I’m much younger than I am by using the dialect of the younger generation.

Let’s talk about Heidenhain Program Restart.

Heidenhain Program Restart, Piss Easy

I mean I know you are thinking that at my age taking a piss is not always easy but I don’t want to bore my readers with details of that.

In any case the comment was not meant to be taken literally so just back off.

Here is how you do Heidenhain Program Restart

  • Go into full run mode or single.
  • Press GOTO and input 0 then press enter.
  • Press softkey BLOCK SCAN

Heidenhain Program Restart

  • On the next screen that appears you can press the soft key LAST or you can input the line where you want to start. This is about to restore at block 35 but you can input anything.
  • Press cycle start

Heidenhain Program Restart

  • On the next screen press the softkey Restore Position.

Heidenhain Program Restart

  • Press CYCLE START and the machine will turn on the spindle etc at the correct speed and restore M codes.

Heidenhain Program Restart

  • Each time you press cycle start the machine will return one axis to the correct position. You can also select the order if you want from the soft keys.

Heidenhain Program Restart

Now when you press CYCLE START the program will resume.

Told you it was easy, you’ll love it.

Here is a live training video that demonstrates it.

I love it and I hope you do too. If you need training on a Heidenhain control then contact me.

Click here to see google reviews




Full Circle Heidenhain (Macro Program)

Category : Heidenhain

Macro to program a Full Circle Heidenhain

Heidenhain has its own form of parametric programming it uses Q values sometimes called Q DEF.

Er what you on about now David? You ask.

Ok sorry to shroud you in a cocoon of total bullshit.

It’s like Macro on a Fanuc Control. What you do is you program a circle and instead of putting numbers for the X values n stuff you put a Q number like Q1 or Q10

Then you tell it what the Q values are. So instead of X-20. you could have X+Q10

If you then went on to define Q10 as -20 then X would be X-20.

All will be revealed.

Take a look at this code.

Full Circle Heidenhain

This code will mill a full circle and because it’s in incremental (note the I in front of the X value) you can dump one anywhere. By that I mean you can mill one of these circles anywhere not take a shit anywhere.

Full Circle Heidenhain

Now watch it in action.

This is great but it is not easy to control. If we wanted a different diameter there are quite a few figures to change. If you are a bit of a prick like me then you’d probably get it wrong and scrap the part.

Q DEF To The Rescue Full Circle Heidenhain

Using Q def is really easy. You could start by using it to change the feedrate. Look at the code now.

Full Circle Heidenhain

Line 7 and line 17 define Q1 as two different values.Full Circle Heidenhain

Full Circle Heidenhain

So when each one calls LBL 1 the feedrate in line 25 will change to whatever value is in Q1.

Full Circle Heidenhain

Clever eh…..

But that’s not all.

You can have loads of Q values whopeeee.

Stick Around For The Exciting Stuff

Watch this before you ditch this post and go on Facebook and see what your mate Pete had for his breakfast. Or “oh look at this the dog just crapped on the new sofa”

So, you’re with me….

Lets do the same but this time replace the X value. (Oh and some other shit too like the Z Depth)

This macro uses Q Values to externally control the radius, feedrate and depth of a circle.

Because the program is in incremental  you can place it anywhere you want.

I have purposely kept it really simple for demonstration purposes (not because it’s all I know).

So you replace the X values or whatever you want to control with Q Numbers.

You then give a value to these Q numbers

And that’s it. Hopefully the video says it all.

If you want to do this on a Sinumeric Siemens 840D read this

See how it’s done on a Fanuc control.


If you have been affected by any of the issues in this post or need CNC Counselling then contact me.

If you want to learn to program CNC Milling Machines

Look no further Contact CNC Training Centre




Heidenhain Work Offsets Explained

Category : Heidenhain

Heidenhain Work Offsets Explained

Heidenhain Work Offsets, traditionally the Heidenhain coordinate system was kept very simple. It was like the “Click and Collect” of the CNC World 20 years ahead of its time.

Heidenhain Work Offsets

Anyway all you did was go to the place where you wanted as your offset and zeroed the display.

That was the datum and when you had a new part you just zeroed it again.



Simple as Jack Shit.

It even had a self destruct button.

Heidenhain Work Offsets

With this button you could really easily delete your program by accident.

I vividly remember having to lie and cheat my way out of that one.

Fortunately they moved it, well it’s gone anyway.

Now this button Wow….. Don’t even get me started. It was still there all those years ago.

Heidenhain Work Offsets

Watch this if you can’t stand the intrigue.

I Digress

Back to Heidenhain Work Offsets

Nowadays everything is so complicated. I still can’t work the fuckin TV remote control and my central heating comes on in the middle of the night for no reason.

I just put the heating full up all the time now, admittedly the kids have to stay outside in the summer but I like to keep things simple.

Some People Are Never Satisfied

Not happy with one work offset everyone wanted six. Then it went crazy with extended work offsets some of you greedy bastards (and you know who you are) have 99. Come on that’s just CNC debauchery.

Limitations with old Heidenhain Work Offsets

Joking aside it did have its limitations. Anyway now you can have as many as you want.

As we all know everything nowadays needs to be backwardly compatible. (I don’t actually know what that means, I heard a bloke say it in the pub)

Anyway the new machines have to still do what the old ones did.

From this screen you can make an offset active.

Once this offset is active any subsequent position move will be in this offset.

In your program you need one of these.

The above would call Datum 3

Above would call Datum 9

Heidenhain Work Offsets

This would take it back to Datun 0

Come on surely you get it now.

Heidenhain Work Offsets

The number (in this case zero) is the datum you wish to call. This would call the standard datum (can’t miss it it’s top of the list and it’s red)

Don’t forget this is modal so once selected the datum will be used all the time until you change it.

Now you have started using these datum you must have one at the beginning of each program. It’s a bit like taking out a mortgage (you can’t escape).

Obviously if you make it active in the datum table and then call a program. If that program has no datum call then it will use whatever’s there.

If you are affected by any of the issues raised in this post or need CNC Training or counselling then contact us.

Contact CNC Training Centre

Don’t forget to watch my Tutorial Videos

We offer training on all types of CNC Machines and controls check em out.

Or fill out the contact form below





WP to LinkedIn Auto Publish Powered By :