summaryrefslogtreecommitdiff
path: root/CHANGELOG.md
diff options
context:
space:
mode:
authorYash Goyal <Yash.Goyal@arm.com>2021-02-10 17:08:15 -0800
committerGitHub <noreply@github.com>2021-02-10 19:08:15 -0600
commit073ada1f01ae09473eecb5c75a8fe271f6741625 (patch)
tree1de49d99205fb47a276ebff965ea4ed1b125004d /CHANGELOG.md
parent8351ac81104cfeccb59014a06a45c70ba798596b (diff)
Updated CHANGELOG, preparing release 2.2 (#221)
* Updated CHANGELOG, preparing release 2.2 * added meta-pelion-edge repository specific updates * Added known issue and primary feature to Changelog * Update CHANGELOG.md Co-authored-by: Ashish Mittal <ashumittal0806@gmail.com> * Updated the gateway logs file generated by maestro * Updated changelog with stuff we added since RC1 * Edit CHANGELOG.md Make minor copy edits. * Updated changelog - removed vendorID dependency, 2.1.2 changelog and some other edits * addressed LMP vs Poky. Highlights SD card needs * with spellcheck * Update changelog - added known issue thermal file * Edit CHANGELOG.md Edit file. Co-authored-by: Travis McCollum <x85446@yahoo.com> Co-authored-by: Ashish Mittal <ashumittal0806@gmail.com> Co-authored-by: Amanda Butler <Amanda.Butler@arm.com>
Diffstat (limited to 'CHANGELOG.md')
-rw-r--r--CHANGELOG.md94
1 files changed, 94 insertions, 0 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 1bc10ee..8f3ef39 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,99 @@
# Changelog
+## Pelion Edge 2.2 - February 2021
+
+In this release of Pelion Edge 2.2, we introduce support for two additional platforms and one additional Yocto distribution operating system: Now supported by Pelion Edge is the Linux microPlatform (LMP) OS, running on NXP's i.MX8 development platform `imx8mmevk` and the Xilinx Zynq® UltraScale development platform `uz3eg-iocc`. Pelion Edge continues support of Yocto's Poky OS on the Raspberry PI3. [Quick start guides](https://developer.pelion.com/docs/device-management-edge/2.2/quick-start/index.html) are available for all three platforms and should be followed individually because the build systems have differences. meta-pelion-edge and meta-mbed-edge are the basis for all Pelion Edge programs. Although the operating systems are different in support models, Pelion Edge has been tested to perform and operate the same within both OS environments. Moreover, both operating systems have the same feature set, other than the following difference:
+
+ - [FOTA Update] Pelion Edge on Poky OS continues to use overlayFS for upgrades as it did in previous releases. Pelion Edge on LMP OS uses a new mechanism called [OSTree](https://ostreedev.github.io/ostree/).
+
+The primary features in this release:
+
+- [edge-core] Updated Edge Core to [0.15.0](https://github.com/PelionIoT/mbed-edge/blob/master/CHANGELOG.md#release-0150-2021-1-12):
+ - Moved the mbed-edge-core recipe to its own meta layer: [meta-mbed-edge](https://github.com/PelionIoT/meta-mbed-edge).
+ - The new FOTA update framework library is supported on platforms `imx8mmevk` and `uz3eg-iocc` but not on `raspberrypi3`. To compile with this library, add the `MBED_EDGE_CORE_CONFIG_FIRMWARE_UPDATE="ON"`, `MBED_EDGE_CORE_CONFIG_FOTA_ENABLE="ON"` and `MBED_EDGE_CORE_CONFIG_CURL_DYNAMIC_LINK="ON"` Bitbake parameters to local.conf. (Note: The location for local.conf is specific to each platform, so we recommend following the quick start guide in the documentation in detail.)
+ - The old firmware update library, Update Client (UC) hub, is only supported on the `raspberrypi3` platform. To enable that, add the `MBED_EDGE_CORE_CONFIG_FIRMWARE_UPDATE="ON"` parameter to local.conf.
+- [maestro] Updated Maestro to [v2.9.0](https://github.com/PelionIoT/maestro/releases/tag/v2.9.0):
+ - [Gateway capabilities](https://developer.pelion.com/docs/device-management-edge/2.2/managing/maestro.html#gateway-capabilities) - Allows gateways to advertise the features supported by the platform. Maestro uses Edge Core's GRM JSON-RPC APIs to add to the gateway device's LwM2M resources. The registered resources are added under Pelion's reserved FeatureMgmt LwM2M object, 33457, with three resources: 0 - featureID, 1 - enabled and 2 - config.
+ - Remote config management through LwM2M - FeatureMgmt config resource allows you to remotely view the current configuration of the feature and also push a config update using the LwM2M cloud service APIs. Maestro, on receiving an update, writes the content to the file path specified in the respective parameter config_filepath.
+ - Removed parsing and generation of self-signed certificates. Also removed the platforms rp200 and wwrelay, which are no longer supported.
+ - Routed Maestro traffic through the edge-proxy service instead of directly connecting to the Pelion Device Management cloud.
+ - By default, disabled the Maestro's gateway logging feature in the configuration file for platforms `imx8mmevk`, `uz3eg-iocc` and `raspberrypi3`. The gateway logging feature is supported through Fluent Bit.
+- [logrotate] Added bbappend file to install a configuration that rotates the logs of files under `/var/log`.
+- [logrotate] Removed crontab method to call logrotate every 5min. Instead, we configured systemd logrotate timer to 5min.
+- [identity-tool] Established an independent recipe under recipes-connectivity and removed the dependency on wwrelay-utils:
+ - Converted the identity node program to bash, which lives in a new project called pe-utils.
+ - Installed v2.0.4 of identity-tool, which removes the generation of self-signed certificate.
+- [edge-proxy] Configured services gateway logs (Maestro), gateway stats (Maestro), relay-term, Fluent Bit HTTP endpoint to route traffic through the edge-proxy service and not consume self-signed certificate.
+- [meta-nodejs] Removed the dependency on node v8.x. Upgraded the node packages to work with default nodejs version of Dunfell.
+- [relay-term] Upgraded relay-term to work with node v12.x. Established an independent recipe from wwrelay-utils and removed the dependency on global-node-modules.
+- [mbed-fcce] Upgraded factory-configurator-client-example to v4.7.0 and pinned its dependencies.
+- [fluentbit] Added recipe to install Fluent Bit 1.3.5 on the gateway for providing an open source log processor and forwarder solution:
+ - By default, Fluent Bit is configured with the following input endpoints - CPU, MEM, Systemd services - edge-core, edge-proxy, pelion-relay-term, Maestro, kubelet, Docker and wait-for-pelion-identity. FluentBit is also configured with an output endpoint HTTP to publish logs at API endpoint: `http://gateways.local:8080/v3/device-logs` (routing through the edge-proxy service).
+- [journald] Enabled Forward Secure Sealing (FSS) feature of systemd journal. This helps detect gateway logs file tampering:
+ - To configure Pelion Edge gateway with a sealing key and to keep track of the verification key in production setup, use Pelion Edge Provisioner (PEP) tool [v2.3.0](https://github.com/PelionIoT/pelion-edge-provisioner/releases/tag/v2.3.0).
+ - By default, the gateway is configured with persistent journal logging. To disable that, set flag `VOLATILE_LOG_DIR = "no"` in `local.conf`, and update the `Storage` in recipes-core/systemd/systemd-conf/journald.conf. Note: If you disable persistent logging, the FSS feature won't work.
+- [systemd] Configured to manage the network. By default, we disabled Maestro's network management feature.
+- [systemd] Updated the unit startup sequence and changed `Requires` directive to `Wants`. This makes the system more robust when dealing with failing services.
+
+ ```
+ network-online --> edge-core --> wait-for-pelion-identity --> edge-proxy
+ --> edge-kubelet
+ --> fluentbit (td-agent-bit)
+ --> pelion-relay-term
+ --> maestro --> devicedb
+ ```
+
+- [deprecation] Removed deprecated services:
+ - devicejs-ng.
+ - Compatible devicejs-ng protocol translators.
+- [image improvements] Simplified and improved the "raspberrypi" supported image "console-image":
+ - console-image previously, version 1.0 through 2.1, contained Pelion Edge and development tools, including but not limited to: compliers, editors, analysis tools, stress tools and SQA tools. Pelion Edge version 2.2's console-image contains a minimized set of accompanying software for running and testing all of Pelion Edge's software and features. Note: This isn't a minimal image that strips common Linux tools but is instead what you might expect to find on a heavy embedded device. With this new strategy, you can customize the image more easily. You can strip the image more to make a more lightweight embedded OS or add more packages to make it more like the previously provided image.
+ - LMP's equivalent image is named `lmp-console-image`.
+ - meta-pelion-edge itself as a Yocto layer is now easier to incorporate with other layers, allowing other Yocto projects to incorporate Pelion Edge.
+ - Updated the splash screen banner from "DeviceOS by WigWag" to "Pelion".
+ - [recipe removals] Removed:
+ - wwrelay-utils recipe. Previously, this bitbake recipe performed many functions that have been replaced. For more details, please reference the recipe additions section below.
+ - strace-plus recipe because the image no longer ships with developer tools enabled.
+ - tsb recipe because the old wigwag relay is no longer supported.
+ - pps-tools recipe because the image no longer ships with developer tools enabled.
+ - node-znp recipe because devicejs is deprecated.
+ - node-netkit recipe because devicejs is deprecated.
+ - fftw recipe because the image no longer ships with developer tools enabled.
+ - emacs recipe because the image no longer ships with developer tools enabled.
+ - dnsmasq recipe because Pelion Edge programs no longer need these features.
+ - deviceOSWD recipe because the old wigwag relay is no longer supported.
+ - maestro-watchdog recipe because the old wigwag relay is no longer supported.
+- Removed the dependency on hardcoded `vendor-id=42fa7b48-1a65-43aa-890f-8c704daade54` required while provisioning your gateway. To view the gateway logs and gateway terminal in the Pelion portal, enable the Gateway capabilities through Maestro configuration. (By default, logs and terminal are configured for supported platforms.)
+
+### Bug fixes
+
+- After production factory flow, if you ran the `info` command before Edge Core paired with the cloud, the `info` command showed `N/A` for the deviceID while displaying connected. This has been fixed.
+- Streamlined the startup sequence of Pelion Edge programs to remove the cyclic dependency, which caused many starts and stops of processes in certain conditions.
+- When conducting back-to-back production factory flow with the Pelion Edge Provisioner, the mcc_config directory sometimes was not written correctly, and upon reboot, Edge Core didn't connect properly. This has been fixed.
+
+### Known issues
+
+- The Pelion Device Management portal is not correctly updated after a firmware campaign in some instances.
+- [maestro] The FeatureMgmt config resource is initialized with a maximum 3.8KB of file content. The remaining file content is truncated during initialization. This is most likely due to the limitation of the gorilla/websocket library but needs further investigation. However, Pelion Device Management users can still push a file size of a maximum of 64KB through cloud service APIs.
+- [pt-example] `cpu-temperature` device reports random values because the default CPU temperature file is not the same on Yocto and LmP.
+
+### Limitations
+
+- There is a maximum size limit to the full registration message, which limits the number of devices Edge can host:
+ - Maximum registration message size is 64KB.
+ - Hosted devices with five typical Resources consume ~280B (the exact size depends, for example, on the length of resource paths). This limits the maximum number to 270 devices.
+ - The more Resources you have, the fewer devices can be supported.
+ - The Pelion Edge device Resources are also included in the same registration message.
+ - **Test the limits with your configuration, and set guidance accordingly.**
+- Devices behind Pelion Edge do not support [auto-observation](https://www.pelion.com/docs/device-management/current/connecting/device-guidelines.html#auto-observation).
+- Pelion Device Management Client enabled devices must first boostrap to the Pelion Device Management cloud before connecting to Pelion Edge.
+- No moving devices are supported (such as the device moving from Pelion Edge to another edge device.)
+- LMP's base partition table is set above 10GB to support three upgrade images in OSTree. Therefore, we only support SD card installation (compared to supporting onboard EMMC or NAND) for the `imx8mmevk` and the `uz3eg-iocc`.
+
+## Pelion Edge 2.1.2 - January 2021
+
+Updated 'pip' download url to download specific verson.
+
## Pelion Edge 2.1.1 - December 2020
Pinned dependency that broke 'mbed_fcc' build dependency.