Lucid is an OT (Operational Technology) protocol for IoT/IIoT (Industrial Internet of Things) devices and software applications which provides utility-focused application functionality and behaviour. Within Lucid the IoT/IIoT devices are known as “Field Devices” and top end software such as SCADA, historians or analytics are known as “Supervisory Applications”.
Lucid is built on standard, open and easy-to-use technologies. It provides a specification for communicating using MQTT with JSON messages.
Lucid can be implemented on Field Devices or on server systems acting on behalf of many Field Devices, as for example in a proprietary data gathering or control system. The Field Devices are normally measuring or controlling physical processes.
The field devices connect to an MQTT broker to send their measurement information and to receive messages. Other software can also connect to the MQTT broker to receive messages from and send messages to the Field Device. This is shown simplistically in the following diagram.
Supervisory Applications could be systems like Geo SCADA, ScopeX or Ignition, to name but a few. The Supervisory Applications are usually set up to receive the data returned from the Field Device, and to make configuration changes to the Field Device, such as, changing an alarm setpoint.
The Lucid standard provides the following key features:
Lucid was created because IIoT devices were starting to become available, but there was no standard way to interoperate with them to perform the activities required in a modern utility company. MQTT provided a standardised method for sending the data, but on its own it is not enough to provide interoperability because it does not define the contents of the data; Lucid does this.
By basing Lucid on modern, simple, widely adopted standards, such as JSON and MQTT, its complexity is low and therefore a vendor should be able to implement it on their products at a reasonable cost.
Lucid provides a standard and powerful protocol which users can request of vendors to assist them in controlling the proliferation of interfaces from the many IoT and IIoT devices they may wish to use.
The name Lucid was originally coined from the abbreviation of Lightweight Universal Control and Instrument Data protocol, although now we just refer to it as Lucid. Happily, Lucid also means "Clearly expressed, easily understood" which is a core aim of the protocol development in contrast to many traditional Telemetry protocols.
The WITS group was setup in the early 2000s for UK water companies to work on and share standards in the telemetry / OT space. It moved away from a proprietary protocol model to a standard model which all companies could use. The first project they delivered was the WITS-DNP3 standard, which was aimed at achieving interoperability between different vendors’ equipment, specifically RTUs and master stations.
Lucid takes some of the learning from that project and updates it for the IIoT world. Lucid and WITS-DNP3 share many similar concepts and terminology. Some aspects which are independent of the communications method, such as the alarm model that a field device runs, are common. WITS-DNP3 generally suffered in achieving widespread adoption as implementation was complex, resulting in high costs for vendors to include it in their products; Lucid is designed to make adoption much easier.
Note however that Lucid does not replace WITS-DNP3 although it can do many of the same things. There are still some things that WITS-DNP3 can do better.
Given Lucid’s heritage in the UK Water Sector, one might expect it to be directed solely at that industry. However, this is not the case. The original requirements of the Water sector turn out to be consistent with what users need across the IIoT and OT domain. We hope that Lucid will receive wide adoption across the whole of IIoT and OT.
As mentioned above, Lucid is built using MQTT & JSON technologies. Various aspects of the standard such as the alarm model are taken directly from the WITS-DNP3 and are therefore familiar to WITS-DNP3 users.
Lucid was pioneered and developed by a small team from within the WITS technical group between around 2016 and 2023. Its design was driven from the experiences of using WITS-DNP3 and the increasing number of smaller monitoring devices that users wished to deploy. The small team was made up of Gavin Rawson (Ovarro), Mark Davison (Terzo Digital), Steve Beadle (Schneider Electric) and Stuart Combellack (Technolog). Driving influences for the design came out of discussions within the WITS community.
The technical committee have many more ideas of how Lucid could be developed. It you would like to become involved we would suggest joining WITS. Find out more at the WITS website.
Lucid is a free, open source protocol that bridges a gap between Operational Technology (OT) and IoT technology.