---
title: "Request-response vs. publish-subscribe, part 1: What's the diff?"
description: Computers communicate over a network to move data and provide services. Learn about two models for network communication and how they work.
image: https://blog.opto22.com/hubfs/network.jpg
---

- [Log in](https://www.opto22.com/logon?returnurl=%2f)
- [Register](https://www.opto22.com/Special-Pages/Logon.aspx)
- [Your Cart](https://www.opto22.com/Checkout/Shopping-Cart)
- [Contact Us](https://www.opto22.com/support/contact-us)

[![Opto 22 Logo](https://blog.opto22.com/hubfs/opto22_lightsilvergradient_800px.png "Opto 22 Logo")](https://www.opto22.com)

- [Products](https://www.opto22.com/products) 
    - [What Do You Want to Do?](https://www.opto22.com/products/what-do-you-want-to-do)
    - [groov RIO](https://www.opto22.com/products/groov-rio)
    - [groov EPIC System](https://www.opto22.com/products/groov-epic-system)
    - [Case Studies](https://www.opto22.com/products/groov-case-studies)
    - [Product Selector](https://www.opto22.com/products/product-selector)
    - [Product Families](https://www.opto22.com/products/product-families)
    - [IIoT System Architecture](https://www.opto22.com/support/resources-tools/demos/groov-epic-groov-rio-architecture)
    - [MQTT Resources](https://www.opto22.com/products/mqtt-resources)
    - [Cybersecurity](https://www.opto22.com/products/cybersecurity)
    - [Power and Energy Monitoring](https://www.opto22.com/products/power-and-energy-monitoring)
    - [How to Buy](https://www.opto22.com/products/how-to-buy)
    - [Hands-On Learning and Demo Units](https://www.opto22.com/products/hands-on-learning-and-demo-units)
    - [Product Comparisons and Compatibility](https://www.opto22.com/products/product-comparisons-and-compatibility)
    - [System Configurator](https://www.opto22.com/products/system-configurator)
- [Support](https://www.opto22.com/support) 
    - [Manage groov](https://www.opto22.com/logon?returnurl=%2fmy-opto%2fmanage-groov)
    - [Documents](https://www.opto22.com/Support/Resources-Tools?rt=59)
    - [Downloads](https://www.opto22.com/Support/Resources-Tools?rt=68)
    - [Videos](https://www.opto22.com/Support/Videos)
    - [KnowledgeBase](https://www.opto22.com/Support/Resources-Tools?rt=67)
    - [Training](https://www.opto22.com/support/training-options)
    - [Troubleshooting](https://www.opto22.com/support/troubleshooting)
    - [Image Library](https://www.opto22.com/support/resources-tools/image-library-svg-editors)
    - [Developers](https://developer.opto22.com/)
    - [Talk to an Engineer](https://www.opto22.com/support/talk-to-an-engineer)
    - [Contact Us](https://www.opto22.com/support/contact-us)
    - [Warranties](https://www.opto22.com/support/warranties)
    - [Agency Approvals/Compliance](https://www.opto22.com/support/agency-approvals)
    - [Privacy Policy](https://www.opto22.com/support/privacy)
- [About Us](https://www.opto22.com/about-us) 
    - [History](https://www.opto22.com/about-us/history)
    - [Location](https://www.opto22.com/about-us/directions)
    - [Corporate Contacts](https://www.opto22.com/about-us/corporate-contacts)
    - [Opto 22 Product Philosophy](https://www.opto22.com/about-us/opto-22-product-philosophy)
    - [Customer Quotes/Testimonials](https://www.opto22.com/about-us/customer-quotes-testimonials)
    - [Virtual Tour](https://www.opto22.com/about-us/virtual-tour)
    - [Pressroom](https://www.opto22.com/about-us/pressroom)
    - [Distributors](https://www.opto22.com/about-us/distributors)
    - [International](https://www.opto22.com/about-us/international)
    - [Sustainability](https://www.opto22.com/about-us/sustainability)
    - [Careers](https://www.opto22.com/about-us/careers)
- [Community](https://www.opto22.com/community) 
    - [OptoPartners](https://www.opto22.com/community/opto-partners)
    - [Technology Partners](https://www.opto22.com/community/technology-partners)
    - [Education Partnerships](https://info.opto22.com/partnering-in-education)
    - [Opto Blog](https://blog.opto22.com/)
    - [Opto Forums](http://forums.opto22.com/)
    - [Events](https://www.opto22.com/community/events)
- [Articles](https://www.opto22.com/articles)
- [Log In](https://www.opto22.com/logon)
- [Register](https://www.opto22.com/Special-Pages/Logon.aspx)
- [Your Cart](https://www.opto22.com/Checkout/Shopping-Cart)
- [Contact Us](https://www.opto22.com/support/contact-us)

- [Products](https://www.opto22.com/products) 
    - [What Do You Want to Do?](https://www.opto22.com/products/what-do-you-want-to-do)
    - [groov RIO](https://www.opto22.com/products/groov-rio)
    - [groov EPIC System](https://www.opto22.com/products/groov-epic-system)
    - [Case Studies](https://www.opto22.com/products/groov-case-studies)
    - [Product Selector](https://www.opto22.com/products/product-selector)
    - [Product Families](https://www.opto22.com/products/product-families)
    - [IIoT System Architecture](https://www.opto22.com/support/resources-tools/demos/groov-epic-groov-rio-architecture)
    - [MQTT Resources](https://www.opto22.com/products/mqtt-resources)
    - [Cybersecurity](https://www.opto22.com/products/cybersecurity)
    - [Power and Energy Monitoring](https://www.opto22.com/products/power-and-energy-monitoring)
    - [How to Buy](https://www.opto22.com/products/how-to-buy)
    - [Hands-On Learning and Demo Units](https://www.opto22.com/products/hands-on-learning-and-demo-units)
    - [Product Comparisons and Compatibility](https://www.opto22.com/products/product-comparisons-and-compatibility)
    - [System Configurator](https://www.opto22.com/products/system-configurator)
- [Support](https://www.opto22.com/support) 
    - [Manage groov](https://www.opto22.com/logon?returnurl=%2fmy-opto%2fmanage-groov)
    - [Documents](https://www.opto22.com/Support/Resources-Tools?rt=59)
    - [Downloads](https://www.opto22.com/Support/Resources-Tools?rt=68)
    - [Videos](https://www.opto22.com/Support/Videos)
    - [KnowledgeBase](https://www.opto22.com/Support/Resources-Tools?rt=67)
    - [Training](https://www.opto22.com/support/training-options)
    - [Troubleshooting](https://www.opto22.com/support/troubleshooting)
    - [Image Library](https://www.opto22.com/support/resources-tools/image-library-svg-editors)
    - [Developers](https://developer.opto22.com/)
    - [Talk to an Engineer](https://www.opto22.com/support/talk-to-an-engineer)
    - [Contact Us](https://www.opto22.com/support/contact-us)
    - [Warranties](https://www.opto22.com/support/warranties)
    - [Agency Approvals/Compliance](https://www.opto22.com/support/agency-approvals)
    - [Privacy Policy](https://www.opto22.com/support/privacy)
- [About Us](https://www.opto22.com/about-us) 
    - [History](https://www.opto22.com/about-us/history)
    - [Location](https://www.opto22.com/about-us/directions)
    - [Corporate Contacts](https://www.opto22.com/about-us/corporate-contacts)
    - [Opto 22 Product Philosophy](https://www.opto22.com/about-us/opto-22-product-philosophy)
    - [Customer Quotes/Testimonials](https://www.opto22.com/about-us/customer-quotes-testimonials)
    - [Virtual Tour](https://www.opto22.com/about-us/virtual-tour)
    - [Pressroom](https://www.opto22.com/about-us/pressroom)
    - [Distributors](https://www.opto22.com/about-us/distributors)
    - [International](https://www.opto22.com/about-us/international)
    - [Sustainability](https://www.opto22.com/about-us/sustainability)
    - [Careers](https://www.opto22.com/about-us/careers)
- [Community](https://www.opto22.com/community) 
    - [OptoPartners](https://www.opto22.com/community/opto-partners)
    - [Technology Partners](https://www.opto22.com/community/technology-partners)
    - [Education Partnerships](https://info.opto22.com/partnering-in-education)
    - [Opto Blog](https://blog.opto22.com/)
    - [Opto Forums](http://forums.opto22.com/)
    - [Events](https://www.opto22.com/community/events)
- [Articles](https://www.opto22.com/articles)
- [Log In](https://www.opto22.com/logon)
- [Register](https://www.opto22.com/Special-Pages/Logon.aspx)
- [Your Cart](https://www.opto22.com/Checkout/Shopping-Cart)
- [Contact Us](https://www.opto22.com/support/contact-us)

 

# Request-response vs. publish-subscribe, part 1: What's the diff?

# OptoBlog

# Request-response vs. publish-subscribe, part 1: What's the diff?

Posted by [Jean Femia](https://blog.opto22.com/optoblog/author/jean-femia) on Feb 8, 2018, 11:17:12 AM

- [Tweet](https://twitter.com/share)

![Network connections](https://blog.opto22.com/hs-fs/hubfs/network.jpg?width=230&name=network.jpg "Network connections")We all know that computers and other electronic devices—printers, routers, laptops, smartphones, and more—are networked so they can exchange information.

But how does that information get where it’s supposed to go?

How does a spreadsheet get to the printer, a YouTube video get to your smartphone, or—most important for automation engineers—a value from a sensor get to your HMI?

Let's take a look at a couple of models for network communication, and then in part 2 we'll compare them to see which one might be better in certain scenarios. The two we'll look at are **request-response** and **publish-subscribe**.

## Request and response

The typical model for computers communicating on a network is *request-response*. In the request-response model, a client computer or software requests data or services, and a server computer or software responds to the request by providing the data or service.

For example, when you send a spreadsheet to the printer, your spreadsheet program is the client. Its request for printer services goes to your company’s print server, which responds to the request and allocates resources for printers on the network. The print server handles all the client requests for printing, making sure your spreadsheet and your coworkers’ print jobs are all completed in an orderly way.

When you want to watch that YouTube video on your smartphone, your web browser or YouTube app is the client, requesting the video over that giant of networks, the Internet. YouTube’s web server receives the request and responds by serving the video page to you, along with the other millions of video pages going to other millions of viewers worldwide.

In automation, the client is typically a PC, and the server is a PLC or PAC. The HMI application on your PC requests data from the PLC or PAC in order to display it on the monitor.

You can imagine request-response as a client sending an empty truck out to be filled with data. The server responds by putting the data on the truck and sending it back.

![Request-response illustration: client and server](https://blog.opto22.com/hs-fs/hubfs/clientServer.jpg?width=609&name=clientServer.jpg "Request-response illustration: client and server")

### Request-response and *groov* View

With an Opto 22 [*groov*® View](https://www.opto22.com/products/groov/visualization-with-groov) operator interface, a [groov EPIC](https://www.opto22.com/products/groov-epic-system/what-is-epic) processor, [*groov* Box](http://www.opto22.com/site/pr_details.aspx?cid=4&item=GROOV-AR1-BASE), or *groov* Server for Windows acts as a client, requesting the data it needs for the HMI from the devices it's connected to—the EPIC and SNAP PAC controllers, Modbus® devices, and PLCs via OPC UA. These devices respond with the data needed for the interface.

Meanwhile, the *groov* EPIC or Box also acts as a web server. At the request of clients like authorized smartphones and tablets, *groov* View responds by serving the interface pages you’ve created to these clients on the network. 

[![Learn more about groov View](https://hubspot-no-cache-na2-prod.s3.amazonaws.com/cta/default/439485/f9b908eb-28df-4acc-8706-8de14f8f186f.png)](https://hubspot-cta-redirect-na2-prod.s3.amazonaws.com/cta/redirect/439485/f9b908eb-28df-4acc-8706-8de14f8f186f)

## Publish and subscribe

A different way for devices to communicate on a network is called *publish-subscribe,* or *pub-sub*. In a pub-sub architecture, a central source called a broker (also sometimes called a server) receives and distributes all data. Pub-sub clients can publish data to the broker or subscribe to get data from it—or both.

Clients that publish data send it only when the data changes (report by exception, or RBE). Clients that subscribe to data automatically receive it from the broker/server, but again, only when it changes.

The broker does not store data; it simply moves it from publishers to subscribers. When data comes in from a publisher, the broker promptly sends it off to any client subscribed to that data.

In our truck analogy, there are no empty trucks. A client publishing data sends a full truck to the broker. The broker sees the truck come in but doesn’t unload it; it simply routes it intact to a subscriber (cloning the truck if there’s more than one subscriber). 

In the diagram below, the client on the left publishes data that the clients on the right subscribe to. In addition, the client in the lower right also publishes data needed by other clients not shown. 

![MQTT clients and broker illustration](https://blog.opto22.com/hs-fs/hubfs/clientsBroker_2.jpg?width=609&name=clientsBroker_2.jpg "MQTT clients and broker illustration")

### MQTT—a pub-sub protocol

![MQTT logo](https://blog.opto22.com/hs-fs/hubfs/social-suggested-images/mqttorg_666557.png?width=224&name=mqttorg_666557.png "MQTT logo")MQTT is a fairly well-known transport protocol that uses the pub-sub architecture. MQTT is extremely lightweight: it takes up almost no space in a device, so that even small devices with very little computing power can use it.

MQTT defines the truck and the routes. But it doesn’t define how the load (the data) is packed or unpacked. That’s where Sparkplug comes in.

### MQTT with Sparkplug

![Sparkplug logo](https://blog.opto22.com/hs-fs/hubfs/Sparkplug_logo.png?width=224&name=Sparkplug_logo.png "Sparkplug logo")The Sparkplug open MQTT client specification provides a messaging format appropriate for industrial use.

Sparkplug encodes the data payload: it defines how the data is packed on the truck before it’s sent by the publisher, and how it is unpacked in the subscriber.

Data sent over MQTT with Sparkplug is compressed and efficient. MQTT trucks that have been packed with the Sparkplug definition must also be unpacked with Sparkplug, so both publishers and subscribers must use it in order to get the data delivered.

MQTT with Sparkplug also provides an efficient way to track the state of clients and make sure that clients on a tenuous connection can still deliver and receive data.

- If the client goes offline (breaks its connection with the broker), the broker sends a "death certificate" to clients subscribed to that data.
- When the client comes back online (re-establishes the connection), the broker issues a "birth certificate" with the current status of all data tags.

A certain amount of missed data may also be sent, depending on client configuration.

[![Read more about MQTT and OPC UA](https://hubspot-no-cache-na2-prod.s3.amazonaws.com/cta/default/439485/2a093e3f-4dd3-4d85-a897-eb9185f47ec2.png)](https://hubspot-cta-redirect-na2-prod.s3.amazonaws.com/cta/redirect/439485/2a093e3f-4dd3-4d85-a897-eb9185f47ec2)

## Comparing request-response and pub-sub

Because these two network communication models work differently, some applications are more suited to one model or the other.

In [part 2](https://blog.opto22.com/optoblog/request-response-vs-pub-sub-part-2), we'll take a look at some key differences and when you might choose to use each. Hint: One of these may be better suited to industrial internet of things (IIoT) applications. 

Don't miss a post! [Subscribe to the OptoBlog](https://info.opto22.com/optonews-subscription-form). 

[![Subscribe to OptoBlog weekly digest](https://hubspot-no-cache-na2-prod.s3.amazonaws.com/cta/default/439485/3121ba07-ce79-43a3-9294-1e208880677e.png)](https://hubspot-cta-redirect-na2-prod.s3.amazonaws.com/cta/redirect/439485/3121ba07-ce79-43a3-9294-1e208880677e)

 Topics: [groov](https://blog.opto22.com/optoblog/topic/groov), [Internet of Things](https://blog.opto22.com/optoblog/topic/internet-of-things), [IoT](https://blog.opto22.com/optoblog/topic/iot), [Networking](https://blog.opto22.com/optoblog/topic/networking), [IIoT](https://blog.opto22.com/optoblog/topic/iiot), [Industrial Internet of Things](https://blog.opto22.com/optoblog/topic/industrial-internet-of-things), [Data acquisition](https://blog.opto22.com/optoblog/topic/data-acquisition), [MQTT](https://blog.opto22.com/optoblog/topic/mqtt)

### Written by [Jean Femia](https://blog.opto22.com/optoblog/author/jean-femia)

<https://blog.opto22.com/optoblog/author/jean-femia>

Jean Femia writes about technical subjects and has focused on automation and control systems for more than 15 years. She likes learning about technology and taking corners in her Honda S2000.

Find me on:

[LinkedIn](https://www.linkedin.com/in/jeanfemia)

### Subscribe to Email Updates

### Recent Posts

### Posts by Topic

- [groov EPIC (507)](https://blog.opto22.com/optoblog/topic/groov-epic)
- [groov RIO (302)](https://blog.opto22.com/optoblog/topic/groov-rio)
- [optonews (218)](https://blog.opto22.com/optoblog/topic/optonews)
- [IIoT (214)](https://blog.opto22.com/optoblog/topic/iiot)
- [groov (192)](https://blog.opto22.com/optoblog/topic/groov)
- [IoT (148)](https://blog.opto22.com/optoblog/topic/iot)
- [Ignition (131)](https://blog.opto22.com/optoblog/topic/ignition)
- [Internet of Things (131)](https://blog.opto22.com/optoblog/topic/internet-of-things)
- [Node-RED (129)](https://blog.opto22.com/optoblog/topic/node-red)
- [PACs (127)](https://blog.opto22.com/optoblog/topic/pacs)
- [MQTT (125)](https://blog.opto22.com/optoblog/topic/mqtt)
- [Events & conferences (117)](https://blog.opto22.com/optoblog/topic/events-conferences)
- [Case studies (110)](https://blog.opto22.com/optoblog/topic/case-studies)
- [Industrial Internet of Things (104)](https://blog.opto22.com/optoblog/topic/industrial-internet-of-things)
- [Videos (96)](https://blog.opto22.com/optoblog/topic/videos)
- [Updates (82)](https://blog.opto22.com/optoblog/topic/updates)
- [Tips (81)](https://blog.opto22.com/optoblog/topic/tips)
- [OptoPartner (76)](https://blog.opto22.com/optoblog/topic/optopartner)
- [Integrators (75)](https://blog.opto22.com/optoblog/topic/integrators)
- [Remote monitoring (75)](https://blog.opto22.com/optoblog/topic/remote-monitoring)
- [Ignition Edge (74)](https://blog.opto22.com/optoblog/topic/ignition-edge)
- [Webinars (70)](https://blog.opto22.com/optoblog/topic/webinars)
- [I/O (69)](https://blog.opto22.com/optoblog/topic/io)
- [Process control (69)](https://blog.opto22.com/optoblog/topic/process-control)
- [Energy management (64)](https://blog.opto22.com/optoblog/topic/energy-management)
- [CODESYS (62)](https://blog.opto22.com/optoblog/topic/codesys)
- [Training (58)](https://blog.opto22.com/optoblog/topic/training)
- [PAC Control (52)](https://blog.opto22.com/optoblog/topic/pac-control)
- [PAC Project (49)](https://blog.opto22.com/optoblog/topic/pac-project)
- [groov View (49)](https://blog.opto22.com/optoblog/topic/groov-view)
- [OEM (48)](https://blog.opto22.com/optoblog/topic/oem)
- [cybersecurity (48)](https://blog.opto22.com/optoblog/topic/cybersecurity)
- [digital transformation (46)](https://blog.opto22.com/optoblog/topic/digital-transformation)
- [Discrete control (45)](https://blog.opto22.com/optoblog/topic/discrete-control)
- [Firmware (40)](https://blog.opto22.com/optoblog/topic/firmware)
- [Machine builder (40)](https://blog.opto22.com/optoblog/topic/machine-builder)
- [edge computing (39)](https://blog.opto22.com/optoblog/topic/edge-computing)
- [EPIC (37)](https://blog.opto22.com/optoblog/topic/epic)
- [system integrator (37)](https://blog.opto22.com/optoblog/topic/system-integrator)
- [Inductive Automation (35)](https://blog.opto22.com/optoblog/topic/inductive-automation)
- [industrial automation (34)](https://blog.opto22.com/optoblog/topic/industrial-automation)
- [groov Manage (33)](https://blog.opto22.com/optoblog/topic/groov-manage)
- [Data acquisition (31)](https://blog.opto22.com/optoblog/topic/data-acquisition)
- [Ignition Community Conference (31)](https://blog.opto22.com/optoblog/topic/ignition-community-conference)
- [Factory Training (30)](https://blog.opto22.com/optoblog/topic/factory-training)
- [Security (30)](https://blog.opto22.com/optoblog/topic/security)
- [Sparkplug (30)](https://blog.opto22.com/optoblog/topic/sparkplug)
- [snap pac (29)](https://blog.opto22.com/optoblog/topic/snap-pac)
- [Networking (28)](https://blog.opto22.com/optoblog/topic/networking)
- [REST API (26)](https://blog.opto22.com/optoblog/topic/rest-api)
- [New products (25)](https://blog.opto22.com/optoblog/topic/new-products)
- [Technology Partners (24)](https://blog.opto22.com/optoblog/topic/technology-partners)
- [Water & wastewater (23)](https://blog.opto22.com/optoblog/topic/water-amp-wastewater)
- [PLCs (21)](https://blog.opto22.com/optoblog/topic/plcs)
- [manufacturing (21)](https://blog.opto22.com/optoblog/topic/manufacturing)
- [API (20)](https://blog.opto22.com/optoblog/topic/api)
- [Cirrus Link Solutions (20)](https://blog.opto22.com/optoblog/topic/cirrus-link-solutions)
- [developer (20)](https://blog.opto22.com/optoblog/topic/developer)
- [groov EPIC Learning Center (20)](https://blog.opto22.com/optoblog/topic/groov-epic-learning-center)
- [OptoU (19)](https://blog.opto22.com/optoblog/topic/optou)
- [smart manufacturing (19)](https://blog.opto22.com/optoblog/topic/smart-manufacturing)
- [Electronics (18)](https://blog.opto22.com/optoblog/topic/electronics)
- [HMI (18)](https://blog.opto22.com/optoblog/topic/hmi)
- [OPC UA (18)](https://blog.opto22.com/optoblog/topic/opc-ua)
- [Oil & gas (18)](https://blog.opto22.com/optoblog/topic/oil-gas)
- [groov rio emu (18)](https://blog.opto22.com/optoblog/topic/groov-rio-emu)
- [Food & beverage (17)](https://blog.opto22.com/optoblog/topic/food-amp-beverage)
- [OptoPartner video (17)](https://blog.opto22.com/optoblog/topic/optopartner-video)
- [energy monitoring (17)](https://blog.opto22.com/optoblog/topic/energy-monitoring)
- [podcast (17)](https://blog.opto22.com/optoblog/topic/podcast)
- [Building management (16)](https://blog.opto22.com/optoblog/topic/building-management)
- [Awards and recognition (15)](https://blog.opto22.com/optoblog/topic/awards-and-recognition)
- [REST (15)](https://blog.opto22.com/optoblog/topic/rest)
- [SCADA (15)](https://blog.opto22.com/optoblog/topic/scada)
- [mobile (15)](https://blog.opto22.com/optoblog/topic/mobile)
- [Migration (14)](https://blog.opto22.com/optoblog/topic/migration)
- [OptoChannel (13)](https://blog.opto22.com/optoblog/topic/optochannel)
- [EPIC Security (12)](https://blog.opto22.com/optoblog/topic/epic-security)
- [Opto 22 product support (12)](https://blog.opto22.com/optoblog/topic/opto-22-product-support)
- [groov Manage series (12)](https://blog.opto22.com/optoblog/topic/groov-manage-series)
- [I/O modules (11)](https://blog.opto22.com/optoblog/topic/i-o-modules)
- [Modbus (11)](https://blog.opto22.com/optoblog/topic/modbus)
- [OptoForum (11)](https://blog.opto22.com/optoblog/topic/optoforum)
- [PAC Manager (11)](https://blog.opto22.com/optoblog/topic/pac-manager)
- [power monitoring (11)](https://blog.opto22.com/optoblog/topic/power-monitoring)
- [PAC Display (10)](https://blog.opto22.com/optoblog/topic/pac-display)
- [oil and gas (10)](https://blog.opto22.com/optoblog/topic/oil-and-gas)
- [Art of the Possible (9)](https://blog.opto22.com/optoblog/topic/art-of-the-possible)
- [Deepsea Challenge (9)](https://blog.opto22.com/optoblog/topic/deepsea-challenge)
- [IntegrateLive! (9)](https://blog.opto22.com/optoblog/topic/integratelive)
- [OT data (9)](https://blog.opto22.com/optoblog/topic/ot-data)
- [PID loop control (9)](https://blog.opto22.com/optoblog/topic/pid-loop-control)
- [RESTful server (9)](https://blog.opto22.com/optoblog/topic/restful-server)
- [Raspberry Pi (9)](https://blog.opto22.com/optoblog/topic/raspberry-pi)
- [holiday schedule (9)](https://blog.opto22.com/optoblog/topic/holiday-schedule)
- [white paper (9)](https://blog.opto22.com/optoblog/topic/white-paper)
- [Automation World (8)](https://blog.opto22.com/optoblog/topic/automation-world)
- [Edge I/O (8)](https://blog.opto22.com/optoblog/topic/edge-i-o)
- [I/O (8)](https://blog.opto22.com/optoblog/topic/i-o)
- [SSRs (8)](https://blog.opto22.com/optoblog/topic/ssrs)
- [Unified Namespace (8)](https://blog.opto22.com/optoblog/topic/unified-namespace)
- [data visualization (8)](https://blog.opto22.com/optoblog/topic/data-visualization)
- [holiday hours (8)](https://blog.opto22.com/optoblog/topic/holiday-hours)
- [webinar (8)](https://blog.opto22.com/optoblog/topic/webinar)
- [IEC 61131-3 (7)](https://blog.opto22.com/optoblog/topic/iec-61131-3)
- [Ignition Cloud Edition (7)](https://blog.opto22.com/optoblog/topic/ignition-cloud-edition)
- [MQTT implementation (7)](https://blog.opto22.com/optoblog/topic/mqtt-implementation)
- [Who's groovin (7)](https://blog.opto22.com/optoblog/topic/whos-groovin)
- [groov server for windows (7)](https://blog.opto22.com/optoblog/topic/groov-server-for-windows)
- [secure shell (7)](https://blog.opto22.com/optoblog/topic/secure-shell)
- [technical tips (7)](https://blog.opto22.com/optoblog/topic/technical-tips)
- [ARC Forum (6)](https://blog.opto22.com/optoblog/topic/arc-forum)
- [Careers (6)](https://blog.opto22.com/optoblog/topic/careers)
- [EPIC Security Series (6)](https://blog.opto22.com/optoblog/topic/epic-security-series)
- [Eclipse Foundation (6)](https://blog.opto22.com/optoblog/topic/eclipse-foundation)
- [Ignition Community Live (6)](https://blog.opto22.com/optoblog/topic/ignition-community-live)
- [Linux (6)](https://blog.opto22.com/optoblog/topic/linux)
- [data center (6)](https://blog.opto22.com/optoblog/topic/data-center)
- [interactive demo (6)](https://blog.opto22.com/optoblog/topic/interactive-demo)
- [machine monitoring (6)](https://blog.opto22.com/optoblog/topic/machine-monitoring)
- [open source (6)](https://blog.opto22.com/optoblog/topic/open-source)
- [ssh (6)](https://blog.opto22.com/optoblog/topic/ssh)
- [Anniversary (5)](https://blog.opto22.com/optoblog/topic/anniversary)
- [Digital I/O for Raspberry Pi (5)](https://blog.opto22.com/optoblog/topic/digital-i-o-for-raspberry-pi)
- [IIoT System Architecture (5)](https://blog.opto22.com/optoblog/topic/iiot-system-architecture)
- [OptoNews 2015-12-02 (5)](https://blog.opto22.com/optoblog/topic/optonews-2015-12-02)
- [OptoOPCServer (5)](https://blog.opto22.com/optoblog/topic/optoopcserver)
- [SVG (5)](https://blog.opto22.com/optoblog/topic/svg)
- [certificate (5)](https://blog.opto22.com/optoblog/topic/certificate)
- [cloud computing (5)](https://blog.opto22.com/optoblog/topic/cloud-computing)
- [product philosophy (5)](https://blog.opto22.com/optoblog/topic/product-philosophy)
- [software (5)](https://blog.opto22.com/optoblog/topic/software)
- [system integration (5)](https://blog.opto22.com/optoblog/topic/system-integration)
- [CODESYS blog series (4)](https://blog.opto22.com/optoblog/topic/codesys-blog-series)
- [COVID-19 Update (4)](https://blog.opto22.com/optoblog/topic/covid-19-update)
- [EdgeX (4)](https://blog.opto22.com/optoblog/topic/edgex)
- [HiveMQ (4)](https://blog.opto22.com/optoblog/topic/hivemq)
- [OpenVPN (4)](https://blog.opto22.com/optoblog/topic/openvpn)
- [OptoDataLink (4)](https://blog.opto22.com/optoblog/topic/optodatalink)
- [OptoNews 2015-03-04 (4)](https://blog.opto22.com/optoblog/topic/optonews-2015-03-04)
- [OptoNews 2015-03-18 (4)](https://blog.opto22.com/optoblog/topic/optonews-2015-03-18)
- [OptoNews 2015-04-01 (4)](https://blog.opto22.com/optoblog/topic/optonews-2015-04-01)
- [OptoNews 2015-04-15 (4)](https://blog.opto22.com/optoblog/topic/optonews-2015-04-15)
- [OptoNews 2015-04-29 (4)](https://blog.opto22.com/optoblog/topic/optonews-2015-04-29)
- [OptoNews 2015-05-21 (4)](https://blog.opto22.com/optoblog/topic/optonews-2015-05-21)
- [OptoNews 2015-06-03 (4)](https://blog.opto22.com/optoblog/topic/optonews-2015-06-03)
- [OptoNews 2015-06-17 (4)](https://blog.opto22.com/optoblog/topic/optonews-2015-06-17)
- [OptoNews 2015-07-01 (4)](https://blog.opto22.com/optoblog/topic/optonews-2015-07-01)
- [OptoNews 2015-07-15 (4)](https://blog.opto22.com/optoblog/topic/optonews-2015-07-15)
- [OptoNews 2015-07-29 (4)](https://blog.opto22.com/optoblog/topic/optonews-2015-07-29)
- [OptoNews 2015-08-12 (4)](https://blog.opto22.com/optoblog/topic/optonews-2015-08-12)
- [OptoNews 2015-08-26 (4)](https://blog.opto22.com/optoblog/topic/optonews-2015-08-26)
- [OptoNews 2015-09-09 (4)](https://blog.opto22.com/optoblog/topic/optonews-2015-09-09)
- [OptoNews 2015-09-23 (4)](https://blog.opto22.com/optoblog/topic/optonews-2015-09-23)
- [OptoNews 2015-10-07 (4)](https://blog.opto22.com/optoblog/topic/optonews-2015-10-07)
- [OptoNews 2015-10-21 (4)](https://blog.opto22.com/optoblog/topic/optonews-2015-10-21)
- [OptoNews 2015-11-04 (4)](https://blog.opto22.com/optoblog/topic/optonews-2015-11-04)
- [OptoNews 2015-11-18 (4)](https://blog.opto22.com/optoblog/topic/optonews-2015-11-18)
- [OptoNews 2015-12-16 (4)](https://blog.opto22.com/optoblog/topic/optonews-2015-12-16)
- [OptoNews 2016-01-06 (4)](https://blog.opto22.com/optoblog/topic/optonews-2016-01-06)
- [OptoNews 2016-01-20 (4)](https://blog.opto22.com/optoblog/topic/optonews-2016-01-20)
- [OptoNews 2016-02-03 (4)](https://blog.opto22.com/optoblog/topic/optonews-2016-02-03)
- [OptoNews 2016-02-17 (4)](https://blog.opto22.com/optoblog/topic/optonews-2016-02-17)
- [OptoNews 2016-03-02 (4)](https://blog.opto22.com/optoblog/topic/optonews-2016-03-02)
- [OptoNews 2016-03-16 (4)](https://blog.opto22.com/optoblog/topic/optonews-2016-03-16)
- [OptoNews 2016-03-30 (4)](https://blog.opto22.com/optoblog/topic/optonews-2016-03-30)
- [OptoNews 2016-04-13 (4)](https://blog.opto22.com/optoblog/topic/optonews-2016-04-13)
- [OptoNews 2016-04-27 (4)](https://blog.opto22.com/optoblog/topic/optonews-2016-04-27)
- [OptoNews 2016-05-11 (4)](https://blog.opto22.com/optoblog/topic/optonews-2016-05-11)
- [OptoNews 2016-05-25 (4)](https://blog.opto22.com/optoblog/topic/optonews-2016-05-25)
- [OptoNews 2016-06-08 (4)](https://blog.opto22.com/optoblog/topic/optonews-2016-06-08)
- [OptoNews 2016-06-22 (4)](https://blog.opto22.com/optoblog/topic/optonews-2016-06-22)
- [OptoNews 2016-07-06 (4)](https://blog.opto22.com/optoblog/topic/optonews-2016-07-06)
- [OptoNews 2016-08-03 (4)](https://blog.opto22.com/optoblog/topic/optonews-2016-08-03)
- [OptoNews 2016-08-31 (4)](https://blog.opto22.com/optoblog/topic/optonews-2016-08-31)
- [OptoNews 2016-09-14 (4)](https://blog.opto22.com/optoblog/topic/optonews-2016-09-14)
- [OptoNews 2016-09-28 (4)](https://blog.opto22.com/optoblog/topic/optonews-2016-09-28)
- [OptoNews 2016-10-12 (4)](https://blog.opto22.com/optoblog/topic/optonews-2016-10-12)
- [OptoNews 2016-10-26 (4)](https://blog.opto22.com/optoblog/topic/optonews-2016-10-26)
- [OptoNews 2016-11-09 (4)](https://blog.opto22.com/optoblog/topic/optonews-2016-11-09)
- [OptoNews 2016-11-30 (4)](https://blog.opto22.com/optoblog/topic/optonews-2016-11-30)
- [OptoNews 2016-12-14 (4)](https://blog.opto22.com/optoblog/topic/optonews-2016-12-14)
- [OptoNews 2017-01-04 (4)](https://blog.opto22.com/optoblog/topic/optonews-2017-01-04)
- [OptoNews 2017-01-18 (4)](https://blog.opto22.com/optoblog/topic/optonews-2017-01-18)
- [OptoNews 2017-02-01 (4)](https://blog.opto22.com/optoblog/topic/optonews-2017-02-01)
- [OptoNews 2017-02-15 (4)](https://blog.opto22.com/optoblog/topic/optonews-2017-02-15)
- [OptoNews 2017-03-01 (4)](https://blog.opto22.com/optoblog/topic/optonews-2017-03-01)
- [OptoNews 2017-03-15 (4)](https://blog.opto22.com/optoblog/topic/optonews-2017-03-15)
- [OptoNews 2017-03-29 (4)](https://blog.opto22.com/optoblog/topic/optonews-2017-03-29)
- [OptoNews 2017-04-12 (4)](https://blog.opto22.com/optoblog/topic/optonews-2017-04-12)
- [Optomux (4)](https://blog.opto22.com/optoblog/topic/optomux)
- [UNS (4)](https://blog.opto22.com/optoblog/topic/uns)
- [machine data (4)](https://blog.opto22.com/optoblog/topic/machine-data)
- [product design (4)](https://blog.opto22.com/optoblog/topic/product-design)
- [serial module (4)](https://blog.opto22.com/optoblog/topic/serial-module)
- [DMC guest blog (3)](https://blog.opto22.com/optoblog/topic/dmc-guest-blog)
- [Discovery Day (3)](https://blog.opto22.com/optoblog/topic/discovery-day)
- [G4 I/O (3)](https://blog.opto22.com/optoblog/topic/g4-i-o)
- [GIF (3)](https://blog.opto22.com/optoblog/topic/gif)
- [GPIO (3)](https://blog.opto22.com/optoblog/topic/gpio)
- [ICC (3)](https://blog.opto22.com/optoblog/topic/icc)
- [Insider (3)](https://blog.opto22.com/optoblog/topic/insider)
- [Made in USA (3)](https://blog.opto22.com/optoblog/topic/made-in-usa)
- [OEE (3)](https://blog.opto22.com/optoblog/topic/oee)
- [OptoMMP (3)](https://blog.opto22.com/optoblog/topic/optommp)
- [OptoNews 2016-08-17 (3)](https://blog.opto22.com/optoblog/topic/optonews-2016-08-17)
- [OptoTagPreserve (3)](https://blog.opto22.com/optoblog/topic/optotagpreserve)
- [YouTube (3)](https://blog.opto22.com/optoblog/topic/youtube)
- [control engineering (3)](https://blog.opto22.com/optoblog/topic/control-engineering)
- [groov RIO Learning Center (3)](https://blog.opto22.com/optoblog/topic/groov-rio-learning-center)
- [open source software (3)](https://blog.opto22.com/optoblog/topic/open-source-software)
- [python (3)](https://blog.opto22.com/optoblog/topic/python)
- [virtual workshop (3)](https://blog.opto22.com/optoblog/topic/virtual-workshop)
- [AI (2)](https://blog.opto22.com/optoblog/topic/ai)
- [Aggregates & concrete (2)](https://blog.opto22.com/optoblog/topic/aggregates-amp-concrete)
- [Build-a-Thon (2)](https://blog.opto22.com/optoblog/topic/build-a-thon)
- [Expert Interview series (2)](https://blog.opto22.com/optoblog/topic/expert-interview-series)
- [Firmware Engineer (2)](https://blog.opto22.com/optoblog/topic/firmware-engineer)
- [LDAP (2)](https://blog.opto22.com/optoblog/topic/ldap)
- [LoRaWAN (2)](https://blog.opto22.com/optoblog/topic/lorawan)
- [MES (2)](https://blog.opto22.com/optoblog/topic/mes)
- [MariaDB (2)](https://blog.opto22.com/optoblog/topic/mariadb)
- [Sepasoft (2)](https://blog.opto22.com/optoblog/topic/sepasoft)
- [Snowflake (2)](https://blog.opto22.com/optoblog/topic/snowflake)
- [SoftPAC (2)](https://blog.opto22.com/optoblog/topic/softpac)
- [Spanish (2)](https://blog.opto22.com/optoblog/topic/spanish)
- [Technical Writer (2)](https://blog.opto22.com/optoblog/topic/technical-writer)
- [Version 3.4 update (2)](https://blog.opto22.com/optoblog/topic/version-3-4-update)
- [Windows 10 (2)](https://blog.opto22.com/optoblog/topic/windows-10)
- [automation 101 (2)](https://blog.opto22.com/optoblog/topic/automation-101)
- [compliance (2)](https://blog.opto22.com/optoblog/topic/compliance)
- [email notifications (2)](https://blog.opto22.com/optoblog/topic/email-notifications)
- [firewall (2)](https://blog.opto22.com/optoblog/topic/firewall)
- [serial (2)](https://blog.opto22.com/optoblog/topic/serial)
- [21 CFR Part 11 (1)](https://blog.opto22.com/optoblog/topic/21-cfr-part-11)
- [Amazon Web Services (1)](https://blog.opto22.com/optoblog/topic/amazon-web-services)
- [Applications Engineer (1)](https://blog.opto22.com/optoblog/topic/applications-engineer)
- [Big data (1)](https://blog.opto22.com/optoblog/topic/big-data)
- [CNC (1)](https://blog.opto22.com/optoblog/topic/cnc)
- [Ciberseguridad (1)](https://blog.opto22.com/optoblog/topic/ciberseguridad)
- [Colombia (1)](https://blog.opto22.com/optoblog/topic/colombia)
- [Corso Systems (1)](https://blog.opto22.com/optoblog/topic/corso-systems)
- [Discover Gallery (1)](https://blog.opto22.com/optoblog/topic/discover-gallery)
- [ENTELEC (1)](https://blog.opto22.com/optoblog/topic/entelec)
- [EaaS (1)](https://blog.opto22.com/optoblog/topic/eaas)
- [Education Partnerships (1)](https://blog.opto22.com/optoblog/topic/education-partnerships)
- [Grafana (1)](https://blog.opto22.com/optoblog/topic/grafana)
- [HART (1)](https://blog.opto22.com/optoblog/topic/hart)
- [HVAC (1)](https://blog.opto22.com/optoblog/topic/hvac)
- [HighByte (1)](https://blog.opto22.com/optoblog/topic/highbyte)
- [Industrial Ethernet Book (1)](https://blog.opto22.com/optoblog/topic/industrial-ethernet-book)
- [LinkedIn (1)](https://blog.opto22.com/optoblog/topic/linkedin)
- [Log4Shell (1)](https://blog.opto22.com/optoblog/topic/log4shell)
- [Log4j (1)](https://blog.opto22.com/optoblog/topic/log4j)
- [Lucidchart (1)](https://blog.opto22.com/optoblog/topic/lucidchart)
- [M-Bus (1)](https://blog.opto22.com/optoblog/topic/m-bus)
- [Modern Elteknik (1)](https://blog.opto22.com/optoblog/topic/modern-elteknik)
- [MySQL (1)](https://blog.opto22.com/optoblog/topic/mysql)
- [Opto 22 (1)](https://blog.opto22.com/optoblog/topic/opto-22)
- [OptoChat (1)](https://blog.opto22.com/optoblog/topic/optochat)
- [OptoNews 2016-07-20 (1)](https://blog.opto22.com/optoblog/topic/optonews-2016-07-20)
- [PLC programming (1)](https://blog.opto22.com/optoblog/topic/plc-programming)
- [Pamux (1)](https://blog.opto22.com/optoblog/topic/pamux)
- [PostgreSQL (1)](https://blog.opto22.com/optoblog/topic/postgresql)
- [RS232 (1)](https://blog.opto22.com/optoblog/topic/rs232)
- [RTD (1)](https://blog.opto22.com/optoblog/topic/rtd)
- [SPS (1)](https://blog.opto22.com/optoblog/topic/sps)
- [Sweden (1)](https://blog.opto22.com/optoblog/topic/sweden)
- [Tatsoft (1)](https://blog.opto22.com/optoblog/topic/tatsoft)
- [User Accounts (1)](https://blog.opto22.com/optoblog/topic/user-accounts)
- [Veteran's Day (1)](https://blog.opto22.com/optoblog/topic/veterans-day)
- [Virtual Tour (1)](https://blog.opto22.com/optoblog/topic/virtual-tour)
- [aerospace (1)](https://blog.opto22.com/optoblog/topic/aerospace)
- [analisisydatos (1)](https://blog.opto22.com/optoblog/topic/analisisydatos)
- [analog input module (1)](https://blog.opto22.com/optoblog/topic/analog-input-module)
- [automatizacion (1)](https://blog.opto22.com/optoblog/topic/automatizacion)
- [blockchain (1)](https://blog.opto22.com/optoblog/topic/blockchain)
- [current transformers (1)](https://blog.opto22.com/optoblog/topic/current-transformers)
- [customer service (1)](https://blog.opto22.com/optoblog/topic/customer-service)
- [encryption (1)](https://blog.opto22.com/optoblog/topic/encryption)
- [groov Admin (1)](https://blog.opto22.com/optoblog/topic/groov-admin)
- [groov System Configurator (1)](https://blog.opto22.com/optoblog/topic/groov-system-configurator)
- [groov maintenance license (1)](https://blog.opto22.com/optoblog/topic/groov-maintenance-license)
- [indoor agriculture (1)](https://blog.opto22.com/optoblog/topic/indoor-agriculture)
- [instrumentacion (1)](https://blog.opto22.com/optoblog/topic/instrumentacion)
- [inteligenciaindustrial (1)](https://blog.opto22.com/optoblog/topic/inteligenciaindustrial)
- [json (1)](https://blog.opto22.com/optoblog/topic/json)
- [machine learning (1)](https://blog.opto22.com/optoblog/topic/machine-learning)
- [maintenance technician (1)](https://blog.opto22.com/optoblog/topic/maintenance-technician)
- [mining (1)](https://blog.opto22.com/optoblog/topic/mining)
- [network segmentation (1)](https://blog.opto22.com/optoblog/topic/network-segmentation)
- [port redirect (1)](https://blog.opto22.com/optoblog/topic/port-redirect)
- [predictive maintenance (1)](https://blog.opto22.com/optoblog/topic/predictive-maintenance)
- [redundancy (1)](https://blog.opto22.com/optoblog/topic/redundancy)
- [reverse osmosis (1)](https://blog.opto22.com/optoblog/topic/reverse-osmosis)
- [sdk (1)](https://blog.opto22.com/optoblog/topic/sdk)
- [supply chain (1)](https://blog.opto22.com/optoblog/topic/supply-chain)
- [temperature sensor (1)](https://blog.opto22.com/optoblog/topic/temperature-sensor)
- [time proportional output (1)](https://blog.opto22.com/optoblog/topic/time-proportional-output)
- [visio stencils (1)](https://blog.opto22.com/optoblog/topic/visio-stencils)
- [wellsite automation (1)](https://blog.opto22.com/optoblog/topic/wellsite-automation)

see all

- [Products](https://www.opto22.com/products) 
    - [Product Selector](https://www.opto22.com/products/product-selector)
    - [groov System](https://www.opto22.com/products/groov)
    - [I/O](https://www.opto22.com/products/i-o)
    - [Logic](https://www.opto22.com/products/logic)
    - [Data](https://www.opto22.com/products/data)
    - [Visualization](https://www.opto22.com/products/visualization)
    - [Accessories](https://www.opto22.com/products/accessories)
    - [Product Families](https://www.opto22.com/products/product-families)
    - [How to Buy](https://www.opto22.com/products/how-to-buy)
    - [Product Comparisons and Compatibility](https://www.opto22.com/products/product-comparisons-and-compatibility)
    - [SNAP I/O Configurator](https://www.opto22.com/products/snap-i-o-configurator)

- [Support](https://www.opto22.com/support) 
    - [Contact Support](https://www.opto22.com/support/contact-us)
    - [Warranties](https://www.opto22.com/support/warranties)
    - [Troubleshooting](https://www.opto22.com/support/troubleshooting)
    - [Documents](https://www.opto22.com/support/documents-redirect)
    - [Downloads](https://www.opto22.com/support/downloads-redirect)
    - [Videos](https://www.opto22.com/support/videos-redirect)
    - [KnowledgeBase](https://www.opto22.com/support/optoknowledgebase-redirect)
    - [Training](https://www.opto22.com/support/training-options)

- [About Us](https://www.opto22.com/about-us) 
    - [Distributors](https://www.opto22.com/about-us/distributors)
    - [Pressroom](https://www.opto22.com/about-us/pressroom)
    - [Careers](https://www.opto22.com/about-us/careers)
    - [History](https://www.opto22.com/about-us/history)
    - [Corporate Contacts](https://www.opto22.com/about-us/corporate-contacts)
    - [Sustainability](https://www.opto22.com/about-us/sustainability)
    - [International](https://www.opto22.com/about-us/international)
    - [Location](https://www.opto22.com/about-us/directions)

- [Community](https://www.opto22.com/community) 
    - [Opto Partners](https://www.opto22.com/community/opto-partners)
    - [Opto Blog](https://www.opto22.com/community/opto-blog)
    - [Opto Forums](https://www.opto22.com/community/opto-forums)
    - [Events](https://www.opto22.com/community/events)

- [Products](https://www.opto22.com/products) 
    - [What Do You Want to Do?](https://www.opto22.com/products/what-do-you-want-to-do)
    - [groov RIO](https://www.opto22.com/products/groov-rio)
    - [groov EPIC System](https://www.opto22.com/products/groov-epic-system)
    - [Case Studies](https://www.opto22.com/products/groov-case-studies)
    - [Product Selector](https://www.opto22.com/products/product-selector)
    - [Product Families](https://www.opto22.com/products/product-families)
    - [IIoT System Architecture](https://www.opto22.com/support/resources-tools/demos/groov-epic-groov-rio-architecture)
    - [MQTT Resources](https://www.opto22.com/products/mqtt-resources)
    - [Cybersecurity](https://www.opto22.com/products/cybersecurity)
    - [Power and Energy Monitoring](https://www.opto22.com/products/power-and-energy-monitoring)
    - [How to Buy](https://www.opto22.com/products/how-to-buy)
    - [Hands-On Learning and Demo Units](https://www.opto22.com/products/hands-on-learning-and-demo-units)
    - [Product Comparisons and Compatibility](https://www.opto22.com/products/product-comparisons-and-compatibility)
    - [System Configurator](https://www.opto22.com/products/system-configurator)
- [Support](https://www.opto22.com/support) 
    - [Manage groov](https://www.opto22.com/logon?returnurl=%2fmy-opto%2fmanage-groov)
    - [Documents](https://www.opto22.com/Support/Resources-Tools?rt=59)
    - [Downloads](https://www.opto22.com/Support/Resources-Tools?rt=68)
    - [Videos](https://www.opto22.com/Support/Videos)
    - [KnowledgeBase](https://www.opto22.com/Support/Resources-Tools?rt=67)
    - [Training](https://www.opto22.com/support/training-options)
    - [Troubleshooting](https://www.opto22.com/support/troubleshooting)
    - [Image Library](https://www.opto22.com/support/resources-tools/image-library-svg-editors)
    - [Developers](https://developer.opto22.com/)
    - [Talk to an Engineer](https://www.opto22.com/support/talk-to-an-engineer)
    - [Contact Us](https://www.opto22.com/support/contact-us)
    - [Warranties](https://www.opto22.com/support/warranties)
    - [Agency Approvals/Compliance](https://www.opto22.com/support/agency-approvals)
    - [Privacy Policy](https://www.opto22.com/support/privacy)
- [About Us](https://www.opto22.com/about-us) 
    - [History](https://www.opto22.com/about-us/history)
    - [Location](https://www.opto22.com/about-us/directions)
    - [Corporate Contacts](https://www.opto22.com/about-us/corporate-contacts)
    - [Opto 22 Product Philosophy](https://www.opto22.com/about-us/opto-22-product-philosophy)
    - [Customer Quotes/Testimonials](https://www.opto22.com/about-us/customer-quotes-testimonials)
    - [Virtual Tour](https://www.opto22.com/about-us/virtual-tour)
    - [Pressroom](https://www.opto22.com/about-us/pressroom)
    - [Distributors](https://www.opto22.com/about-us/distributors)
    - [International](https://www.opto22.com/about-us/international)
    - [Sustainability](https://www.opto22.com/about-us/sustainability)
    - [Careers](https://www.opto22.com/about-us/careers)
- [Community](https://www.opto22.com/community) 
    - [OptoPartners](https://www.opto22.com/community/opto-partners)
    - [Technology Partners](https://www.opto22.com/community/technology-partners)
    - [Education Partnerships](https://info.opto22.com/partnering-in-education)
    - [Opto Blog](https://blog.opto22.com/)
    - [Opto Forums](http://forums.opto22.com/)
    - [Events](https://www.opto22.com/community/events)
- [Articles](https://www.opto22.com/articles)
- [Log In](https://www.opto22.com/logon)
- [Register](https://www.opto22.com/Special-Pages/Logon.aspx)
- [Your Cart](https://www.opto22.com/Checkout/Shopping-Cart)
- [Contact Us](https://www.opto22.com/support/contact-us)

© 2026 Opto22 [Terms and Conditions](https://preview.opto22.com/special-pages/terms-conditions) | [Privacy](https://preview.opto22.com/special-pages/privacy)

**(800) 321 OPTO (6786)** | 43044 Business Park Drive, Temecula CA 92590 USA

<http://www.linkedin.com/groups?gid=734807&trk=hb_side_g> <http://www.youtube.com/optovideo> <http://www.facebook.com/home.php#!/opto22> <http://twitter.com/opto22>