Robot Whispering

The Unofficial Guide to Programming FANUC Robots

Learning how to program FANUC Robots is hard. Traditionally you've had a few choices:

  1. Attend a FANUC training course (expensive, slow, travel required)
  2. Read the manuals (boring, TL;DR)
  3. Trial and error (good luck)

If you're lucky you might have another programmer on staff who can get you up to speed (if they have time). Chances are, however, that you've been tasked with getting a robot up and running, and you don't have time to mess around.

That's why I wrote this book. Over the last ten years I've worked with a lot of other programmers who had to blindly stumble around the Teach Pendant, guessing at the best way to get things done. I've done hundreds of code reviews where application errors were the result of just doing things "the hard way" when there was a much easier way.

I was lucky to work at FANUC for the first three years of my career. I had fantastic, knowledgeable colleagues to guide me, and I had a lot of freedom to try (and often break) things. Since 2011, however, I've worked as a contractor to either fix things quickly or get things done right the first time. I'm still learning, but I've developed a solid practice that works for my customers.

With this book I've distilled these 10+ years of experience into the core tools, techniques and best-practices I use on every job. When you're done reading, you'll know how to compose programs from scratch that work every time, avoiding those common pitfalls that I see programmers make all the time.

Armed with a firm understanding of how FANUC robots work and how an experienced developer works with them, you'll find yourself well-equipped to handle whatever applications come your way.

What are you waiting for? Grab your PDF copy and start programming FANUC robots today!


Or maybe you want more details... of course you do! Well keep reading, and I'll tell you more about what you'll find in the book.

Give Me the Details

This book takes you from a simple "Hello, World" program (it's a programming book, isn't it?) to a robust and intelligent material handling application. Not only will the robot do what it's supposed to do under normal conditions, but it also checks and responds accordingly to a number of common error scenarios.

It should read as if I'm guiding you through the development of a material handling application from a "first principles" approach. We'll do things the easiest, most direct (and sometimes wrong!) way before eventually implementing a better way and discussing why we made that decision.

You'll learn how to be more productive with the FANUC teach pendant. We'll go over frames of reference and why custom UFRAMEs and UTOOLs are important. I'll describe many best-practices like back-checking your part-presence sensors and gripper I/O, using subroutines when it makes sense and making sure your WAIT-statements have appropriateTIMEOUTs.

And that's just the beginning. A large portion of the book is also dedicated to "homing" the robot, making sure the robot can find its way "home" safely from anywhere within its normal cycle of operation. I consider this an absolutely must-have feature before a robotic cell can be considered complete. Too often I see production systems that have to be manually jogged out of errors when they should have just been able to press the green button. Let's make our customers' lives easy and handle issues before they happen.

The version 1.1 PDF of Robot Whispering: The Unofficial Guide to Programming FANUC Robots currently clocks in at 88 pages. Read on for the Table of Contents and Frequently Asked Questions.


In the unlikely event that you don't learn lots of stuff, I offer a 30-day refund policy. No worries.

Table of Contents

  1. Introduction
  2. A Very Simple Program: Hello, World
  3. How TP Programs Work
  4. Creating a Program with Motion
  5. STEP Mode and Moving Backwards
  6. Control Flow
  7. Numeric Registers and Assignment
  8. Multiple Displays
  9. Modifying Positions
  10. Using I/O
  11. Subroutines
  12. Frames of Reference (UFRAMEs and UTOOLs)
  13. Motion Options
  14. Joint and Linear Motion
  15. Payloads
  16. Conditionals
  17. User Alarms
  18. Simulating Inputs
  19. Remarks
  20. WAIT-statements
  21. The END-statement
  22. Getting the Robot Home Safely
  23. Reference Positions
  24. Cycle Stop and the ABORT-statement
  25. Appendix A: Mapping I/O


Frequently Asked Questions

Does the book cover KAREL programming?

No, this book is about TP programming only.

What level of programmer is the book written for?

The book only presumes you are capable of jogging the robot. That being said, I've had experienced programmers tell me they learned valuable lessons from it as well.

Will I get updates automatically if content is added?

Yes! I will email you as soon as a new edition is released.

Can I share the book with the rest of my team?

Your copy of is for personal use only. If your company or educational institution wants to use it for training purposes, please get in touch with me about bulk licensing.

I've taken a FANUC training class. Is the book still for me?

Yes! Although it will cover some of the same territory, you will still learn valuable lessons about the practical application of FANUC robots not covered in a training class.

Can I get a printed copy?

Not at this time.

Is the book offered in other languages?

Not at this time, but please contact me so I can keep track of what other languages are requested!

Question not answered?

Please send me an email, and I'll get back to you as soon as I can.

About the Author

Jay Strybis

Jay has been programming for most of his life and has spent his entire career since graduating from college in 2008 working with and programming FANUC robots. Jay started blogging about programming back in 2013 and has released several free tools and open-source projects for making your life easier.

He's currently working on a number of side projects and consulting for some fantastic integrators and end-users for all their trickiest automation needs.