Essembi Docs

Edge Devices

Sensors and scales on the manufacturing floor send production data through a local server into Essembi.

Edge Devices

The pulse app will read data from the local PLC for devices such as sensors, or directly from devices connected to the pulse app such as scales. Edge devices that are supported by Essembi are outlined below:

  • Sensors: Photoelectric sensors that can be deployed along the production line to read real-time units produced and automatically log downtime incidents for hardware components along the line.
  • Scales: Scales that can be deployed in bulk production areas to automatically finish containers of units by weight and detect when no finishes are occurring to trigger downtime incidents to be logged.

Required Services

Two services must be installed on the local server:

  • MQTT Broker: PLC devices communicate with the server using the industry-standard MQTT protocol. This lightweight broker gathers raw sensor data from the shop floor so it can be aggregated in one place.
  • Essembi Pulse: This service maps raw sensor data to the line components in Essembi to drive line finishes, throughput, and incident tracking in real time.

Local Server

These services run on a local server so data can still be collected when no internet connectivity exists. Data is stored locally until a network connection is available to push it to the Essembi cloud app.

Hardware Specifications

Hardware for the server running the Essembi Pulse app is specified by the Essembi team during the rollout project. Requirements vary based on production volume and desired sync times into Essembi.

IT Configuration

Static IP Address

The local server needs to be assigned a static IP address or DHCP reservation. The PLC software requires this so devices can find the server consistently and communicate real-time data to it.

Firewall

Open TCP port 1883 for inbound traffic. MQTT connectivity is critical. If pulse data is not reaching the Essembi server, sensors and scales may appear idle and can incorrectly open downtime incidents even while the line is running. See the Scales troubleshooting section for common USB and network causes.

Configure Mosquitto Broker Service

Installation

  1. Install the Eclipse Mosquitto MQTT broker service from mosquitto.org/download.
  2. Stop the Mosquitto Broker service in Windows Services (Start menu > type "Services" > hit "Enter").
  3. Replace %ProgramFiles%\mosquitto\mosquitto.conf with the Essembi configuration file: mosquitto.conf.
  4. Start the Mosquitto Broker service.

Testing the Broker

Use these steps to confirm the broker, network, and firewall are configured correctly. You will need the Mosquitto client tools installed on both the server and your local computer (download here).

Step 1: Start a subscriber on the server. Open a command prompt in the mosquitto folder and run:

mosquitto_sub -h localhost -t "plc/test"

Leave this window open. It will display any messages it receives.

Step 2: Publish a message from another computer. Open a terminal on your local machine, run from the mosquitto folder, and replace SERVER_IP with your server's IP address:

mosquitto_pub -h SERVER_IP -p 1883 -t "plc/test" -m "Hello from PLC!"

Step 3: Confirm receipt. The subscriber terminal on the server should display:

Hello from PLC!

If the message appears, MQTT is correctly configured. If the connection is refused or times out, confirm port 1883 is open in the server firewall and check that the Mosquitto Broker service is running in Windows Services.

Configure Essembi Pulse Service

Installation

  1. Ensure the latest .NET 8.0 Desktop Runtime is installed. The current x64 installer is available here: windowsdesktop-runtime-8.0.31-win-x64.exe.
  2. Reach out to the Essembi team for the Essembi Pulse download, then extract it.
  3. Open an administrator terminal or PowerShell window.
  4. Navigate to the payload folder in the extracted zip.
  5. Run: ./install-pulse.ps1

If the install script fails, two security errors are common:

  • The current computer is not allowed to run third-party PowerShell scripts. Fix this by running:
    Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
  • The downloaded files are blocked because they came from a third-party download. Unblock all files in the payload folder with:
    Get-ChildItem -Recurse | Unblock-File

After installation, verify the Essembi Pulse Listener Service is running in Windows Services.

Connect Pulse to Essembi

  1. In Essembi, go to Administration > API Keys.
  2. Click Create, give the key a name, and save.
  3. Copy and note the API key without closing the window. If you close the window, you will not be able to see the API key's value again.
  4. On the server, navigate to %ProgramFiles%\Essembi\Pulse.
  5. Run %ProgramFiles%\Essembi\Pulse\Essembi.Pulse.SettingsEditor.exe.
  6. Paste the API key into the API Key box and click Validate API Key.

Production Automation Settings

App-level Production Automation options control how pulse-logged count finishes are grouped and timestamped in Essembi:

  • Round Finishes To — The time interval used when grouping count-sensor finishes: 1 Minute, 5 Minutes, 15 Minutes, 30 Minutes, or 1 Hour.
  • Finish Rounding Type — How each finish timestamp is aligned to that interval:
    • Round to Start — Floor to the start of the interval (default)
    • Round to End — Ceiling to the end of the interval
    • Round to Closest — Nearest interval boundary

Example: with Round to Start and 15 Minutes, finishes from 8:00:00–8:14:59 are grouped under the 8:00 timestamp.

Count sensors have finishes aggregated by the rounded timestamp. Weight (scale) finishes are posted individually by timestamp and are not interval-grouped the same way.

Line Configurations and Sensor Behavior

Which sensors are active for finishes, incident tracking, and count multipliers can vary by product or job:

  • Line Configuration on the Formula — Default packaging-line sensor rules for that part
  • Line Configuration on the Work Order — Job-level override when sensor behavior should differ from the formula default
  • Sensor Configuration Overrides — Per-sensor overrides tied to a Line Configuration (for finishes, incident tracking, thresholds, and count multiplier)

Details are covered on the Sensors help page.

Throughput Summary Report

Use the Throughput Summary report to review pulse readouts from individual sensors over time. It is especially useful for validating sensor sort order, count multipliers, and where units are gained or lost between line components.

Rejoining the server...

Rejoin failed... trying again in seconds.

Failed to rejoin.
Please retry or reload the page.

The session has been paused by the server.

Failed to resume the session.
Please retry or reload the page.