Esmacat: EtherCAT Based Motor Control, Analog IO, and Digital IO for Robotics

Esmacat: Easy and Smart EtherCAT Solutions

Esmacat, developed by Harmonic Bionics, Inc., is an enabler to create robotic systems of industrial capability with minimal development, cost, and time. Its attributes include:

  • Modular mechatronics & software tailored to the needs of controls intensive robotic applications and research

  • Scalable components for straightforward real-time DAQ test benches or high-speed multi-DoF motor control
  • Simple C++ software interface that even beginner programmers can use to rapidly create robotic systems
  • Transparent C++ software with complete accessibility for advanced users

Esmacat can be an end-to-end modular system consisting of powerful & efficient motor drivers, integrated DAQ, load-cell interfaces, highly capable mini EtherCAT master computers, and an easy-to-use C++ master API. The entire system runs on the industrial EtherCAT communication protocol, known for its high speed and reliability. Tutorials are accessible to speed along development time.

As of Fall 2019, our products are not supported with ROS integration on our Esmacat Master Software. However our products are compatible with other 3rd party EtherCAT masters that do support ROS integration. We are currently in the process of updating our high-performace Esmacat Master Software found on our Master S and C to include ROS capabilities for all of our products. By the end of June 2020, the first Esmacat product to be compatible with ROS is our EtherCAT Arduino Shield by Esmacat (EASE). Within the next few months, we will publish updates for the rest of our product line on the Esmacat Master Software for customers with a Master S and C. ROS will not be supported on our open-source Esmacat Master Software found on our website.

Future features of ROS integration will include:

1. Data can be visualized using many of the ROS built-in tools such as rqt_plot.

2. Multiple external ROS nodes can communicate with a hard real-time Esmacat application, which is its own ROS node. Using ROS with a hard real-time Esmacat application is thread safe, implementing mutexes where appropriate.

3. Interfacing between an Esmacat hard real-time loop and external ROS nodes can be done using a simple API to be shown in a future tutorial.

Check out our website for more information or please email us if you have any questions: <>



Wiki: Esmacat (last edited 2020-06-06 06:25:02 by Esmacat)