Fledge Plugins¶
The following set of plugins are available for Fledge. These plugins extend the functionality by adding new sources of data, new destinations, processing filters that can enhance or modify the data, rules for notification delivery and notification delivery mechanisms.
South Plugins¶
South plugins add new ways to get data into Fledge, a number of south plugins are available ready built or users may add new south plugins of their own by writing them in Python or C/C++.
Name |
Description |
|---|---|
Fledge south plugin for an AM2315 temperature and humidity sensor |
|
b100-modbus-python |
A south plugin to read data from a Dynamic Ratings B100 device over Modbus |
A Fledge benchmark plugin to measure the ingestion rates on particular hardware |
|
A Fledge south plugin for the Texas Instruments SensorTag CC2650 |
|
A south plugin for Fledge that pulls data from a COAP sensor |
|
A Fledge south plugin in C++ for reading CSV files |
|
csv-async |
A Fledge asynchronous plugin for reading CSV data |
Plays a CSV at some configurable speed and each column of the file will become a datapoint of an asset using pandas library. |
|
A Fledge south plugin in C++ that interfaces to a DHT-11 temperature and humidity sensor |
|
A Fledge south plugin that interfaces a DHT-11 temperature sensor |
|
A south plugin for Fledge that implements the DNP3 protocol |
|
A Fledge south plugin that uses a user define expression to generate data |
|
A Fledge hybrid south plugin that uses fledge-south-modbus-c to get temperature data from a Flir Thermal camera |
|
game |
The south plugin used for the Fledge lab session game involving remote controlled cars |
A Python south plugin for Fledge used to connect one Fledge instance to another |
|
A Fledge south plugin for the INA219 voltage and current sensor |
|
J1708 |
A plugin that uses the SAE J1708 protocol to load data from the ECU of heavy duty vehicles. |
J1939 |
A CANBUS J1939 plugin to collect data into Fledge. |
A simulation plugin used as a demonstration to show how data can be collected within Fledge. This plugin simulates various properties of a lathe. |
|
A Fledge south plugin that implements modbus-tcp and modbus-rtu |
|
modbustcp |
A Fledge south plugin that implements modbus-tcp in Python |
Fledge South MQTT Subscriber Plugin |
|
A Fledge south plugin that implements the Sparkplug API over MQTT |
|
A Fledge south service that pulls data from an OPC-UA server |
|
openweathermap |
A Fledge south plugin to pull weather data from OpenWeatherMap |
Fledge south service plugin that detects person in the live video stream |
|
A Fledge south plugin to replay data stored in a CSV file |
|
A Fledge south plugin for the PT100 temperature sensor |
|
A south plugin for Fledge that generates random numbers |
|
A Fledge south plugin that returns data that with randomly generated steps |
|
roxtec |
A Fledge south plugin for the Roxtec cable gland project |
A Fledge south service for the Raspberry Pi Enviro pHAT sensors |
|
An OPC UA south plugin based on the Systerel S2OPC OPC UA Toolkit. This plugin offers similar functionality to the fledge-south-opcua plugin but also offers data encryption and authentication. |
|
s7-python |
Read Siemens S7 PLCs data over TCP |
A Fledge south plugin for the Raspberry Pi Sensehat sensors |
|
sensorphone |
A Fledge south plugin the task to the iPhone SensorPhone app |
A Fledge south plugin that produces a simulated sine wave |
|
A Fledge south plugin that gathers information about the system it is running on. |
|
A Fledge south plugin the Advantech USB-4704 data acquisition module |
|
wind-turbine |
A Fledge south plugin for a number of sensor connected to a wind turbine demo |
North Plugins¶
North plugins add new destinations to which data may be sent by Fledge. A number of north plugins are available ready built or users may add new north plugins of their own by writing them in Python or C/C++.
Name |
Description |
|---|---|
A north plugin that sends data to Microsoft Azure IoT Hub device |
|
Fledge North Python based gcp plugin for sending an image data to Google Cloud for training machine learning models. |
|
A north plugin that sends data to the HarperDB SQL/NoSQL data management platform |
|
A Python implementation of a north plugin to send data between Fledge instances using HTTP |
|
A Fledge north plugin that sends data between Fledge instances using HTTP/HTTPS. The plugin support use of an optional Python script to format the data into the required format for there destination. |
|
A Fledge plugin for sending data north to Apache Kafka |
|
kafka-python |
A Python implementation of a north plugin that can send data to Apache Kafka |
Send data to OSIsoft PI Server, Edge Data Store or OSIsoft Cloud Services |
|
A north plugin for Fledge that makes it act as an OPC-UA server for the data it reads from sensors |
|
A north plugin for Fledge that sends data with OPC UA Client to an OPC UA Server |
|
s7-python |
fledge-north-s7-python repository |
A Fledge north plugin to send data to Matlab’s ThingSpeak cloud |
Filter Plugins¶
Filter plugins add new ways in which data may be modified, enhanced or cleaned as part of the ingress via a south service or egress to a destination system. A number of north plugins are available ready built or users may add new north plugins of their own by writing them in Python or C/C++.
It is also possible, using particular filters, to supply expressions or script snippets that can operate on the data as well. This provides a simple way to process the data in Fledge as it is read from devices or written to destination systems.
Name |
Description |
|---|---|
A Fledge processing filter that is used to block or allow certain assets to pass onwards in the data stream |
|
A Fledge processing filter plugin that only forwards data that changes by more than a configurable amount |
|
A Fledge processing filter plugin that removes duplicates from the stream of data and only forwards new values that differ from previous values by more than a given tolerance |
|
A Fledge processing filter plugin that applies a user define formula to the data as it passes through the filter |
|
A Fledge processing filter plugin that calculates a Fast Fourier Transform across sensor data |
|
A Fledge processing filter used for processing temperature data from a Flir thermal camera |
|
A Fledge filter that converts the readings data to a logarithmic scale. This is the example filter used in the plugin developers guide. |
|
A Fledge processing filter plugin that adds metadata to the readings in the data stream |
|
A filter plugin that allows data to be added to assets that will provide extra information to the OMF north plugin. |
|
A Fledge processing filter that allows Python 3 code to be run on each sensor value. |
|
A Fledge processing filter plugin that sends reduced rate data until an expression triggers sending full rate data |
|
A Fledge processing filter that is used to modify the name of an asset, datapoint or both. |
|
Filter to replace characters in the names of assets and data points in readings object. |
|
A Fledge processing filter plugin that calculates RMS value for sensor data |
|
A Fledge processing filter plugin that applies an offset and scale factor to the data |
|
A Fledge processing filter plugin that applies a set of sale factors to the data |
|
A Fledge processing filter that only forwards data when a threshold is crossed |
Notification Rule Plugins¶
Notification rule plugins provide the logic that is used by the notification service to determine if a condition has been met that should trigger or clear that condition and hence send a notification. A number of notification plugins are available as standard, however as with any plugin the user is able to write new plugins in Python or C/C++ to extend the set of notification rules.
Name |
Description |
|---|---|
A Fledge notification rule plugin that evaluates an expression based sensor data notification rule plugin that triggers when sensors values depart from the moving average by more than a configured limit. |
|
Triggers every time when it receives data that matches an asset code or audit code those given in the configuration |
|
A notification rule plugin that triggers if the value of a datapoint is more than a prescribed percentage different from the currently observed delta for that data point |
|
outofbound |
A Fledge notification rule plugin that triggers when sensors values exceed limits set in the configuration of the plugin. |
A Fledge notification rule plugin that evaluates an expression based sensor data |
|
Detect the value of a data point within an asset going above or below a set threshold |
|
Notification rule designed to be triggered if data for a given asset is not ingested for a period of time. |
Notification Delivery Plugins¶
Notification delivery plugins provide the mechanisms to deliver the notification messages to the systems that will receive them. A number of notification delivery plugins are available as standard, however as with any plugin the user is able to write new plugins in Python or C/C++ to extend the set of notification deliveries.
Name |
Description |
|---|---|
A Fledge notification delivery plugin that sends notifications to the Amazon Alexa platform |
|
A Fledge notification delivery plugin that creates an asset in Fledge when a notification occurs |
|
blynk |
A Fledge notification delivery plugin that sends notifications to the Blynk service |
Allows a notification to call a control operations via the dispatcher service. |
|
A Fledge notification delivery plugin that creates an event asset in readings. |
|
A Fledge notification delivery plugin that sends notifications via email |
|
A Fledge notification delivery plugin that sends alerts on the Google hangout platform |
|
A Fledge notification delivery plugin that triggers an action of IFTTT |
|
A notification delivery plugin that sends messages via MQTT when a notification is triggered or cleared. This is the example used in the notification delivery plugin writers guide. |
|
A notification delivery plugin that will cause an operation to be trigger via the set point control operation API of a south service. |
|
A Fledge notification delivery plugin that runs an arbitrary Python 3 script |
|
A fledge notification plugin that invokes a set point operation on a south service. |
|
A Fledge notification delivery plugin that sends notifications via the slack instant messaging platform |
|
A Fledge notification delivery plugin that sends notifications via the telegram service |
Plugins Organized by Category¶
South¶
The following tables categorize the south plugins.
Computational Plugins¶
Plugins that apply a mathematical expression or translation to the data as it flows through the data pipeline.
Name |
Description |
|---|---|
A Fledge south plugin that uses a user define expression to generate data |
Plugin Utilising The MQTT Protocol¶
Plugins that use MQTT as the transport protocol.
Name |
Description |
|---|---|
Fledge South MQTT Subscriber Plugin |
|
A Fledge south plugin that implements the Sparkplug API over MQTT |
Data Simulation Plugins¶
A set of plugins that create simulated data that may be used in testing of data pipelines, new filters or other plugins. These plugins are also useful as training aids when learning the features of Fledge.
Name |
Description |
|---|---|
A Fledge benchmark plugin to measure the ingestion rates on particular hardware |
|
A simulation plugin used as a demonstration to show how data can be collected within Fledge. This plugin simulates various properties of a lathe. |
|
A south plugin for Fledge that generates random numbers |
|
A Fledge south plugin that produces a simulated sine wave |
Plugins That Interact With PLCs¶
A set of plugins that interaction with programmable logic controllers (PLCs).
Name |
Description |
|---|---|
A south plugin for Fledge that implements the DNP3 protocol |
|
A Fledge south plugin that implements modbus-tcp and modbus-rtu |
|
A Fledge south service that pulls data from an OPC-UA server |
|
An OPC UA south plugin based on the Systerel S2OPC OPC UA Toolkit. This plugin offers similar functionality to the fledge-south-opcua plugin but also offers data encryption and authentication. |
North¶
The following tables categorize the north plugins.
Plugins That Interact With Clouds¶
A set of plugins that interaction with the public cloud providers.
Name |
Description |
|---|---|
A north plugin that sends data to Microsoft Azure IoT Hub device |
|
Fledge North Python based gcp plugin for sending an image data to Google Cloud for training machine learning models. |
Filters¶
The following tables categorize the filter plugins.
Plugins That Improve The Data Quality¶
A set of plugins whose purpose is to help improve the data quality in a pipeline by removing or highlighting data of poor quality or in some way anomalous.
Name |
Description |
|---|---|
A Fledge processing filter that is used to block or allow certain assets to pass onwards in the data stream |
|
A Fledge processing filter plugin that only forwards data that changes by more than a configurable amount |
|
A Fledge processing filter plugin that removes duplicates from the stream of data and only forwards new values that differ from previous values by more than a given tolerance |
|
A Fledge processing filter plugin that sends reduced rate data until an expression triggers sending full rate data |
Plugins That Compress Data¶
The following set of plugins have functionality that can be used to compress the data stream as it flow through the pipeline.
Name |
Description |
|---|---|
A Fledge processing filter that is used to block or allow certain assets to pass onwards in the data stream |
|
A Fledge processing filter plugin that only forwards data that changes by more than a configurable amount |
|
A Fledge processing filter plugin that removes duplicates from the stream of data and only forwards new values that differ from previous values by more than a given tolerance |
|
A Fledge processing filter plugin that sends reduced rate data until an expression triggers sending full rate data |
OMF Plugins¶
Name |
Description |
|---|---|
A filter plugin that allows data to be added to assets that will provide extra information to the OMF north plugin. |
Vibration Process Plugins¶
A set of plugins designed to process Vibration data.
Name |
Description |
|---|---|
A Fledge processing filter plugin that calculates a Fast Fourier Transform across sensor data |
|
A Fledge processing filter plugin that calculates RMS value for sensor data |
Plugins That Augment Data¶
A set of filters that will augment the data in the pipeline. Adding fixed or calculated data to provide more context or quality to the data.
Name |
Description |
|---|---|
A Fledge processing filter plugin that applies a user define formula to the data as it passes through the filter |
|
A Fledge processing filter plugin that calculates a Fast Fourier Transform across sensor data |
|
A Fledge processing filter plugin that adds metadata to the readings in the data stream |
|
A filter plugin that allows data to be added to assets that will provide extra information to the OMF north plugin. |
|
A Fledge processing filter plugin that calculates RMS value for sensor data |
|
A Fledge processing filter plugin that applies an offset and scale factor to the data |
|
A Fledge processing filter plugin that applies a set of sale factors to the data |
Computational Plugins¶
Plugins that apply a mathematical expression or translation to the data as it flows through the data pipeline.
Name |
Description |
|---|---|
A Fledge processing filter plugin that applies a user define formula to the data as it passes through the filter |
|
A Fledge processing filter plugin that calculates a Fast Fourier Transform across sensor data |
|
A Fledge filter that converts the readings data to a logarithmic scale. This is the example filter used in the plugin developers guide. |
|
A Fledge processing filter that allows Python 3 code to be run on each sensor value. |
|
A Fledge processing filter plugin that calculates RMS value for sensor data |
|
A Fledge processing filter plugin that applies an offset and scale factor to the data |
|
A Fledge processing filter plugin that applies a set of sale factors to the data |
Plugins Used To Label Data¶
A set of plugins that offer the ability to conditional label the data in a pipeline to aid in training of machine learning or to merely improve the visibility of events that occur is the pipeline.
Name |
Description |
|---|---|
A Fledge processing filter plugin that adds metadata to the readings in the data stream |
Plugins That Alter The Structure Of Data¶
A collection of plugins that alter the structure of the data within an asset. Typically these plugins are used to make the data match a semantic model of an asset. Mapping the data that is available to an idealised form of the asset.
Name |
Description |
|---|---|
A Fledge processing filter that is used to block or allow certain assets to pass onwards in the data stream |
|
A Fledge processing filter plugin that adds metadata to the readings in the data stream |
|
A Fledge processing filter that allows Python 3 code to be run on each sensor value. |
|
A Fledge processing filter that is used to modify the name of an asset, datapoint or both. |
Plugins That Process A Digital Signal¶
A group of plugins that will process some digital signal, normally applying an algorithm that augments or improves that signal to provide new insights into the signal.
Name |
Description |
|---|---|
A Fledge processing filter plugin that calculates a Fast Fourier Transform across sensor data |
|
A Fledge processing filter plugin that calculates RMS value for sensor data |
Plugin To Manipulate String Data¶
A set of plugins that perform operations on string rather than numerical data.
Name |
Description |
|---|---|
A Fledge processing filter that allows Python 3 code to be run on each sensor value. |
|
Filter to replace characters in the names of assets and data points in readings object. |
Plugins That Provide Scripting¶
A set of plugins that offer scripting as a mechanism to extend the operation of the plugin and manipulate the content of the data pipeline.
Name |
Description |
|---|---|
A Fledge processing filter plugin that applies a user define formula to the data as it passes through the filter |
|
A Fledge processing filter that allows Python 3 code to be run on each sensor value. |