{"id":36928,"date":"2025-08-04T08:00:00","date_gmt":"2025-08-04T13:00:00","guid":{"rendered":"https:\/\/www.dmcinfo.com\/?p=36928"},"modified":"2025-12-23T09:45:14","modified_gmt":"2025-12-23T14:45:14","slug":"getting-started-with-opto-22-groov-epic-part-3-codesys-ignition-edge","status":"publish","type":"post","link":"https:\/\/www.dmcinfo.com\/blog\/36928\/getting-started-with-opto-22-groov-epic-part-3-codesys-ignition-edge\/","title":{"rendered":"Getting Started with Opto 22 groov EPIC Part 3: CODESYS &amp; Ignition Edge"},"content":{"rendered":"\n<p>In this blog, we will explore the \u201cPLC\u201d functionality of the groov EPIC, completing our three-part series. Soon you will be ready to get started on your own groov EPIC Ignition Edge project!&nbsp;<\/p>\n\n\n\n<p>For an overview of the\u00a0groov EPIC\u00a0and its features, check out the rest of this blog series.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/www.dmcinfo.com\/blog\/36186\/getting-started-with-opto-22-groov-epic-part-1-groov-epic-introduction\/\">Part 1: groov EPIC Introduction<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.dmcinfo.com\/blog\/36223\/getting-started-with-opto-22-groov-epic-part-2-ignition-edge\/\">Part 2: Ignition Edge<\/a><\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-setting-up-the-codesys-environment-nbsp\">Setting Up the CODESYS Environment&nbsp;<\/h2>\n\n\n\n<p>The groov EPIC supports a handful of programming environments, including PAC Control, Node-RED, and the CODESYS IDE. In this demo, we will use CODESYS to develop a simple program for the EPIC. CODESYS is an IEC 61131-3 compliant environment commonly used across many PLC manufacturers, with a user-friendly interface and support for multiple common IEC standard languages.&nbsp;<\/p>\n\n\n\n<p>To enable CODESYS on the EPIC, first open the groov manager web app and enable CODESYS (Controller &gt; CODESYS Controller &gt; Runtime Enable). Note that while the CODESYS application is running, we can no longer control the outputs from the screen made in blog 2, as the outputs are being controlled from the CODESYS program instead. To switch back to controlling IO from the previous screen, simply disable the CODESYS application from groov manager. This ability to easily switch back and forth between the two modes can be a huge help during I\/O checkout and testing of a large, complex system.&nbsp;<\/p>\n\n\n\n<p>Next, open the CODESYS development environment on a PC that is on the same network as your EPIC and configure your device connection. Create a new project and add a new device connection to your groov EPIC by entering your device IP and scanning the network. Once connected, your device connection will look something like this.&nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"624\" height=\"348\" src=\"https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/08\/01135950\/Device-Connection-groov-EPIC.png\" alt=\"groov EPIC device connection screen\" class=\"wp-image-37506\" srcset=\"https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/08\/01135950\/Device-Connection-groov-EPIC.png 624w, https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/08\/01135950\/Device-Connection-groov-EPIC-300x167.png 300w\" sizes=\"(max-width: 624px) 100vw, 624px\" \/><\/figure>\n\n\n\n<p>You can now click the \u201cLogin\u201d button on the top toolbar to go online with your EPIC and monitor tag values directly.&nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"126\" height=\"84\" src=\"https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/08\/01135958\/login-groov-EPIC.png\" alt=\"groov EPIC login screen\" class=\"wp-image-37507\" style=\"object-fit:cover\"\/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-configuring-controller-logic-in-codesys-nbsp\">Configuring Controller Logic in CODESYS&nbsp;<\/h2>\n\n\n\n<p>Our sample PLC program represents a machine that must not be left running unattended for longer than a set time interval (default of 10 seconds). PB_UPPER represents the \u201cOn\u201d command to the machine, while PB_LOWER is an additional button that must be held down for the machine to continue running. This input could also be tied to a proximity sensor that determines whether an operator is present at the station. Our buzzer output alerts the operator if the machine has been running unattended for too long.&nbsp;<\/p>\n\n\n\n<p>Our simple application consists of two programs \u2013 the \u201cmain\u201d program, PLC_PRG calls the subroutine \u201cTurnOnBuzzer\u201d. TurnOnBuzzer takes in both PB statuses, as well as the buzzer delay setpoint, and outputs the desired buzzer on\/off state. These two programs illustrate how both text and ladder logic can be used to program your groov EPIC in CODESYS.&nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"624\" height=\"216\" src=\"https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/08\/01144753\/groov-EPIC-CODESYS-codepng.png\" alt=\"Program your groov EPIC in CODESYS with text\" class=\"wp-image-37515\" srcset=\"https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/08\/01144753\/groov-EPIC-CODESYS-codepng.png 624w, https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/08\/01144753\/groov-EPIC-CODESYS-codepng-300x104.png 300w\" sizes=\"(max-width: 624px) 100vw, 624px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"624\" height=\"262\" src=\"https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/08\/01144800\/groov-EPIC-CODESYS-ladder-logic.png\" alt=\"Program your groov EPIC in CODESYS with ladder logic\" class=\"wp-image-37516\" srcset=\"https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/08\/01144800\/groov-EPIC-CODESYS-ladder-logic.png 624w, https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/08\/01144800\/groov-EPIC-CODESYS-ladder-logic-300x126.png 300w\" sizes=\"(max-width: 624px) 100vw, 624px\" \/><\/figure>\n\n\n\n<p>To map your controller, I\/O to tags within your programs, configure a mapping on the \u201cState\u201d tag of each I\/O point, as shown below. Then, add a \u201cSymbol Configuration\u201d object to your application. This is where you control permissions for OPC UA read &amp; write access of your PLC tags from Ignition or other applications. You can configure tags to be read-only or read\/write based on the needs of your application.&nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"624\" height=\"326\" src=\"https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/08\/01145009\/configure-IO-state-tag-1.png\" alt=\"Screen to configure mapping on the State tag of each I\/O point\" class=\"wp-image-37517\" srcset=\"https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/08\/01145009\/configure-IO-state-tag-1.png 624w, https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/08\/01145009\/configure-IO-state-tag-1-300x157.png 300w\" sizes=\"(max-width: 624px) 100vw, 624px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"316\" height=\"386\" src=\"https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/08\/01145017\/configure-IO-state-tag-2.png\" alt=\"Screen to configure mapping on the State tag of each I\/O point\" class=\"wp-image-37518\" srcset=\"https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/08\/01145017\/configure-IO-state-tag-2.png 316w, https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/08\/01145017\/configure-IO-state-tag-2-246x300.png 246w\" sizes=\"(max-width: 316px) 100vw, 316px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"624\" height=\"308\" src=\"https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/08\/01145025\/configure-IO-state-tag-3.png\" alt=\"Screen to configure mapping on the State tag of each I\/O point\" class=\"wp-image-37519\" srcset=\"https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/08\/01145025\/configure-IO-state-tag-3.png 624w, https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/08\/01145025\/configure-IO-state-tag-3-300x148.png 300w\" sizes=\"(max-width: 624px) 100vw, 624px\" \/><\/figure>\n\n\n\n<p>Now that our CODESYS program is configured, click the \u201cLogin\u201d button and download changes. Next, we\u2019ll set up our Ignition Edge HMI to interact with the CODESYS program.&nbsp;<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-using-ignition-edge-as-an-hmi-for-a-codesys-program\">Using Ignition Edge as an HMI for a CODESYS Program<\/h2>\n\n\n\n<p>Now that our CODESYS OPC server is configured, add a new OPC Connection to your Ignition gateway under Config &gt; OPC Connections. Enter the discovery endpoint of the new CODESYS OPC UA server. If you are using defaults, this will be opc.tcp:\/\/localhost:4840. Once this is configured, you will see the new tags you added in CODESYS Symbol Configuration available in Ignition.&nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"374\" height=\"180\" src=\"https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/08\/01145512\/add-OPC-Connection.png\" alt=\"Server discovery screen\" class=\"wp-image-37523\" srcset=\"https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/08\/01145512\/add-OPC-Connection.png 374w, https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/08\/01145512\/add-OPC-Connection-300x144.png 300w\" sizes=\"(max-width: 374px) 100vw, 374px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"464\" height=\"302\" src=\"https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/08\/01145521\/ignition-connected-devices.png\" alt=\"connected devices screen\" class=\"wp-image-37524\" srcset=\"https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/08\/01145521\/ignition-connected-devices.png 464w, https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/08\/01145521\/ignition-connected-devices-300x195.png 300w\" sizes=\"(max-width: 464px) 100vw, 464px\" \/><\/figure>\n\n\n\n<p>For this demo, we are building onto the Ignition HMI that was developed in <a href=\"https:\/\/www.dmcinfo.com\/blog\/36223\/getting-started-with-opto-22-groov-epic-part-2-ignition-edge\/\">part 2 of this blog series<\/a>, with three new pages. The \u201cAlarm Status\u201d page provides an interface to monitor the status of the two push buttons, and contains an indicator of machine runtime, displaying as it counts towards our \u201cbuzzer on delay\u201d value.\u00a0<\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img decoding=\"async\" width=\"1024\" height=\"683\" src=\"https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/08\/01150133\/alarm-condition-monitor-1024x683.png\" alt=\"Alarm condition monitor screens\" class=\"wp-image-37531\" style=\"width:600px\" srcset=\"https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/08\/01150133\/alarm-condition-monitor-1024x683.png 1024w, https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/08\/01150133\/alarm-condition-monitor-300x200.png 300w, https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/08\/01150133\/alarm-condition-monitor-768x512.png 768w, https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/08\/01150133\/alarm-condition-monitor.png 1148w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>The \u201cConfig\u201d tab provides an input field that is linked to our \u201cbuzzer on delay\u201d PLC parameter. Here the user can configure the limit for continuous machine runtime before the buzzer is triggered. This provides an example of a tag with read\/write permissions between CODESYS and Ignition.&nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"316\" height=\"356\" src=\"https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/08\/01150227\/controller-parameters.png\" alt=\"Controller parameters scren\" class=\"wp-image-37533\" srcset=\"https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/08\/01150227\/controller-parameters.png 316w, https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/08\/01150227\/controller-parameters-266x300.png 266w\" sizes=\"(max-width: 316px) 100vw, 316px\" \/><\/figure>\n\n\n\n<p>Finally, the \u201cTrends\u201d tab highlights the internal tag historian functionality of Ignition Edge. Without any extra database connections, tags from the groov EPIC (both PLC program tags or direct IO points) can be stored to the Edge historian and trended to monitor values over time. Here, we have configured the temperature reading from our Thermocouple and the voltage reading from our dial input as historical tags. With Ignition\u2019s sleek and powerful trending tools, these trends can be configured and displayed in minutes.&nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"316\" height=\"428\" src=\"https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/08\/01150253\/analog-trends.png\" alt=\"analog trends screen\" class=\"wp-image-37535\" srcset=\"https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/08\/01150253\/analog-trends.png 316w, https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/08\/01150253\/analog-trends-221x300.png 221w\" sizes=\"(max-width: 316px) 100vw, 316px\" \/><\/figure>\n\n\n\n<p>Thanks for reading this Getting Started series for Opto 22 groov EPIC! Now you\u2019re ready to begin programming your own groov EPIC using CODESYS and Ignition Edge.&nbsp;&nbsp;<\/p>\n\n\n\n<p><strong>Learn more about DMC\u2019s experience with <\/strong><a href=\"https:\/\/www.dmcinfo.com\/services\/manufacturing-automation-and-intelligence\/hmi-and-scada-programming\/ignition-programming\"><strong>Ignition HMI &amp; SCADA programming<\/strong><\/a><strong> and <\/strong><a href=\"https:\/\/www.dmcinfo.com\/contact#get-in-touch\"><strong>contact us today<\/strong><\/a><strong> for your next project.<\/strong>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In this blog, we will explore the \u201cPLC\u201d functionality of the groov EPIC, completing our three-part series. Soon you will be ready to get started on your own groov EPIC Ignition Edge project!&nbsp; For an overview of the\u00a0groov EPIC\u00a0and its features, check out the rest of this blog series. Setting Up the CODESYS Environment&nbsp; The [&hellip;]<\/p>\n","protected":false},"author":194,"featured_media":36930,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[731,732],"tags":[1280],"class_list":["post-36928","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-manufacturing-automation-intelligence","category-plc","tag-opto-22"],"yoast_head":"<title>Getting Started with Opto 22 groov EPIC Part 3: CODESYS &amp; Ignition Edge | DMC, Inc.<\/title>\n<meta name=\"description\" content=\"Explore the PLC functionality of the Opto 22 groov EPIC, in this article by DMC, Inc.. Then start your own groov EPIC Ignition Edge project!\u00a0\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.dmcinfo.com\/blog\/36928\/getting-started-with-opto-22-groov-epic-part-3-codesys-ignition-edge\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Getting Started with Opto 22 groov EPIC Part 3: CODESYS &amp; Ignition Edge\" \/>\n<meta property=\"og:description\" content=\"Explore the PLC functionality of the Opto 22 groov EPIC, in this article by DMC, Inc.. Then start your own groov EPIC Ignition Edge project!\u00a0\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.dmcinfo.com\/blog\/36928\/getting-started-with-opto-22-groov-epic-part-3-codesys-ignition-edge\/\" \/>\n<meta property=\"og:site_name\" content=\"DMC, Inc.\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/pages\/DMC-Inc\/107982009242929\" \/>\n<meta property=\"article:published_time\" content=\"2025-08-04T13:00:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-12-23T14:45:14+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/07\/18162838\/Opto-22-groov-EPIC-Part-3.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"925\" \/>\n\t<meta property=\"og:image:height\" content=\"400\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Natalie Pippolo\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Natalie Pippolo\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.dmcinfo.com\/blog\/36928\/getting-started-with-opto-22-groov-epic-part-3-codesys-ignition-edge\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.dmcinfo.com\/blog\/36928\/getting-started-with-opto-22-groov-epic-part-3-codesys-ignition-edge\/\"},\"author\":{\"name\":\"Natalie Pippolo\",\"@id\":\"https:\/\/www.dmcinfo.com\/#\/schema\/person\/7f65eba80d7b97fa51af9fe612756b93\"},\"headline\":\"Getting Started with Opto 22 groov EPIC Part 3: CODESYS &amp; Ignition Edge\",\"datePublished\":\"2025-08-04T13:00:00+00:00\",\"dateModified\":\"2025-12-23T14:45:14+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.dmcinfo.com\/blog\/36928\/getting-started-with-opto-22-groov-epic-part-3-codesys-ignition-edge\/\"},\"wordCount\":886,\"publisher\":{\"@id\":\"https:\/\/www.dmcinfo.com\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.dmcinfo.com\/blog\/36928\/getting-started-with-opto-22-groov-epic-part-3-codesys-ignition-edge\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/07\/18162838\/Opto-22-groov-EPIC-Part-3.jpg\",\"keywords\":[\"Opto 22\"],\"articleSection\":[\"Manufacturing Automation &amp; Intelligence\",\"PLC\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.dmcinfo.com\/blog\/36928\/getting-started-with-opto-22-groov-epic-part-3-codesys-ignition-edge\/\",\"url\":\"https:\/\/www.dmcinfo.com\/blog\/36928\/getting-started-with-opto-22-groov-epic-part-3-codesys-ignition-edge\/\",\"name\":\"Getting Started with Opto 22 groov EPIC Part 3: CODESYS &amp; Ignition Edge | DMC, Inc.\",\"isPartOf\":{\"@id\":\"https:\/\/www.dmcinfo.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.dmcinfo.com\/blog\/36928\/getting-started-with-opto-22-groov-epic-part-3-codesys-ignition-edge\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.dmcinfo.com\/blog\/36928\/getting-started-with-opto-22-groov-epic-part-3-codesys-ignition-edge\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/07\/18162838\/Opto-22-groov-EPIC-Part-3.jpg\",\"datePublished\":\"2025-08-04T13:00:00+00:00\",\"dateModified\":\"2025-12-23T14:45:14+00:00\",\"description\":\"Explore the PLC functionality of the Opto 22 groov EPIC, in this article by DMC, Inc.. Then start your own groov EPIC Ignition Edge project!\u00a0\",\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.dmcinfo.com\/blog\/36928\/getting-started-with-opto-22-groov-epic-part-3-codesys-ignition-edge\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.dmcinfo.com\/blog\/36928\/getting-started-with-opto-22-groov-epic-part-3-codesys-ignition-edge\/#primaryimage\",\"url\":\"https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/07\/18162838\/Opto-22-groov-EPIC-Part-3.jpg\",\"contentUrl\":\"https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/07\/18162838\/Opto-22-groov-EPIC-Part-3.jpg\",\"width\":925,\"height\":400,\"caption\":\"Opto 22 groov EPIC\"},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.dmcinfo.com\/#website\",\"url\":\"https:\/\/www.dmcinfo.com\/\",\"name\":\"DMC, Inc.\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/www.dmcinfo.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.dmcinfo.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.dmcinfo.com\/#organization\",\"name\":\"DMC, Inc.\",\"url\":\"https:\/\/www.dmcinfo.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.dmcinfo.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/05\/27171146\/dmc-logo-1.png\",\"contentUrl\":\"https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/05\/27171146\/dmc-logo-1.png\",\"width\":418,\"height\":167,\"caption\":\"DMC, Inc.\"},\"image\":{\"@id\":\"https:\/\/www.dmcinfo.com\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/pages\/DMC-Inc\/107982009242929\",\"https:\/\/www.instagram.com\/dmcengineering\",\"https:\/\/www.youtube.com\/DMCEngineering\",\"https:\/\/www.linkedin.com\/company\/dmc-engineering\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.dmcinfo.com\/#\/schema\/person\/7f65eba80d7b97fa51af9fe612756b93\",\"name\":\"Natalie Pippolo\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.dmcinfo.com\/#\/schema\/person\/image\/\",\"url\":\"\/\/www.dmcinfo.com\/wp-content\/uploads\/wpo365\/profile-images\/194.png\",\"contentUrl\":\"\/\/www.dmcinfo.com\/wp-content\/uploads\/wpo365\/profile-images\/194.png\",\"caption\":\"Natalie Pippolo\"},\"url\":\"https:\/\/www.dmcinfo.com\/blog\/author\/nataliep\/\"}]}<\/script>","yoast_head_json":{"title":"Getting Started with Opto 22 groov EPIC Part 3: CODESYS &amp; Ignition Edge | DMC, Inc.","description":"Explore the PLC functionality of the Opto 22 groov EPIC, in this article by DMC, Inc.. Then start your own groov EPIC Ignition Edge project!\u00a0","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.dmcinfo.com\/blog\/36928\/getting-started-with-opto-22-groov-epic-part-3-codesys-ignition-edge\/","og_locale":"en_US","og_type":"article","og_title":"Getting Started with Opto 22 groov EPIC Part 3: CODESYS &amp; Ignition Edge","og_description":"Explore the PLC functionality of the Opto 22 groov EPIC, in this article by DMC, Inc.. Then start your own groov EPIC Ignition Edge project!\u00a0","og_url":"https:\/\/www.dmcinfo.com\/blog\/36928\/getting-started-with-opto-22-groov-epic-part-3-codesys-ignition-edge\/","og_site_name":"DMC, Inc.","article_publisher":"https:\/\/www.facebook.com\/pages\/DMC-Inc\/107982009242929","article_published_time":"2025-08-04T13:00:00+00:00","article_modified_time":"2025-12-23T14:45:14+00:00","og_image":[{"width":925,"height":400,"url":"https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/07\/18162838\/Opto-22-groov-EPIC-Part-3.jpg","type":"image\/jpeg"}],"author":"Natalie Pippolo","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Natalie Pippolo","Est. reading time":"7 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.dmcinfo.com\/blog\/36928\/getting-started-with-opto-22-groov-epic-part-3-codesys-ignition-edge\/#article","isPartOf":{"@id":"https:\/\/www.dmcinfo.com\/blog\/36928\/getting-started-with-opto-22-groov-epic-part-3-codesys-ignition-edge\/"},"author":{"name":"Natalie Pippolo","@id":"https:\/\/www.dmcinfo.com\/#\/schema\/person\/7f65eba80d7b97fa51af9fe612756b93"},"headline":"Getting Started with Opto 22 groov EPIC Part 3: CODESYS &amp; Ignition Edge","datePublished":"2025-08-04T13:00:00+00:00","dateModified":"2025-12-23T14:45:14+00:00","mainEntityOfPage":{"@id":"https:\/\/www.dmcinfo.com\/blog\/36928\/getting-started-with-opto-22-groov-epic-part-3-codesys-ignition-edge\/"},"wordCount":886,"publisher":{"@id":"https:\/\/www.dmcinfo.com\/#organization"},"image":{"@id":"https:\/\/www.dmcinfo.com\/blog\/36928\/getting-started-with-opto-22-groov-epic-part-3-codesys-ignition-edge\/#primaryimage"},"thumbnailUrl":"https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/07\/18162838\/Opto-22-groov-EPIC-Part-3.jpg","keywords":["Opto 22"],"articleSection":["Manufacturing Automation &amp; Intelligence","PLC"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.dmcinfo.com\/blog\/36928\/getting-started-with-opto-22-groov-epic-part-3-codesys-ignition-edge\/","url":"https:\/\/www.dmcinfo.com\/blog\/36928\/getting-started-with-opto-22-groov-epic-part-3-codesys-ignition-edge\/","name":"Getting Started with Opto 22 groov EPIC Part 3: CODESYS &amp; Ignition Edge | DMC, Inc.","isPartOf":{"@id":"https:\/\/www.dmcinfo.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.dmcinfo.com\/blog\/36928\/getting-started-with-opto-22-groov-epic-part-3-codesys-ignition-edge\/#primaryimage"},"image":{"@id":"https:\/\/www.dmcinfo.com\/blog\/36928\/getting-started-with-opto-22-groov-epic-part-3-codesys-ignition-edge\/#primaryimage"},"thumbnailUrl":"https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/07\/18162838\/Opto-22-groov-EPIC-Part-3.jpg","datePublished":"2025-08-04T13:00:00+00:00","dateModified":"2025-12-23T14:45:14+00:00","description":"Explore the PLC functionality of the Opto 22 groov EPIC, in this article by DMC, Inc.. Then start your own groov EPIC Ignition Edge project!\u00a0","inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.dmcinfo.com\/blog\/36928\/getting-started-with-opto-22-groov-epic-part-3-codesys-ignition-edge\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.dmcinfo.com\/blog\/36928\/getting-started-with-opto-22-groov-epic-part-3-codesys-ignition-edge\/#primaryimage","url":"https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/07\/18162838\/Opto-22-groov-EPIC-Part-3.jpg","contentUrl":"https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/07\/18162838\/Opto-22-groov-EPIC-Part-3.jpg","width":925,"height":400,"caption":"Opto 22 groov EPIC"},{"@type":"WebSite","@id":"https:\/\/www.dmcinfo.com\/#website","url":"https:\/\/www.dmcinfo.com\/","name":"DMC, Inc.","description":"","publisher":{"@id":"https:\/\/www.dmcinfo.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.dmcinfo.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.dmcinfo.com\/#organization","name":"DMC, Inc.","url":"https:\/\/www.dmcinfo.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.dmcinfo.com\/#\/schema\/logo\/image\/","url":"https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/05\/27171146\/dmc-logo-1.png","contentUrl":"https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/05\/27171146\/dmc-logo-1.png","width":418,"height":167,"caption":"DMC, Inc."},"image":{"@id":"https:\/\/www.dmcinfo.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/pages\/DMC-Inc\/107982009242929","https:\/\/www.instagram.com\/dmcengineering","https:\/\/www.youtube.com\/DMCEngineering","https:\/\/www.linkedin.com\/company\/dmc-engineering"]},{"@type":"Person","@id":"https:\/\/www.dmcinfo.com\/#\/schema\/person\/7f65eba80d7b97fa51af9fe612756b93","name":"Natalie Pippolo","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.dmcinfo.com\/#\/schema\/person\/image\/","url":"\/\/www.dmcinfo.com\/wp-content\/uploads\/wpo365\/profile-images\/194.png","contentUrl":"\/\/www.dmcinfo.com\/wp-content\/uploads\/wpo365\/profile-images\/194.png","caption":"Natalie Pippolo"},"url":"https:\/\/www.dmcinfo.com\/blog\/author\/nataliep\/"}]}},"_links":{"self":[{"href":"https:\/\/www.dmcinfo.com\/wp-json\/wp\/v2\/posts\/36928","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.dmcinfo.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.dmcinfo.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.dmcinfo.com\/wp-json\/wp\/v2\/users\/194"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dmcinfo.com\/wp-json\/wp\/v2\/comments?post=36928"}],"version-history":[{"count":12,"href":"https:\/\/www.dmcinfo.com\/wp-json\/wp\/v2\/posts\/36928\/revisions"}],"predecessor-version":[{"id":37536,"href":"https:\/\/www.dmcinfo.com\/wp-json\/wp\/v2\/posts\/36928\/revisions\/37536"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.dmcinfo.com\/wp-json\/wp\/v2\/media\/36930"}],"wp:attachment":[{"href":"https:\/\/www.dmcinfo.com\/wp-json\/wp\/v2\/media?parent=36928"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dmcinfo.com\/wp-json\/wp\/v2\/categories?post=36928"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dmcinfo.com\/wp-json\/wp\/v2\/tags?post=36928"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}