algorithmic modeling for Rhino


HAL Robotics Framework

Today is a very exciting day for all of us here at HAL Robotics.
It has been a long two years in the making but we are proud to be finally taking the first public step towards the 

1.0 release of the HAL Robotics Framework.

Ready for testing and available to download today are the 1.0-beta versions of the Core feature-set and the Grasshopper client application.
This means that from right now you will be able to test and break work-in-progress versions of:

  • Accurate real-time simulation 
  • Trajectory diagnosis including detection of out-of reach and singular positions
  • Motions specified in Cartesian or joint spaces
  • Simulation of blended motions
  • Online preset catalogs accessible from within Grasshopper, of robotstools and controllers ready to drop in to your scripts
  • Program translation to ABB RAPIDKUKA KRL or Universal Robots URScript
  • Lightweight installer which allows you to add, remove and update extensions to the framework with ease
  • Cloud-based licenses to share between you own computers or your whole organisation
  • User interface adapting to the level of control you require


With that we shall let you get started but don’t forget, this is public now so by all means spread the word to anyone you think may also be interested in testing out this new toolkit.

Happy programming,
The HAL Robotics Team

Location: London
Members: 105
Latest Activity: Sep 20, 2023


The first thing you'll need to do to get going is create an account on our WIP user-space. This will give you access to a trial and serve as an access to your licenses, either personal or shared. Once you create your account and verify your email address you'll find the link for the installer, which you are now free to download, and a couple of pages that may come in handy if you need to administer your licenses or organisational memberships. It's now time to install the framework. There is no need to uninstall your previous HAL Robot Programming & Control installation if you have one, the framework will run in parallel to help you migrate your existing projects. 

Once you've run the installer and selected the extensions you want to install I suggest you head over to our Getting Started playlist on YouTube which will talk you through the basics of the interface, how the new components work and what goes where to create your first executable toolpath. We will be adding more detailed tutorials over the next few weeks so please subscribe (or just check back there every so often) for walkthroughs, guides, tips and tricks directly from the team that created the software.

Discussion Forum

Configuring Controller

Hi - just installed Hal and trying to connect to my IRC5 controller for an ABB 120. The simulation is working fine but it doesn't seem to be speaking to the physical controller. I am assuming the…Continue

Started by James Charlton Nov 25, 2020.

How to sync HAL with Firefly/Arduino?

Hey There. Thank you guys for developing HAL. Things are much easier using it!A quick question: is there any way to sync Arduino/Firefly with HAL?I have a tool attached to my robot and I need to…Continue

Tags: IRC5, Arduino, ABB, Firefly, Robot

Started by Mehdi FarahBakhsh May 15, 2019.

Changing status bit on Kuka robots 2 Replies

Hi Thibault, I am having problems changing the status bit in HAL. I changed the Flip settings, which works fine in the simulation but nothing is changed in the code generation. How can I make the…Continue

Tags: HAL

Started by Erik Parr. Last reply by Erik Parr Oct 7, 2015.

Spline Movement 2 Replies

Hi Thibault,I'm tyring out the simple path example. Is there anyway I can generate Spline movement command for kuka robot? It's much faster than Line movement command especially when there are many…Continue

Started by Kada Liao. Last reply by Kada Liao Aug 7, 2014.

Comment Wall

Add a Comment

You need to be a member of HAL Robotics Framework to add comments!

Comment by Mehdi FarahBakhsh on May 15, 2019 at 13:32

Hey There. Thank you guys for developing HAL. Things are much easier using it!

A quick question: is there any way to synch Arduino/Firefly with HAL?

Comment by Thibault Schwartz on September 19, 2017 at 9:53

HAL Robotics Framework 1.0-beta, now available: HAL Website | Food4Rhino

Comment by Thibault Schwartz on April 13, 2017 at 16:35

Dear all,

Due to recurrent issues with the old HAL 5 licensing system on windows 10, I just published a fixing utility on the food4rhino page. All licensed users are invited to execute this utility on their machine after installing the new windows creators update, and future major win10 updates.

Best regards,


Comment by ardi on August 10, 2015 at 21:06

Hi Thibault Schwartz , Is HAL available for purchase now? I tried your web page and email to purchase the license but no response yet! 

Thibault Schwartz 

Comment by Thibault Schwartz on July 13, 2015 at 6:44

Hi Erik. You just have to use the wait component to generate your command (or your can also use a simple string panel), then use the "Commands" input of the toolpath creator. These commands are then available as a separate output on the post-processor, so you can interweave them with your motion instructions.

Comment by Erik Parr on July 13, 2015 at 6:41

Hi, I am trying to create a custom motion sequence with Hal using Kuka KRL code. I have hall going to a sequences of points in PTP mode, but I would like to have the robot wait in between each point for x seconds. I can hand write the command in my robot code by adding the line "WAIT SEC 3" for example, but how would I accomplish this in Hal? 

here's the files if you want to see my setup


Comment by Thibault Schwartz on April 5, 2015 at 5:45

Hi Ardi,

I suppose you already linked your Arduino signals to the S4C+ controller using some electronics to deal with the 24V to 5V conversion so there is a link between the controller I/Os and your Arduino.

You can use different things to play with the I/Os in HAL:

1) MoveLDO or MoveJDO interpolations directly in the Toolpath Creator component,

2) the Commands tree (that you can populate with a procedure call with all your IO management code for example, or any other trig event) in the Toolpath Creator component that you can merge at the output of the Post Processor with your movement instructions,

3) or (but S4C+ is not supporting it) the HAL to Controller component, that can be used as a virtual PLC to link anything (software) to the robot signals with a 250ms latency. An equivalent for S4C+ would be socket programming if you have the option, and then you suscribe (through a TCP client in GH that you link to your Arduino pin state) to the I/Os that you monitor in a separate non-motion task. But it's a long shot, I do not support this solution on controllers older than IRC5.

Other solution: don't use Arduino, there are plenty of boards compatible with 24V out there. Depending on what you try to achieve, maybe it's even more simple to do it with pure electronics.

Comment by ardi on April 4, 2015 at 12:30


I am trying to work with IO in HAL. Working with a custom made tool, we need to integrate some moveL on an ABB IRB2400 (S4CPlus controller) with specific action on an Arduino board. Is it possible?

Comment by Thibault Schwartz on February 9, 2014 at 19:37

HAL 5 for ABB, KUKA & Universal Robots is now available!

Comment by Thibault Schwartz on October 22, 2013 at 8:04

Due to a web hosting problem, the usual emails are down, so if you have any problem please send me a PM or a mail at



Members (105)






  • Add Videos
  • View All

© 2024   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service