Update Factory Android Client 1.5

update factory logo

Update Factory Android Client 1.5 is released

Build and manage from remote your fleet of embedded Android devices with Update Factory. Update OS and application at scale.

 

Enhancements

  • Update the license from EPLv1 to EPLv2.
  • Upgrade Kotlin to 1.8.21 which fixes the false positive type mismatch in Android Studio.
  • The “uf-client-example” module has moved to a new repository and renamed to “UF Service API Reference Implementation”: https://github.com/Kynetics/uf-service-api-reference-implementation
  • Exclude the “os-mock” module from the Jitpack build.
  • For security reasons, the ufConf.conf file is ignored when the Service API is used to configure the client.

Bug fixes

  • Handle crash caused by failing to evaluate the file scheme used by ufConf.conf file.
  • Fix the “Reboot on the same partition” bug, when the UF Client Service crashes during a double-copy OTA update.

See the project Release Notes and artifacts for download

Scala Days 2023

We are excited to announce that we will be at ScalaDays 2023 in Madrid, Spain, from September 12th to 14th, 2023.

On September 12th, come and join us at ScalaBridge for a day of learning about Scala.

Kynetics will also give a talk during the conference:

Running Docker-Based Integration Tests in Scala: A Case Study

Stage 3, 13 September 2023 – 10:15 to 11:00

The ScalaDays conference is known for its welcoming and inclusive atmosphere and emphasis on community building and networking.

SCALE 2023

update factory logo

We are excited to announce that we will be at SCALE 2023 (Southern California Linux Expo) in Pasadena, California, from March 9-12, 2023.
Kynetics is hosted at the Eclipse Foundation Booth in good company with Edgeworx maintainer of IoFog.

This will be an excellent opportunity to catch up with friends in the community and show our latest developments.

The SCALE expo is known for its welcoming and inclusive atmosphere and emphasis on community building and networking.

SCALE features a wide range of exhibitors and sponsors, including some of the biggest names in the tech industry, startups, and community organizations.

Update Factory 1.4.1 Released!

update factory logo

We are thrilled to announce the availability of the Update Factory Android Client 1.4.1 for OTA Updates on your Embedded Android device!

Enhancements

  • Retry to send messages to the update-server if the sending fails
  • Improve message sent to the update-server during A\B update (Marked messages generated by UpdateEngine)

Bug fixes

  • Kotlinx.coroutines.channels.ClosedSendChannelException exception (fixed updating hara-ddiclient)
  • make a new request when the previous response is still open: call response.close (fixed updating hara-ddiclient)

See the project latest Release Notes

Update Factory Client 1.3

update factory logo
We are thrilled to announce the availability of the Update Factory Android Client 1.3.

The new Android Client includes new features and bug fixes we have been working on for the past months. Let’s cut to the chase and dig into what is new!

Installation time windows. The time windows feature allows customizing the Android Client installation behavior of forced updates. When time windows are specified via API, the UF Android Client Service installs the forced update only when the device time is within the defined time intervals. This feature allows applications that use the integration API to configure when a device is allowed to install updates, e.g., only outside working hours.

Prioritization of Service update. When the Android Client Service is included in an Application Update, its installation is prioritized for other applications that may be included in the same Software Module. This ensures that applications using the most recent integration API can be bundled in a single Software Module with the required Android Client Service to support the corresponding API version.

Bug Fixes. Several bug fixes are implemented in the 1.3 release. See the project Release Notes for a detailed Change log.

EclipseCon 2022

Kynetics, a member of the Eclipse Foundation and part of the IoT and Edge Native working group, is present at the EclipseCon 2022 in Ludwigsburg, Germany, October 23-27.
Monday, 23rd, is Community day, and Kynetics will provide updates on Eclipse Hara. Hara facilitates and speeds up the development of DDI API clients for devices connecting to hawkBit servers.

Kynetics presents two sessions during the conference:

Bringing hawkBit to Production
26 Oct 2022 – 10:45 to 26 Oct 2022 – 11:20
Room: Seminarräume 1 – 3
(Andrea Zoleo and Nicola La Gloira)

Eclipse Hara: Updating Embedded Devices with hawkBit Made Easy
27 Oct 2022 – 11:30 to 27 Oct 2022 – 12:05
Room: Schubartsaal
(Matteo Di Pirro and Nicola La Gloria)

We look forward to catching up again with the Eclipse Community in Ludwigsburg!

New GPIO scripting support added to U-Boot 2022.07

kynetics-co-logo-portrait

The U-Boot project has just released version 2022.07 of the popular bootloader. This release includes a new feature, developed by Kynetics, that enables the use of the GPIO values in bootscripts.

The new feature ensures that:

  • scripts can check success or failure of a GPIO read operation
  • the GPIO value can be saved to a U-Boot env variable

The feature is enabled by the CONFIG_CMD_GPIO_READ and has the following syntax:

=> gpio read <variable-name> <gpio-pin>

The commit can be seen at:

https://github.com/u-boot/u-boot/commit/dd2b8c1155d016800cbbaa1bd70efdd81f9da493

New Update Factory Android Client (1.2.0) released

kynetics-co-logo-portrait

We are thrilled to announce a new release of the Update Factory Android Client (1.2.0) to manage Android Updates at scale.

The new Android Client includes important improvements and bug fixes that we have been working on during the past months. To achieve this milestone, our customer feedback has been a key factor in order to improve robustness and usability of the Update Factory Android Client. Let’s cut to the chase and dig into what is new!

Switch to Eclipse Foundation’s hara-ddiclient library. During the past year Kynetics has worked hard to refactor its open source uf-ddiclient library, core component of the Update Factory Android Client. The uf-ddiclient library has been since renamed to hara-ddiclient and, as previously announced, Kynetics has contributed the code of the hara-ddiclient library to the Eclipse Foundation. Release 1.2.0 of the Update Factory Android Client marks the full adoption of the vendor neutral hara-ddiclient library that guarantees its code has passed the Eclipse Foundation due diligence.

Improved handling of download failures. Thanks to the feedback from our customer we realized poor internet connections are a common source of headaches. While the Update Factory Android Client already performed multiple download attempts, in release 1.2.0 we improved the retry behavior by implementing an exponential backoff strategy. Please increase the Artifact Download Lifetime to be at least 2 days to fully take advantage of this new feature.

Bugfixes. Several bugfixes are implemented in the 1.2.0 release. See the project Release Notes for a detailed changelog.

Update Factory evaluation image for RPi4 is out!

kynetics-co-logo-portrait

We are happy to announce the release of the Update Factory evaluation images for the Raspberry Pi 4. The images are available in the Linux Images section of the Update Factory documentation, including an example update file.

The release of the evaluation images for RPi4 have been possible thanks to recent developments in the new “hardknott” branch (Yocto version 3.3) of our Yocto layer meta-updatefactory

Here are the release notes:

Have a look at our updated documentation for details about integrating meta-updatefactory in Yocto Linux builds.

Eclipse IoT and Edge Native: The Hara Project

kynetics-co-logo-portrait

Kynetics, member of the Eclipse Foundation and part of the IoT and Edge Native working group, is proud to announce the initial contribution to the Hara project.

Hara-ddiclient is a Kotlin library that facilitates and speeds up the development of DDI API clients for devices connecting to hawkBit servers. 

Eclipse hawkBit™ is a domain independent back-end framework for rolling out software updates to constrained edge devices as well as more powerful controllers and gateways connected to IP based networking infrastructure. More information here: https://www.eclipse.org/hawkbit/

Hara-ddiclient can be used from any JVM compatible language (Java, Kotlin, etc) and it is part of the Eclipse Hara™ project, more information can be found here: ​​https://projects.eclipse.org/projects/iot.hawkbit.hara

Source code is available here: ​​https://github.com/eclipse/hara-ddiclient

A special thanks to the Eclipse Foundation for their great work and support.

Webinar – IoT and Edge Device Security: Challenges and Solutions

kynetics-co-logo-portrait

Kynetics will be speaking at a webinar hosted by FOSSASIA Summit 2021 on March 18, 2021. The subject is: IoT and Edge Device Security: Challenges and Solutions.

The Edge is anywhere and everywhere outside the corporate data center and the Cloud. This means edge nodes and IoT devices can be deployed in a wide variety of environments, where they will possibly face dangers such as humidity, vibrations, dust and many others. Their physical location also exposes them to tampering, theft and even complex network security threats. This panel will explore the various security challenges of IoT and Edge Computing and discuss the value of potential solutions, such as root of trust, device quarantines, network segmentation, data encryption at rest and many others.

UF Technical Documentation Updates

kynetics-co-logo-portrait

We’ve released our Update Factory client v.1.1.2 for Android, which resolves the following bugs:

  • The download authorization pop-up shows up twice when applying a soft update with API Mode ON and the UF example UI open in full screen.
  • When the service starts it doesn’t check the md5 file of the already downloaded files that could be corrupted.
  • Service crashes when it receives an unexpected serialized class.
  • The service isn’t restarted when its configuration is changed using api.

Useful links:

If you have any questions, feel free to contact us.

Webinar – Get Started with Android 10 on NXP® i.MX 8 and i.MX 8X Applications Processors

kynetics-co-logo-portrait

Kynetics will be speaking at a webinar hosted by Toradex on November 12, 2020. The subject is: Get Started with Android 10 on NXP® i.MX 8 and i.MX 8X Applications Processors.

android 10 imx

Learn how to get started with the latest Android 10 on the highest-end i.MX 8 and the very efficient i.MX 8X applications processors. Kynetics and Toradex partnered to create a streamlined way for you to build a proof of concept in no time, utilizing the Toradex Easy Installer for one-click installation.

But we did not stop there – together, via this webinar, we will demonstrate how the industrial-grade System on Modules (SoMs) from Toradex and the services from Kynetics will lower your time-to-market for your next project.

Key takeaways:

  • You will learn more about Android 10 support on NXP i.MX 8QM applications processor
  • Experience how to create a simple proof of concept in minutes
  • Learn about the Android root of trust pipeline and differences between development and production operating systems
  • Learn how Kynetics and Toradex lower your risk and time-to-market
  • Get a preview of upcoming Android support for the i.MX 8M Mini and upcoming SoCs such as i.MX 8M Plus

Kynetics’ own Nicola La Gloria and Roberto Sartori will each be speaking at the event.

If you would like to learn more or register for this webinar, see the Toradex Event Page!

Update 11/19/2020: below you’ll find the webinar:


Android Client v1.0 for Update Factory

kynetics-co-logo-portrait

Update Factory 1.0 for embedded Android is out!

New Features:

  • Code refactored in Kotlin to improve maintainability
  • Support for A/B double copy system update mechanism alongside single copy and APK updates
  • Example Update Factory UI with more information and statistics
  • Updated API information, here.

Kynetics @ EclipseCon Europe 2019

eclipsecon europe 2019 osgi

Kynetics‘ Nicola La Gloria will be speaking at EclipseCon Europe 2019 in Ludwigsburg, Germany on Tuesday 10/22/2019. The session is: From Eclipse hawkBit to Update Factory: How to Take an Open Platform to Production (Sponsored by Bosch).

You can find the presentation abstract here.

Kynetics @ ELC North America 2019

ELC-North-America-2019

Kynetics will be speaking at the Embedded Linux Conference – North America 2019 in San Diego, California during August 21 – 23 at the Hilton San Diego Bayfront.

We will be speaking at two sessions:

Challenges of using Containers to Run Graphical Embedded Systems

Despite their quick success and adoption, containers are already a well established technology and their use is steadily rising also in the embedded community. However the specific requirements of an embedded system set new challenges like running demanding graphical applications.
While containers’ most common use case is to easily deploy headless server applications, graphical subsystem containerization is heavily dependent on the SOC GPU architecture.
This session will provide an overview of the challenges encountered running X11 and Wayland applications inside docker containers on ARM SOCs. In particular we will focus on new advantages with respect to a traditional monolithic embedded OS but considering also container drawbacks and limitations.
In our journey we’ll share our considerations and results with respect to different software setups, security & isolation, support for accelerated graphics and video decoding which are not an option on systems featuring a GUI.

Presented by Diego Rondini

More info can be found here.


Improving Embedded Systems Boot Time by Hibernation: An Overview on the State of the Art and a Case of Study on i.MX family of Processors

Improving boot time is always a delicate matter and literature is very rich. Linux based OSes benefit from standard optimization approaches however, Android is still far away from having exciting results especially because most the heavy block happens in user space. Hibernation, suspend-to-disk, is undoubtedly a different perspective to look at improving boot time. When the hibernation mode is entered the system hardware state is copied to non-volatile memory like MMC and all power can be removed by the system. On resume, the system is restored from peripherals to memory in a predetermined way. From this perspective just the very first boot will be a “regular” one and all the subsequents is just a restore operation which can take a few seconds. This session will provide the current state of the kernel development of Hibernation on ARM architectures and our tests on the popular i.MX family of processors including the new i.MX8 which today is one of the most promising SOCs.

Presented by Nicola La Gloria.

More info can be found here.

Kynetics @ Embedded World Conference – 2019

embedded world 2019

Kynetics will be attending Embedded World 2019 in Nuremberg, Germany on February 26 to February 28, 2019.

Check out our latest Android BSP developments on the Toradex Colibri and Apalis family product lines including the iMX8 QM, by visiting the Toradex booth. We are also showcasing our Real-Time Android featuring Asymmetric Multiprocessing on the iMX7D. If you’re interested to our Android Real Time on the new iMX7 ULP, visit the NXP booth.
At the NXP booth we are also supporting the launch of the new Nitrogen 8 featuring the iMX8 Mini, by Boundary Devices.

If you would like to connect with our team at the show, Contact Us

Kynetics @ EclipseCon Europe 2018

eclipsecon europe 2019

Kynetics’ Nicola La Gloria will be speaking at the EclipseCon Europe 2018 in Ludwigsburg, Germany on Tuesday 10/23/2018. The session is: Edge Devices in Industrial Automation. The presentation showcases an enterprise industrial IoT device, co-developed by Kynetics: RevoEdge.

RevoEdge banner - ELC Europe 2018