EMQX Configuration
Following are the components being used in EMQX stack.
- MQTT-SN Gateway
- Rule Engine
- Rule Engine Action
If you used Docker (the recommended way) of installing the FindMyCat cloud software, you can skip to this step here.
After EMQX is correctly setup the following pipline will be created:

Enable MQTT-SN Gateway
- Navigate to the EMQX Dashboard (port 18083). Under /plugins findemqx_snplugin and enable it.

- MQTT-SN listens over UDP protocol; make sure the port 1885is listening.

Choose MQTT topic string
Since FindMyCat uses MQTT-SN for device to server communication, and MQTT-SN does not yet support authentication, we must choose the topic name to which the device will publish to,
be a random string that isn't easily guess-able eg. [}xRDvRP:kN*:8.
I will refer to this as /your-chosen-topic-string for this page.
For additional security measures, you can change what port the MQTT-SN is configured at in etc/emqx/plugins/emqx_sn.conf
mqtt.sn.port = <new-port>Create Webhook Resource
- Create a webhook resource for Traccar port 5055. Use the following config:

Configure Rule Engine
Create Rule
Paste the following SQL query in the Rule Condition SQL
SELECT
  nth(1, split(payload.msg, ',')) as latitude,
  nth(2, split(payload.msg, ',')) as longitude,
  nth(3, split(payload.msg, ',')) as satellites,
  nth(4, split(payload.msg, ',')) as accuracy,
  nth(5, split(payload.msg, ',')) as batt_lvl,
  clientid
FROM
  "/your-chosen-topic-string"This tells the Rule engine to listen on mqtt topic /your-chosen-topic-string for any messages and extract the latitude, longitude, satellites, accuracy and battery_level
to be passed over to the webhook that makes the POST request.
Add Rule Action
Click on Create Action, and Select Data to Web Server option. For the Resource, select the webhook you created in the above step.
Paste this for the body of the POST request:
id=${clientid}&lat=${latitude}&lon=${longitude}&accuracy=${accuracy}&sat=${satellites}&batt=${batt_lvl}

Done 👍 MQTT-SN -> Traccar pipeline should now work.