We successfully migrated our system from a Java agent to Thin Edge, as documented here.
Previously, our sensors (child devices) sent data to Cumulocity via MQTT using topics like: s/us/atc-poc-rf-5
After migrating to Thin Edge, I updated the topics to: c8y/s/us/atc-poc-rf-5
This setup works, and I can see data arriving in Cumulocity. However, while reviewing the Thin Edge documentation here, I noticed that telemetry data should use topics in the format: te/<identifier>/m/<measurement-type>
So, while my current solution seems to work, I’m wondering if I’m using Thin Edge correctly. If not, what are the potential downsides of continuing with my topic structure?
The c8y/ prefixed topics are bridged directly to Cumulocity. So any payload you send via these topics is directly forwarded to Cumulocity without any further processing on your thin-edge device.
By not using the thin-edge JSON format and the corresponding topics, you are missing out on the multi cloud provider support of thin-edge. You can read more about this here.
thin-edge.io is flexible enough that it allows you to easily adapt any existing agents to use the local MQTT topics for each cloud (e.g. c8y/) without having to change much on your existing agent
However, long term, we’d encourage to start thinking about slowly transitioning the existing agent to make use of the te/ topics as it improves the overall extensibility of your setup. For instance, if you publish measurements to the te/ topics, then it gives other future components to easily subscribe locally to the data to also perform addition logic (e.g. conditional publishing, message logging etc.).
In short, by using the more te/ topics topics, it makes your overall solution more future proof, and easier to meet future requirements (the ones that you might not even know about yet!)