Under the umbrella of the profibus organization, omlox was launched. omlox is an open and interoperable standard that is revolutionizing real-time locating. The result is an ecosystem of vendors and solutions that finally make industrial locating widely available. With omlox, products from different vendors can seamlessly be integrated together in a core zone and different location technologies (e.g., UWB, Wi-Fi, GPS, 5G, RFID, and BLE) can be easily connected for the first time. What does it take on the road to omlox? We want to take a closer look at these central guiding questions in an eight-part series.

omlox Air interface compatible firmware

The omlox hardware alone does not make a real-time localization system. It is the firmware that brings the hardware to life. Firmware is software that runs on embedded systems (microcontrollers) and instructs the hardware to perform functional sequences. The omlox standard defines various states of the hardware and communication in different frequency bands (out-of-band and in-band). These must be implemented by the firmware. After switching on or activating the hardware, it goes through a typical cycle: the firmware instructs it to search for an existing omlox system via the omlox air interface in the IEEE 802.15.4 out-of-band (OoB) spectrum. The hardware attempts to connect to this by means of a sync and join. Thanks to standardization, all omlox Air interface compatible devices from different manufacturers can work together.

Time synchronization to microseconds

Real-time localization systems (RTLS) that are omlox air interface v2 compliant work with allocated radio slots for each device (so-called guaranteed timeslots, GTSW for short) and must therefore be precisely synchronized. This is an example of how synchronization works:

Enable receiver
Wait until reception of XOCMs
Deactivate receiver
Select best parent
Save "address" and "rxTimestamp" of best parent in "currentParent"
Start timer "next_xocm" until next parents XOCM is ecpected based on "rxTimestamp" + round duration
Start ranging in current round and assigend slot defined in "currentParent" information base

The advantage of this time-synchronized network is that it works deterministically. It is guaranteed that a UWB packet also has a free air interface and can be evaluated. If the installations are larger and a large number of mobile devices are in use, the long time window (LTW) ranging round specified in the omlox standard can also be used.

Ranging in the omlox Air Interface

The position of a mobile device is determined by measuring the transit time of UWB radio signals. The CorivaEngine determines the position of the mobile device based on the calculated transit time of the signals and the known position of the satellites.

Impulse response in the UWB spectrum is precise Impulse response in the UWB spectrum is precise

A ranging block in the omlox standard is defined for a duration of one second. This consists of 8 ranging rounds, which in turn are divided into 150 ranging slots. This results in a slot duration of ~0.833 milliseconds. Within this period, the UWB signal must reach the satellite from the mobile device and the transit time must be evaluated there. In order to be able to compare time stamps, a round trip is evaluated with each device.

// Calculate the corrected reply time using reply_time_rctu and cfo (carrier frequency offset)
Set reply_time_corrected to reply_time_rctu + (reply_time_rctu * cfo)

// Calculate the time of flight (tof) in RCTU (Ranging Counter Timer Unit) units by subtracting reply_time_corrected from round_trip_time_rctu
Set tof_rctu to round_trip_time_rctu - reply_time_corrected

The determined time of flight time stamps are sent from the firmware to the CorivaEngine.

Transferring the determined timestamps to the CorivaEngine

The CorivaSats record the time stamps from the mobile devices (e.g. CorivaTag) and pack the data determined into protobuf messages. These protobuf messages are then sent to the CorivaEngine via the MQTT protocol. There, the Locating Engine determines positions from the transit times.

The firmware of the CorivaSats supports LAN and WLAN, including common security protocols such as WPA2 and WPA Enterprise. This support ensures that the CorivaSats can be used seamlessly in corporate environments. The integration of LAN and WLAN into the firmware enables easy installation and connectivity, which in turn facilitates the deployment and use of CorivaSats in corporate environments.

Further tasks of the firmware

The firmware of the CorivaSats includes a number of other tasks that contribute significantly to the functionality and performance of the system:

  • Over the Air Firmware Update: This feature allows firmware updates to be transferred and installed wirelessly over the network to CorivaTags and third party tags. This ensures a simple and efficient method of updating devices without the need to physically connect them.

  • Identify Messages: The firmware is able to process identify messages that allow individual CorivaSats and CorivaTags to be identified and located on the network. This is critical for system management, maintenance and troubleshooting.

  • RPC from omlox Hub: The firmware can receive, process and forward omlox Remote Procedure Calls (RPCs) from the omlox Hub. This enables seamless integration with the omlox-compliant hub and other components of the system.

  • LED control: The firmware controls the LEDs on the CorivaSats to provide visual feedback on the operating status and other important information. This makes it easier to monitor and diagnose the system on site.

  • Status page: The firmware is able to deliver a status page via the HTTP protocol, which can be accessed via the web browser. This page provides an overview of the current status of the CorivaSats, including connection status and other relevant information. This gives users easy access to important

Current Embedded jobs at ZIPGOS

Road to omlox: All contents in the overview