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: 103
Latest Activity: Nov 25, 2020


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 yj on March 8, 2013 at 4:57

my first toolpath simulation, thx for the tutorial!! it was a quick result.

Comment by Thibault Schwartz on January 27, 2013 at 18:26

HAL 004.4 Update available

LOG HALv0.04.4
General updates:
• Generic toolbars for Grasshopper are now part of the HAL package.
• Almost all components now have at least one new menu item (via the right click menu), allowing to open an example file using the component.
• Almost all components now have a new menu item (via the right click menu), allowing to search related tutorials on youtube channel.

Base Pack:
• The components of the base pack are now detecting invalid characters leading to errors when used for RAPID code generation.
• The Update Check has been improved to detect reorientation of targets. A new input has been added to clear the cache.
• The computing time for the display of out of reach positions by the Inverse Kinematics Solver has been devided by 100
and is now equivalent to valid positions (approx. 1ms/target).
• The Inverse Kinematics Solver has a new menu item (via the right click menu), allowing to switch the display of errors.
• The Datatree Recorder now keeps displaying the cache and the stored datatree when fed with an invalid data stream.
• The Toolpath Discretization component is now recognizing polylines portions inside polycurves.
• The Target Atributes component was buggy, this is fixed.
• New String Multi-Split component.
• New String Multi-Join component.
• New Target Selection component.
• New Mode Value List component.
• New Face Value List component.

Advanced Programming Pack
• The Number component had a bug in its initialization value input, this is fixed.
• The (re)Try component was not outputing values for "TryNext", this is fixed.
• The Error component now allows to only write errors in the log (\I).
• The If...Then...Else loop component is now automatically creating a dummy condition for "Else" operations activation.
• The Test...Case...Default loop component could trigger a syntax error, this is fixed.
• The CallByVar component was not taking the ProcID into account, this is fixed.
• The Function component was in error when no internal declarations were done, this is fixed.

I/O Pack
• The Save component was outputing wrong syntax, this is fixed.

Communication Pack:
• The HAL To Controller component stability has been improved for real-time streaming applications. Two new inputs are now available: one to
erase all the tasks of the targeted controller, and another which allows to choose the buffer size of the streaming program on the controller.

Multi-Robots Pack
• The QuickSync component is now generating synchronization messages only on motion commands to avoid syntax errors.

Hot Wire Cutting Pack
• The Ruled Surface component now allows to modify the length of the rulings for preview, and is outputing the TCPs.

Milling Pack
• The Parallel Roughing and Parallel Finishing components are now much more stable.

Comment by Thibault Schwartz on December 6, 2012 at 8:38

HAL 004.2 Update available

LOG HALv0.04.2
General updates:
• This update can trigger an error window at the opening of files containing HAL 004.0 components. In such a case, please click on OK, replace
the RAPID Generator, HAL To Controller, Robot Data Extractor and Pick components if you use any and save your file again to make these
errors disappear.

• The Robot Data Extractor component had switched outputs (Brand/Controller), this is fixed.
• Some testing outputs were still present on the IK solver and the OSC Listener, this is fixed.
• The IK Solver was outputing non optimal rotation values for 3rd and 6th axis when using some specific custom robot geometries, this is fixed.

Base Pack:
• The RAPID Generator is now accepting one tool per branch for multi-robot tasks generation.
• The RAPID Generator is now outputing clean Datatrees.
• The RAPID Generator is now outputing ToolData, ZoneData and SpeedData declarations.
• The RAPID Generator is now detecting if default ToolData, ZoneData or SpeedData presets are used in the toolpath.

Multi-Robots Pack
• New QuickSync component, to automatically generate basic synchronized tasks for MultiMove setups.

Communication Pack:
• The HAL To Controller component has been improved and is now much more stable, especially for multi-robot setups.
• New "Force" Input on the ECM Generator, to force the streaming of an instruction.
• The Streaming Module now allows custom speeds for MoveAbsJ and MoveL motions. Please use this feature with great caution.

Picking Pack
• The Pick Component has new inputs for distinct approach and withdrawal directions, as well as withdrawal distances.

Comment by Freddy on November 26, 2012 at 12:36

kool tools, if they were for Kuka, I'll buy the license staright away.

Comment by Thibault Schwartz on November 13, 2012 at 5:39

HAL 004 is now online!

HAL 004 is compatible with all versions of Rhino, and has a lot of new exciting functionalities such as:

  • Robot Multi-tasking.
  • Real-time access to robot controllers for streaming or execution control.
  • New optimized robot library, including almost all ABB IRC5-based robots.
  • Improved kinematics solvers.
  • New custom data-types, accessible through two dll libraries.
  • Improved tool path generation algorithms for milling.
  • A lot of fixes and 30 additional tools...

See the project page on Food4Rhino or the new HAL website for further details.

Comment by Thibault Schwartz on March 19, 2012 at 8:44

The new HAL version compatible with Rhino4 (simulation functionalities only) is now available.

Comment by Thibault Schwartz on March 10, 2012 at 10:20

A new sub-release is online that fixes two major bugs on the licensing system and the 6th axis kinematics.

Comment by Thibault Schwartz on March 4, 2012 at 12:09
Comment by Thibault Schwartz on March 4, 2012 at 7:12

bxsqrym --> From HAL v0.02, the plugin is ONLY compatible with Rhino5. Please verify that your grasshopper installation folder on Rhino 5 has the good GHA file, and that no precedent versions of Hal are already installed.

Comment by bxsqrym on March 4, 2012 at 0:25

hi,I have some problem in installing Hal v0.02 for Grasshopper 0.8.0063,it seems not working


Members (103)






  • Add Photos
  • View All

© 2021   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service