This is the documentation for the latest (main) development branch of the Infuse-IoT platform. If you are looking for the documentation of previous releases, use the drop-down menu on the left and select the desired version.

TDF Data Logger

A wrapper over the Data Logger API for buffering Tagged Data Format (TDF) readings in RAM until a complete block is constructed. Once constructured, the block is automatically written to the underlying data logger.

TDF data loggers are instantiated as a embeint,tdf-data-logger node as a child node of a embeint,data-logger node. For example:

data_logger_flash: data_logger_flash {
        compatible = "embeint,data-logger-flash-map", "embeint,data-logger";
        partition = <&data_logger_partition>;

        tdf_logger_flash: tdf_logger_flash {
                compatible = "embeint,tdf-data-logger";
        };
};

Remote TDF Data Logger

The TDF data logger abstraction also supports logging TDFs that originated on a remote device. To mark a embeint,tdf-data-logger as logging remote TDFs, add the tdf-remote property onto the logger and set the remote ID with tdf_data_logger_remote_id_set(). The remote ID can be updated arbitrarily at runtime, but buffered data will be flushed to the underlying logger each time it changes.

Note

Multiple TDF data loggers can co-exist on top of a single embeint,data-logger instance. For example:

data_logger_exfat: data_logger_exfat {
   compatible = "embeint,data-logger-exfat", "embeint,data-logger";
   disk = < &mmc >;
   tdf_logger_exfat: tdf_logger_removable: tdf_logger_exfat {
         compatible = "embeint,tdf-data-logger";
   };
   tdf_logger_remote: tdf_logger_remote {
         compatible = "embeint,tdf-data-logger";
         tdf-remote;
   };
};

API Reference

TDF data logger APIs