Connect meters and sensors: live measurements, alerts that open work orders, and meter-based maintenance
What FreeMaint Connect does, which devices it supports, what the Business plan includes and how measurements turn into maintenance.
FreeMaint Connect brings live measurements from your meters and sensors into FreeMaint — electricity, temperature, humidity, current, vibration or any value your own system can send — and turns them into maintenance: alerts, work orders, run hours and energy reports. It has its own section in the menu: Connected devices.
These models are recognised automatically and their data is decoded by FreeMaint. They carry the Compatible badge: validated on the manufacturer's documentation. The Lab-tested badge is given once a model has been tested on the physical device.
Connecting devices and editing alert rules requires the Business plan, which includes 100 active channels. The Enterprise plan includes 5,000. An inactive channel does not count toward the limit. Data you already collected stays visible on every plan.
FreeMaint does not speak Modbus, MQTT, BACnet or OPC UA directly. A gateway that reads those protocols (Node-RED, Home Assistant, a Teltonika router) can forward the values through the HTTP API.
Pair a Shelly Pro 3EM, EM Gen3, Pro EM-50, Plug S Gen3 or 1PM Gen3 with FreeMaint by pasting one script — no gateway needed.
Shelly Gen2 and Gen3 devices (Pro 3EM, EM Gen3, Pro EM-50, Plug S Gen3, 1PM Gen3) send their measurements straight to FreeMaint over Wi-Fi or Ethernet. FreeMaint gives you a short script that already contains your access key: you paste it into the device once.
Within a minute the device appears in Connected devices → Devices and its channels fill up. The script sends the measurements every 60 seconds: power, energy counters, voltage and current per phase, depending on the model.
Issue: The device never appears
Solution: Check on the Shelly's Scripts page that the script is running, and that the Shelly reaches the internet. The integration card shows No data received yet until the first message.
Issue: The device appeared once, then stopped
Solution: Run on startup is probably off: the script stopped after a restart. Turn it on and start the script again.
Issue: New devices are not added
Solution: Automatic adding may be off on the integration. Turn it back on, or add the device yourself.
Issue: The device never appears
Solution: Check on the Shelly's Scripts page that the script is running, and that the Shelly reaches the internet. The integration card shows No data received yet until the first message.
Issue: The device appeared once, then stopped
Solution: Run on startup is probably off: the script stopped after a restart. Turn it on and start the script again.
Issue: New devices are not added
Solution: Automatic adding may be off on the integration. Turn it back on, or add the device yourself.
Warning:
The access key is shown only once. If you lose it, generate a new key from the integration (New access key) and paste the new script into the device.
Send LoRaWAN uplinks to FreeMaint from The Things Stack, ChirpStack or a Milesight gateway, and let FreeMaint decode the certified sensors.
LoRaWAN sensors run on batteries for years and reach far through walls. Your network server — The Things Stack, ChirpStack or the server built into a Milesight gateway — forwards each uplink to FreeMaint over HTTP. For the Milesight CT101 and EM300-TH, FreeMaint decodes the payload itself.
For each LoRaWAN device FreeMaint keeps the battery level, the signal (RSSI and SNR) and the last message. Set the expected reporting interval on the device to be warned when it goes silent. Late and offline are tracked once you confirm the device (Confirm button on its page).
Other LoRaWAN sensors also work when your network server decodes them: FreeMaint stores the decoded values it receives, one channel per numeric field.
Send JSON from Node-RED, Home Assistant, a PLC gateway or your own script to FreeMaint Connect: format, headers, units and limits.
Any system that can send an HTTP request with a JSON body can feed FreeMaint Connect: Node-RED, Home Assistant, a gateway that reads Modbus, a PLC or a script of your own. Create a connection of type HTTP API (Node-RED, script…) to get its URL and access key.
The body lists devices under items. Each device has an identifier (device), an optional display name, an optional time (ts, ISO 8601) and its points. Each point has a key, a value and, ideally, a unit and a quantity. The creation screen shows a complete example you can copy.
Typical setups: a Node-RED flow that reads a Modbus energy meter every minute and posts its values; a Home Assistant automation that forwards a sensor; a Teltonika router whose Data to Server feature posts readings.
Warning:
Keep the access key secret: anyone who has it can send data to this connection. If it may have leaked, generate a new key and choose Revoke it now.
Watch a channel with a threshold, rate-of-change, vibration-zone or no-data rule; be notified and open a work order automatically.
An alert rule watches one channel. When its condition is met, an alert opens: the right people are notified and, if you chose it, a work order is created on the asset. When the value comes back to normal, the alert closes by itself.
Connected devices → Alerts lists the alerts in progress and the resolved ones. Acknowledge an alert to show it is being handled. Each alert shows its trigger value, its peak and a chart of the channel around the alert. Alerts also appear on the asset and in the mobile app.
Alerts are sent in the app and by push notification to the roles chosen for device alerts in the notification settings (Connected devices category), among the people who can see alerts. Critical alerts are also sent by email, once per alert.
Changing a rule's channel, type, limits, severity or hold time closes its open alert: the next alert starts from the new settings.
Calibrate channels, link them to an asset meter for meter-based preventive maintenance or to an energy meter, and count run hours.
Each measurement of a device is a channel. A channel keeps its history and can feed the rest of FreeMaint: an asset meter that triggers preventive maintenance, an energy meter that computes cost and CO₂, or a calculated channel that counts run hours.
Attach a device to an asset: its channels follow the asset unless a channel was set to another one. The asset's Connected devices tab shows the live measurements and the alerts in progress, on the web and in the mobile app.
Value stored = value received × multiplier + offset. Use it for a current transformer ratio or a small sensor correction. It applies to new values only. An inactive channel no longer stores values and does not count toward your limit.
Link the channel to an energy meter: one reading every 15 minutes goes to it, with cost (from your tariff) and CO₂ (from your emission factor). The energy dashboard, the bill estimate and the energy report then use these readings like any other.
Open a channel to see its curve over 6 hours to one year. Recent data is shown point by point; longer periods are shown as 15-minute, hourly or daily averages, so the chart stays fast.
A motor rarely sends its run hours. Open a power or current channel and click Calculate run hours: FreeMaint counts the time the value stays above the level you choose. You can also count start cycles from an on/off channel. Link the calculated channel to the asset's run-hours meter, and a preventive maintenance such as an oil change every 2,000 hours triggers by itself.
Readings written by a device are marked as coming from a connected device in the meter's history and in the compliance report, so you always know which values were entered by hand.
FreeMaint CMMS
© 2026 FreeMaint. All rights reserved.