Factora Academy

Public catalogs — IoT.Factora, FactoraERP, and more

Academy · IoT.Factora · Technical · 24 min

Milesight MQTT recipe

UG56/UG65/UG67 embedded LNS to Factora MQTT. Sensors map to registry types.

Milesight → IoT.Factora

Milesight is the widest LoRaWAN sensor fit for Factora types. The gateway is not Factora. Factora never speaks LoRaWAN on port 1883.

Typical SKUs

MilesightFactora typeNotes
UG56Gateway objectIndoor industrial, ~8 ch, Ethernet/Wi-Fi/4G, embedded LNS, MQTT/BACnet/Modbus at gateway
UG65GatewaySemi-industrial
UG67GatewayOutdoor
SG50GatewaySolar remote
EM300-THtemperature, humidityTwo registry devices or one combined — prefer two devices if you need two alert rules
AM319temperature, humidity, co2, pm25Map each channel
EM500-UDLtanklevel or levelmConvert to % if the plant standard is percent
Magnetic contactdoorBinary 0/1
CT / currentcurrent or energyDo not store current as kWh
UC300analog/I/OScaled engineering units before MQTT

UG56 can speak BACnet/Modbus locally. Still publish a numeric value to Factora MQTT so OEE/energy stay on one pipeline.

Recipe (embedded LNS)

  1. Set regional plan (example EU868 / AS923 — use the plant country).
  2. Join sensors (OTAA). Confirm uplinks in Milesight DeviceHub or gateway packet list.
  3. Decode with Milesight codec (built-in library on UG56).
  4. MQTT forward:

- Host iot.factoraerp.com - Port 1883 - Per device: username = Factora device code, password = ingest token - Topic factora/{slug}/devices/{code}/telemetry - JSON {"value": <number>, "messageId": "<fCnt or unique>"}

  1. If the codec emits an object of many keys, split to one Factora device per measurement (or a small adapter). Factora ingest requires a numeric value.

Do not require Milesight cloud for this path.

Check understanding

Progress is stored in this browser only. Passing is 70%.

1. Factora ingest accepts a full Milesight JSON object as value.
2. UG67 is typically