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
- Install the Eclipse Mosquitto MQTT broker service from mosquitto.org/download.
- Stop the Mosquitto Broker service in Windows Services (Start menu > type "Services" > hit "Enter").
- Replace
%ProgramFiles%\mosquitto\mosquitto.confwith the Essembi configuration file: mosquitto.conf. - 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
- 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.
- Reach out to the Essembi team for the Essembi Pulse download, then extract it.
- Open an administrator terminal or PowerShell window.
- Navigate to the
payloadfolder in the extracted zip. - 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
- In Essembi, go to Administration > API Keys.
- Click Create, give the key a name, and save.
- 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.
- On the server, navigate to
%ProgramFiles%\Essembi\Pulse. - Run
%ProgramFiles%\Essembi\Pulse\Essembi.Pulse.SettingsEditor.exe. - 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.