- Overview
- Supported Integrations
- Key Features
- Configuration
- Converters
- Best Practices
- Troubleshooting
Overview
Local Integrations in IndustryOS Edge enable direct connectivity and data ingestion from various industrial protocols and systems without requiring cloud connectivity. These integrations run entirely on the edge instance, providing low-latency data collection and processing.
Local integrations support:
- Protocol conversion and normalisation
- Local data processing and filtering
- Offline operation capabilities
- Bi-directional communication
- Custom data mapping and transformation
Supported Integrations
Protocol-Based Integrations
- HTTP: RESTful API integration for web services
- MQTT: Message queuing telemetry transport protocol
- CoAP: Constrained Application Protocol for IoT
- OPC-UA: Industrial automation standard protocol
- TCP/UDP: Raw socket communications
Network Server Integrations
- ChirpStack: LoRaWAN network server integration
Key Features
Uplink Data Flow
- Receive data from external systems
- Convert to IndustryOS data format
- Apply local rule chains
- Store in local database
- Optionally push to cloud
Downlink Data Flow
- Receive commands from IndustryOS
- Convert to protocol-specific format
- Send to target devices/systems
- Handle acknowledgements
Data Mapping
- Configure field mappings between protocols
- Apply transformations and calculations
- Handle different data types
- Support for nested JSON structures
Configuration
Local integrations are configured on the Edge instance through:
- Navigate to Integrations section
- Click “+” to add new integration
- Select integration type
- Configure connection parameters
- Set up uplink and downlink converters
- Test and enable integration
Converters
Uplink Converter
Transforms incoming data to IndustryOS format:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
// Example uplink converter
var deviceName = decodeToString(payload);
var deviceType = "sensor";
var result = {
deviceName: deviceName,
deviceType: deviceType,
telemetry: {
temperature: data.temp,
humidity: data.hum
},
attributes: {
model: data.model
}
};
return result;
Downlink Converter
Transforms IndustryOS commands to protocol format:
1
2
3
4
5
6
7
// Example downlink converter
var result = {
contentType: "JSON",
data: JSON.stringify({cmd: msg.command, value: msg.value}),
metadata: {}
};
return result;
Best Practices
- Error Handling: Implement robust error handling in converters
- Logging: Enable debug mode during setup
- Testing: Test with actual devices before production
- Performance: Optimise converters for high-throughput scenarios
- Security: Use authentication and encryption where supported
- Monitoring: Track integration health and message counts
- Documentation: Document custom converter logic
Troubleshooting
Integration Not Receiving Data
- Verify network connectivity
- Check firewall rules
- Validate protocol configuration
- Review converter logs
Data Not Parsed Correctly
- Test converter with sample payloads
- Check data type conversions
- Verify field mappings
- Enable debug logging
Performance Issues
- Monitor CPU and memory usage
- Optimise converter JavaScript
- Reduce message frequency if possible
- Consider batching messages