enPact Device MQTT API 1.0.0

Overview

This API provides real-time telemetry data from enPact N4-2 IoT devices connected to the Enpact cloud platform. The devices are temperature monitoring and relay control units that publish their state periodically via MQTT.

Connection Details

  • Broker: partners.iot.enpact.cloud
  • Port: 8883 (MQTT over TLS)
  • Authentication: Mutual TLS (mTLS)

Certificate Requirements

To connect, you need the following files:

  • CA Certificate: Root CA certificate (AmazonRootCA1.pem)
  • Client Certificate: Your device certificate (.crt file)
  • Private Key: Your private key (.key file)

Example Connection (mosquitto)

mosquitto_sub -h partners.iot.enpact.cloud -p 8883 \
  --cafile AmazonRootCA1.pem \
  --cert your-certificate.pem.crt \
  --key your-private.pem.key \
  -t 'es-lite/#' -v

Device Identification

Devices are identified by their MAC address, with IDs following the pattern: esl-n4-2-{macAddress} (e.g., esl-n4-2-fc012cdac244)

  • esl - enPact product identifier
  • n4-2 - Hardware/firmware version
  • {macAddress} - 12-character hexadecimal MAC address

Sensor & Field Reference

Field Description
tc MCU (microcontroller) temperature
t1 Coolant In temperature
t2 Coolant Out temperature
t3 Space temperature
t4 Aux/Product temperature
ta Average temperature
p Energy Saver mode active
r1 Compressor Energy Saver mode (true = saving energy)
r2 Fan Allowed To Run (true = allowed, false = disabled)

Notes

  • Temperature values are in degrees Celsius
  • Negative temperatures (around -50 to -60) typically indicate a disconnected or faulty sensor
  • To connect, customers must request a certificate bundle from enPact Support

Servers

  • mqtt://partners.iot.enpact.cloud:8883/mqtt 3.1.1production

    enPact IoT Cloud MQTT Broker

    Security:
    • X509:

      Mutual TLS (mTLS) authentication.

      Required files (provided by enPact Support):

      • Root CA certificate
      • Client certificate
      • Private key
    • #production

Operations

  • RECEIVE es-lite/{deviceId}/state

    Receives real-time state updates from enPact devices. Each device publishes its current sensor readings and relay states periodically.

    Subscribe to receive state updates from a specific device

    Subscribe to this operation to receive periodic state updates from a specific enPact device. Messages are published approximately every few seconds when the device is online.

    Operation IDreceiveDeviceState

    Available only on servers:

    object
    deviceId
    required
    string

    Unique device identifier in the format esl-n4-2-{macAddress}. Example: esl-n4-2-fc012cdac244

      Examples values:
    • "esl-n4-2-fc012cdac244"
    • "esl-n4-2-30eda0216d8c"
    • "esl-n4-2-8cbfea84bb84"

    Message format:

    Device State Message

    Current state of an enPact device including temperatures and relay status

    Message IDstateMessage
    object [Device State]

    Telemetry data from an enPact temperature monitoring device

    Examples

  • RECEIVE es-lite/#

    Subscribe to this topic pattern to receive state updates from all enPact devices. Useful for monitoring the entire device fleet.

    Subscribe to receive state updates from all devices

    Subscribe using the wildcard topic es-lite/# to monitor all devices simultaneously. Useful for dashboards and fleet monitoring applications.

    Operation IDreceiveAllDeviceStates

    Available only on servers:

    Message format:

    Device State Message

    Current state of an enPact device including temperatures and relay status

    Message IDstateMessage
    object [Device State]

    Telemetry data from an enPact temperature monitoring device

    Examples

Messages

  • #1Device State Message

    Current state of an enPact device including temperatures and relay status

    Message IDDeviceStateMessage
    object [Device State]

    Telemetry data from an enPact temperature monitoring device

Schemas

  • object [Device State]

    Telemetry data from an enPact temperature monitoring device