Edge Xpert 2.1
Edge Xpert 2.1 is based on the open source EdgeX Foundry version 2.1 release, codenamed "Jakarta".
EdgeX Jakarta Features
EdgeX Jakarta is a minor release on the second major release (Ireland). It is backward compatible with Ireland and is considered a stabilized release since Ireland incorporates many new changes from the previous minor version (Hanoi). Jakarta is also the EdgeX Foundry’s first Long Term Support (LTS) release, representing stability of the APIs, strong testing, and more.
See the EdgeX Jakarta release page for further details.
Additional Edge Xpert Features and Enhancements
- New WebSocket Device Service allowing applications to push data into Edge Xpert via the WebSocket protocol
- Postgres Time Series support with TimescaleDB integration and data streaming
- Security enhancements to the Edge Xpert Manager UI
- Migration of the accompanying Device Configuration Tool (DCT) to support V2 device profiles along with support for importing device resources via CSV files
- Switch Edge Xpert to new documentation framework
Release Changelog
2.1.5
Edge Xpert Application Service
Enhancements
- ConvertIntToFloatReading function updated to support an expanded range of integer values
- Support for TLS-enabled connections added
Edge Xpert CLI
Enhancements
- Improvements made to troubleshooting.sh
- TLS support added to
mqtt-broker
, InfluxDB, Node-Red, and Grafana services
Bug Fixes
- Windows installation error, "No such file or directory", has been fixed
- License check failure issue with
device-bacnet-ip
anddevice-bacnet-mstp
resolved
Edge Xpert Device Services
BACnet Device Service
Enhancements
- Support added for writing Null values in put commands
- Underlying Edge XRT service updated
Bug Fixes
- Value readings now allow empty strings
GPS Device Service
Enhancements
- Underlying Edge XRT service updated
Bug Fixes
- Value readings now allow empty strings
Modbus Device Service
Enhancements
- Underlying Edge XRT service updated
Bug Fixes
- Value readings now allow empty strings
MQTT Device Service
Bug Fixes
- Value readings now allow empty strings
OPC-UA Device Service
Enhancements
- Underlying Edge XRT service updated
Bug Fixes
- Value readings now allow empty strings
REST Device Service
Bug Fixes
- Value readings now allow empty strings
S7 Device Service
Enhancements
- Underlying Edge XRT service updated
Bug Fixes
- Value readings now allow empty strings
Virtual Device Service
Bug Fixes
- Value readings now allow empty strings
WebSocket Device Service
Bug Fixes
- Value readings now allow empty strings
Edge Xpert Manager
New Features
- Added ability to download Device Profiles
Enhancements
- Minor improvements and optimizations
Edge Xpert Microservices
Enhancements
- SecretStore-Setup: support added for X509 certificate generation in
mqtt-broker
,core-data
,app-service
, and Go device services - Security-Bootstrapper: Docker entrypoint scripts added for
mqtt-broker
, Node-Red, InfluxDB, and Grafana to support TLS settings
Edge Xpert Supporting Services
Enhancements
- Node-Red: Support for TLS-enabled connections added
2.1.4
Edge Xpert CLI
Bug Fixes
-
edgexpert logs
command has been updated to include App Services
Edge Xpert Device Services
BACnet Device Service
Bug Fixes
- Upgraded underlying Edge XRT service to fix a crash issue when running a scheduled job
GPS Device Service
Bug Fixes
- Upgraded underlying Edge XRT service to fix a crash issue when running a scheduled job
Modbus Device Service
Bug Fixes
- Upgraded underlying Edge XRT service to fix a crash issue when running a scheduled job
OPC-UA Device Service
Enhancements
- New optional protocol property,
ConnectionReadingPostDelay
, added. This indicates the delay (in milliseconds) to receiving monitored item readings after a device is added
Bug Fixes
- Upgraded underlying Edge XRT service to fix a crash issue when running a scheduled job
S7 Device Service
Bug Fixes
- Upgraded underlying Edge XRT service to fix a crash issue when running a scheduled job
Edge Xpert Manager
Enhancements
- Value range of BACnet protocol property, Device Instance, has been updated in the GUI to match service
- New OPC-UA protocol property, Connection Reading Post Delay, has been added
Edge Xpert Microservices
Bug Fixes
- Improved App Services restart policy to handle system reboots more efficiently
- REST APIs have been updated to return
416 Range Not Satisfiable
status when an out-of-range offset is used
2.1.3
Edge Xpert Application Service
Bug Fixes
- Fixed an issue in the pipeline function
SendDirectMethodResponse
, and corrected the error message to JSON format - App Services SDK can now resolve
XpertAddTagsFromDeviceResource
accurately - Fixed high memory usage issue
Edge Xpert CLI
New Features
- New microservice,
support-provision
, added to the Edge Xpert CLI. This can provision other microservices in the product - Default timeout extended to 300 seconds (previously 60 seconds); interval checks extended to 3 seconds (previously 1 second)
- Network Alias is now used instead of Hostname within the docker-compose.yml file, allowing backwards compatibility with older versions of Docker
- Removed unnecessary exposure of some service ports to increase security (mqtt-broker and all device services)
- Fixed an issue where
edgexpert config
did not check docker-compose-security.yml (Case: 00001387)
Enhancements
Bug Fixes
Edge Xpert Device Services
BACnet Device Service
Enhancements
- Added the Socat network tool, allowing users to more easily test BACnet/MSTP with simulated devices
Bug Fixes
- Upgraded the underlying Edge XRT service to fix minor bugs
GPS Device Service
Bug Fixes
- Upgraded the underlying Edge XRT service to fix minor bugs
- Updated default value of
Driver_GpsdHostname
to be0.0.0.0
(Case: 00001331)
Modbus Device Service
Enhancements
- Added the Socat network tool, allowing users to more easily test Modbus-RTU with simulated devices
Bug Fixes
- Upgraded the underlying Edge XRT service to fix minor bugs
OPC-UA Device Service
Bug Fixes
- Upgraded the underlying Edge XRT service to fix minor bugs
S7 Device Service
Bug Fixes
- Upgraded the underlying Edge XRT service to fix minor bugs
Edge Xpert Manager
Enhancements
- Functionality added to allow Edge Xpert Manager to create App Services insecurely, without running SecretStore (Vault)
- Edge Xpert Manager now supports creating App Services with ExternalMQTT as the trigger for the functions pipeline
2.1.2
Edge Xpert Application Service
New Features
- Added the concept of device tagging so that data events can include more contextutal information when exported. There is a new "tags" field added to the device description along with support for exporting these in the App Services and Edge Xpert Manager
Bug Fixes
- Fixed an issue where
default-pipeline
would repeatedly add functions - Fixed an issue where CA Certificate was not properly seeded into SecretProvider when using HTTP Export
Edge Xpert CLI
Enhancements
- Docker compose override mechanism has been implemented and docker-compose.yml files have been simplified
- Upgraded kuiper to version 1.4 and MQTT message bus is now used by default
- Upgraded Kong DB (Postgres) to version 13.6
Bug Fixes
- Updated sample configuration for
http-get-mqtt-export
. To avoid an unnecessary and misleading path,SecretPath
is now set to an empty string - Updated sample configuration for GoogleCloudIoT to remove irrelevant comments and
cacert
has been updated togooglerootcacert
Edge Xpert Device Services
BACnet Device Service
Enhancements
- Auto events are now blocked when the device admin status is set to "locked"
Bug Fixes
- Fixed issue with environment variables not being recognised
- Updated container names to
device-bacnet-ip
anddevice-bacnet-mstp
to fix entrypoint issues
GPS Device Service
Enhancements
- Auto events are now blocked when the device admin status is set to "locked"
Modbus Device Service
Enhancements
- Auto events are now blocked when the device admin status is set to "locked"
MQTT Device Service
Enhancements
- Auto events are now blocked when the device admin status is set to "locked"
OPC-UA Device Service
Enhancements
- Auto events are now blocked when the device admin status is set to "locked"
REST Device Service
Enhancements
- Auto events are now blocked when the device admin status is set to "locked"
S7 Device Service
Enhancements
- Auto events are now blocked when the device admin status is set to "locked"
Virtual Device Service
Enhancements
- Auto events are now blocked when the device admin status is set to "locked"
WebSocket Device Service
Enhancements
- Auto events are now blocked when the device admin status is set to "locked"
Edge Xpert Manager
New Features
- Postgres export destination support has been added to App Services
Enhancements
- Dashboard page performance has been improved and a new loading effect has been added
- Enabled device tagging. "Tags" field added to Devices page, "Add Event Tags from Device" attribute added to the App Services field
Bug Fixes
- "Host" OPC-UA protocol property has been renamed to "Address" to match the device service property
Edge Xpert Microservices
Enhancements
- Enabled device tagging by adding "tags" field to device descriptions
Bug Fixes
proxy
service is now aware of the existence ofconsul
, this prevents a route initialization error
2.1.1
Edge Xpert Application Service
Enhancements
- JavascriptTransform reworked to support arm32/arm64/x86_64 on alpine base image
Bug Fixes
- Data in the end of PrintDataToLog function is now returned
- TokenURL can now optionally be exposed in the log for debug purposes
Edge Xpert CLI
Enhancements
- Upgraded Vault from 1.8.7 to 1.8.8
Bug Fixes
- Fixed issue where
edgexpert pull --all
was missing some services which do not need licenses
Edge Xpert Device Services
BACnet Device Service
Enhancements
- Upgraded underlying Edge XRT service to v1.1.51
- Improved error messages to add more information for debugging
GPS Device Service
Enhancements
- Upgraded underlying Edge XRT service to v1.1.51
- Improved error messages to add more information for debugging
Modbus Device Service
Enhancements
- Upgraded underlying Edge XRT service to v1.1.51
- Improved error messages to add more information for debugging
MQTT Device Service
Bug Fixes
- Corrected the expose port in Dockerfile to 59982
OPC-UA Device Service
Enhancements
- Upgraded underlying Edge XRT service to v1.1.51
- Improved error messages to add more information for debugging
S7 Device Service
Enhancements
- Upgraded underlying Edge XRT service to v1.1.51
- Improved error messages to add more information for debugging
Edge Xpert Manager
New Features
- Log level in App Services can now be adjusted via dropdown box
Enhancements
- Styling has been optimized and improved, in particular for Firefox users
- Device Get Command response tables is now the first tab and now includes the resource name
Bug Fixes
- Fixed
LOADING: Redis is loading the dataset in memory
error during UI bootstrap - Fixed issue where editing App Services without filters would cause a blank page on Edge Xpert Manager
Edge Xpert Microservices
Enhancements
- Removed obsolete code which conditionally selected app-service image when using JavascriptTransform function in an app-service.
2.1.0
Edge Xpert Application Service
New Features
- Added support for Postgres and TimescaleDB integration, with new proprietary built-in function "PostgresWrite"
- Support for more HTTP methods introduced at the Application Service level: GET, POST, PUT, PATCH, and DELETE
- New function, SetContextVariables, introduced to allow setting of context variables at the Application Service level
Enhancements
- Integrated the EdgeX Foundry Jakarta Release changes into the Edge Xpert Application Service
- OAuth 2.0 mechanism added into HTTP Export function at the Application Service level
Edge Xpert CLI
Enhancements
docs
command deprecated as product documentation is now all available online- Consul removed from default service list
- Added environment variable
EDGEXPERT_PROJECT
to override default docker-compose file. Useful for development or customers that require custom build
Edge Xpert Device Services
BACnet Device Service
Enhancements
- Underlying Device SDK upgraded to v2.1.0
- Upgraded service to use Edge XRT v1.1.48
GPS Device Service
Enhancements
- Underlying Device SDK upgraded to v2.1.0
- Upgraded service to use Edge XRT v1.1.48
Modbus Device Service
Enhancements
- Underlying Device SDK upgraded to v2.1.0
- Upgraded service to use Edge XRT v1.1.48
MQTT Device Service
Enhancements
- Underlying Device SDK upgraded to v2.1.0
OPC-UA Device Service
Enhancements
- Underlying Device SDK upgraded to v2.1.0
- Upgraded service to use Edge XRT v1.1.48
REST Device Service
Enhancements
- Underlying Device SDK upgraded to v2.1.0
- Updates to predefined device configuration
S7 Device Service
Enhancements
- Underlying Device SDK upgraded to v2.1.0
- Upgraded service to use Edge XRT v1.1.48
Virtual Device Service
Enhancements
- Underlying Device SDK upgraded to v2.1.0
WebSocket Device Service
Enhancements
- Underlying Device SDK upgraded to v2.1.0
Edge Xpert Manager
New Features
- Added the "EdgeX Message Bus SubscribeTopics" field in Edge Xpert Manager App Service page
- Added WebSocket as a new protocol in Device Service
- Created a default key and certificate in Edge Xpert Manager for TLS enablement
Enhancements
- Added support for multiple
SetContextVariables
,XpertHTTPExport
, andJavascriptTransform
functions for App Service - Refined the error message that appears when services cannot be reached by Edge Xpert Manager
Edge Xpert Microservices
Enhancements
- Integrated the EdgeX Foundry Jakarta Release changes into Edge Xpert
- MQTT now used as the default EdgeX message bus
- Lower case conversion implemented before storing to database
Bug Fixes
- Enabled RedisDB TLS connection in security mode (Case: 00001282)
Migration changes
2.1
Edge Xpert CLI
Edge Xpert Services
- The
Provision
,TimescaleDB
services have been added in Edge Xpert 2.1
Edge Xpert Device Services
WebSocket Device Service
Device Profile Changes
- The
selfSigned
field has changed toskipCertVerify
inws
ProtocolProperty
Edge Xpert Microservices
Core Data
Data Model
- v2.1 supports a new value type,
Object
, to represent the structural reading value instead of encoding it as string. Similar to theBinaryValue
, there is a new fieldObjectValue
in the Reading. If the ValueType isObject
, the read value will be put in thefield in JSON object data type. - ServiceCORSConfiguration: New for Edge Xpert 2.1 is the ability to enable CORS access to Edge Xpert microservices through configuration.
Config & Registry
Configuration Properties
Core Command
Command Structure
- v2.1 supports a new value type,
Object
, to represent the structural reading value instead of encoding it as string for the SET and GET commands, e.g. the parameter of the SET command could be{"Location": {"Latitude": 39.679725466667, "Longitude": -104.997106466667}}
.
Config & Registry
Common Configuration
- After Edge Xpert 2.1.3 the default value of
EDGEX_STARTUP_DURATION
is extended to 300 seconds andEDGEX_STARTUP_INTERVAL
becomes 3 seconds to meet the requriements of some low power machines.