Skip to content

Edge Xpert 1.8

Edge Xpert 1.8 is based on version 1.3-Hanoi of the EdgeX Foundry open-source software platform, which provides the following key updates:

  • Support for distributed Device Services. This means that a Device Service can run on a different host to that used by the other Edge Xpert microservices
  • Support for event data tagging, which allows each Edge Expert instance to be configured to tag the data with a unique reference as it is exported northbound
  • Upgrades to the provided security, configuration, and rules services with new releases of Vault (1.5.3), Kong (2.0.5) Consul (1.8), and Kuiper (1.0)
  • The first availability of the EdgeX V2 APIs, which are provided as a beta release and will be productized and available for full commercial use in the next major release of Edge Xpert

Edge Xpert builds on this platform to deliver exclusive key updates for usability, device and platform support, including the following:

  • Provision of an online tool for creating and editing device configuration files with ease. Formally known as the Profile Modelling Tool, IOTech's Device Configuration Tool provides key usability enhancements and is provided as an online service for Edge Xpert, XRT and EdgeX Foundry users

  • Support for running on Windows using Docker Desktop or Docker Toolbox

  • Performance improvements for the Modbus Device Service. This Device Service has been re-implemented in C, providing the same features as the original Go-based implementation, but with improved performance and scalability

  • Enhancements for the BLE Device Service, including automatic device connections, notifications and user conversion functions

  • Updates for the PROFINET Device Service to remove the specific hardware dependencies of the previous version

Changelog

Discover what's new in our Edge Xpert 1.8.x releases for the following areas:

1.8.6
Edge Xpert CLI

New Features

  • Added the ble-sim service and updated the docker compose file

Enhancements

  • Updated the BLE CC2650 example device profile
Edge Xpert Device Services
All Go Device Services

Bug Fixes

  • The Go Device Service SDK has been updated with a fix for handling Device Service re-creation callback
BLE Device Service

Enhancements

  • Improved the handling of device connections
BLE Simulator

New Features

  • Added the BLE simulator
Modbus Device Service

Enhancements

  • Added boundary checks for request parameters and appropriate error messages for OOB values

Bug Fixes

  • Fixed an issue where Float32 and Float64 values were not written, but an OK HTTP code was returned
  • Updated Starting Address format to be a zero-based integer
1.8.5
Edge Xpert Microservices

New Features

  • Provided a template for creating custom Application Services demonstrating how to build a custom Application Service and add custom pipeline functions
  • Added an API to create an Application Service container, the request body is the app-service configuration: api/v1/system/app/{name} POST

Enhancements

  • Added new built-in functions ConvertIntToFloatReading and ConvertFloatToIntReading functions to convert readings to and from Int and Float types
  • Upgraded the Paho MQTT library from version 1.3.4 to version 1.3.5
  • Upgraded the Consul image from version 1.8.3 to version 1.8.13
  • Upgraded the Redis image from version 6.2.3 to version 6.2.4
  • Upgraded the Vault image from version 1.5.8 to version 1.5.9

Bug Fixes

  • Fixed http send function of export-distro, POST is used by default if the request method is not POST
Edge Xpert Device Services
BACnet Device Service

New Features

  • Added options to disable BACnet multiple read and/or write capabilities with DisableMultiRead and DisableMultiWrite environment variables
  • Added support for reading arrays, returning them as comma-separated strings, including null values
  • New method of discovery to operate with provisioned watchers, mode is controlled by the EdgeXDiscoveryMode driver option

Enhancements

  • BACnet/IP can use nsenter to run in the host network namespace
  • Remapped Edge Xpert data types to BACnet data types
  • The Port driver option can be set as an environment variable to override the default port, by default 47808
  • BBMD_TIMETOLIVE environment variable added to allow time to live period to be controlled when registering the Device Service as a foreign BACnet device connecting to the BBMD
  • Numerical driver options are now declared as integers instead of strings
BACnet Server

New Features

  • Added support for lua scripts
BLE Device Service

Enhancements

  • Updated the example BLE conversion device profile found at /usr/share/edgexpert/examples/device-services/ble/cc2650_conversion.yaml
MQTT Broker

New Features

  • The MQTT Broker can be configured by the user in the docker compose env variable
Device Discovery Tool

New Features

  • In OPC-UA Automatic Profile Modeling mode, deviceResource entries for Object Nodes can be created, these entries are flagged as eventNotifiers
1.8.4
Edge Xpert Microservices

New Features

  • Added an ExecuteCoreCommand pipeline function in Application Services, providing the rules engine and Cloud services the capability to invoke core commands by sending MQTT messages to the Application Service
  • Added bi-directional communication support to Application Services, new pipeline functions included are: MQTTSecretSendUsingSharedClient, AzureIOTHubMQTTSendUsingSharedClient, SendAzureDirectMethodResponse, AWSIoTHubMQTTSendUsingSharedClient, SendAWSIoTCoreResponse
  • Added AddTagsFromDeviceResource function for Application Services, which adds pre-configured tags from a device resource to the tag collection of an event

Enhancements

  • Upgraded the Paho MQTT library from version 1.3.3 to version 1.3.4
  • The sys-mgmt-agent service now runs as non-root inside its container to avoid security vulnerabilities (Case: 00001311)

Bug Fixes

  • Fixed the incorrect HTTP status code received when issuing the GET or PUT command to a Device Service (Case: 00001311)
Edge Xpert CLI

New Features

  • Added support for Kong DNS Time-To-Live, configurable with environment variable KONG_DNS_VALID_TTL (recommended value is 1)

Enhancements

  • Enhanced security of Docker containers with no-new-privileges and read-only container options
  • Renamed the images subcommand to image to be consistent with the underlying docker image command
  • Upgraded the Vault image to version 1.5.8 from version 1.5.7
  • Upgraded the Postgres image to version 12.7-alpine from version 12.6-alpine
  • Integrated InfluxDB version 2.0 into Edge Xpert
  • Added the VAULT_TOKEN_TTL environment variable for the vault-worker to override the vault token default ttl/period of one hour (1h) (Case: 00001318)

Bug Fixes

  • Upgraded the Redis image to version 6.2.3 from version 6.0.13-alpine to fix issues with high CPU consumption on ARM32 systems (Case: 00001314)
Edge Xpert Device Services
BACnet Server

New Features

  • Added support for dynamic object array allocation
  • Added support for Change on Value (COV) readings
BLE Device Service

New Features

  • New example device profiles provided for blue maestro tempo disc and Silicon Labs Thunderboard Sense 2 devices

Bug Fixes

  • Fixed the device re-connection issue, devices can now reconnect as expected after the re-connection attempt timeout (Case: 00001316)
1.8.3
Edge Xpert Device Services
BLE Device Service

New Features

  • Device Service can now read and process manufacturer advertisement data packets

Bug Fixes

  • Fixed issue with device re-connection issue after device operational status changes to disabled
Device Discovery Tool

New Features

  • Added support for specifying a maximum Browse depth in Automatic Profile Modeling, allows browsing of a subset of the server nodespace
1.8.2
Edge Xpert Microservices

New Features

  • Added support for setting up multiple pipelines to allow bi-directional communication between Edge Xpert and the Cloud
  • The secrets-setup service generates the certificate and key for Edge Xpert Manager to enable TLS (Case: 00001287)
  • Created a Postgre password file for Kong (Case: 00001269)

Enhancements

  • Edge Xpert Manager can support TLS in security mode (Case: 00001287)
  • Upgraded the Paho MQTT library from version 1.2.1 to version 1.3.2
  • Kuiper has been upgraded from version 1.1.1 to version 1.1.2 to allow the Kuiper service to run as non-root and avoid security risk (Case: 00001272)

Bug Fixes

  • Fixed an issue with updating a device without an ID in Core Metadata, PUT API is now correctly checked (Case: 00001298)
Edge Xpert CLI

Bug Fixes

  • Added the support-logging entry to resolve the issue with C Device Services using nsenter with hostname
  • Fixed issue starting the API Gateway on an ARM32 platform
Edge Xpert Device Services
Modbus Device Service

Bug Fixes

  • Fixed an issue with device commands performing batch reads on non-compliant devices
ONVIF Device Service

Enhancements

  • Device authentication information can now be updated

Bug Fixes

  • Fixed an issue where service could crash if a device is provisioned with an incorrect IP address or port
Edge Xpert Manager

Enhancements

  • Added the TLS_ENABLE environment variable to allow TLS to be enabled for Edge Xpert Manager (Case: 00001287)
1.8.1
Edge Xpert Microservices

New Feature

  • Introduced an environment variable (EDGEX_INTERVAL) to make the Consul health check interval configurable, default interval has been increased to ten seconds (Case: 00001278)
  • Enhancements

    • Upgraded the NodeRed service from version 0.19.0 to version 1.2.9
    • Upgraded Kuiper from version 1.0.0 to version 1.1.1
Edge Xpert CLI

Enhancements

  • The host network access is restricted, and the headers have been removed from the Kong API to improve security (Case: 00001276)
  • The default health check interval has been increased to ten seconds for security services, which reduces CPU usage, and the EDGEX_INTERVAL environment variable has been introduced to provide control over the interval (Case: 00001278)
  • Created a Postgre password file for Kong (Case: 00001269)
  • Kuiper subscribes to Core Data by default
Edge Xpert Device Services
ONVIF Device Service

New Features

  • Introduced support for a selection of Pan Tilt Zoom features
1.8.0
Edge Xpert Microservices

New Feature

Enhancements

  • Made the export-distro MaxNumberOfEventInProcessing limit configurable
  • Expanded the vault token live time for secrets-setup and secretstore-setup to avoid expiration
  • The Kong Admin API has been hidden from the localhost interface to prevent users from changing the running configuration of the Kong service (Case: 00001275)
  • RedisDB port has been hidden from the localhost interface (Case: 00001277)
  • Bug Fixes

    • Fixed memory leaks found in Export Distro (Case: 00001226, 00001241)
    • Fixed the overflow error in Core Data when post event at arm32 arch
    • Disabled the Vault UI and removed the Vault dependency on Consul using the file backend (Case: 00001274)
Edge Xpert CLI

New Features

  • The redis-password file is generated based on an environment variable
  • The --security-wait-duration flag has been added to allow you to specify the time to wait for security bootstrap to complete to prevent the timeout of other services (Case: 00001245)

Enhancements

  • All Device Services now register themselves to Consul if the consul service is running
  • The list of available services shown in the help message is now loaded during runtime. This allows you to see custom services if the docker-compose file has been modified

Bug Fixes

  • The port collision between Kong and Portainer has been fixed by updating the Kong HTTP port from 8000 to 8686 (Case: 00001250)
  • Edge Xpert CLI now returns with the correct non-zero exit status code
Edge Xpert Device Services
All Device Services

Enhancements

  • All Device Services have been updated to use the latest SDK
CANbus Device Service

Enhancements

  • CANbus Device Service now runs on port 49954 by default
CANopen Device Service

Enhancements

  • CANopen Device Service now runs on port 49955 by default
File Device Service

Enhancements

  • File Device Service now runs on port 49956 by default
Modbus Device Service

Enhancements

  • Modbus Device Service is now included in Edge Xpert as a C Device Service
Zigbee Device Service

Enhancements

  • Zigbee Device Service now runs on port 49957 by default
  • The device profile format has been updated to match the EdgeX Foundry standard
Device Discovery Tool

New Features

  • The Device Discovery Tool supports OPC-UA Automatic Profile Modeling and OPC-UA Node View modes