Can Tulip store all the raw device data sent by HiveMQ? Or is it more reasonable to store it in an external system?
On one hand, we need to use the device’s activity fields and machine status to implement some App functions; on the other hand, we also want to retain all the raw device data. I’m actually not sure if we should do this within Tulip. ![]()
Hi there,
Thanks for the question. Tulip can process MQTT data from HiveMQ through Machine Monitoring, but Tulip is not designed to store every raw message sent by the broker.
Machine Monitoring keeps the latest values for each mapped attribute and tracks activity fields and state changes. It does not keep a full history of every MQTT payload. This behavior is documented in the Machine Monitoring overview.
Machine Monitoring
https://support.tulip.co/docs/machine-monitoring
If you need long term storage for every raw MQTT message, it is more reasonable to send the full stream to an external system such as a time series database or a data lake. Many teams split the flow so Tulip receives only the specific attributes needed for apps and analytics, and a separate system keeps the complete message history.
You can still use Tulip for real time logic by setting up an MQTT data source and mapping topics to machine attributes.
Build your first MQTT connector
https://support.tulip.co/docs/build-your-first-mqtt-connector
Let me know if you want help designing a setup that uses Tulip for real time machine logic and an external system for raw data storage.