Device Management Console

About SmartTUBE Device Manager

SmartTUBE Device Manager — a service with the web console for managing firmware, applications and configurations on all types of IPTV/OTT devices including Linux and Android STBs, mobile and Smart TV platforms. This console has the following key features:

  • Software artefacts management (STB Linux and Android firmware, private app repository for AOSP, configuration files)
  • Device grouping (production, staging, A&B, etc.)
  • HTTP and Multicast firmware distribution
  • Software version tracking and release notes
  • Update strategies management (soft update, force update, minimal allowed version)

Interface Overview

After logging in, the Home page opens where you can see the summary table with information about the versions of firmware and system apps installed on STBs.

Image6

Home page with Main menu

The screenshot above shows that the SML-5051A devices from the Production group have the hi3798-3.5.4 firmware and Angry birds and Betacom system apps installed.

Each item of the Main menu, except for Home, is a dictionary containing information about firmware, Android apps, device groups, and STB models, respectively.

Filling in Dictionaries

Before uploading firmware, apps and configuration files to devices, you should fill out all the dictionaries.

  1. ‘Device Models’ Dictionary

Add all STB models used on your platform to this dictionary by defining the following parameters:

    • Device model name — used for STB identification in the SmartTUBE Device Manager interface;
    • Hardware revision identifier — device identifier (aka boardName) used for internal API requests and other SmartLabs applications. To obtain it, please contact Smartlabs technical support;
    • Product — identifier allowing to distinguish devices with the same Device model name, but differing, for example, in hardware configuration (memory size, optional connectors, etc.);
    • Type — device type: Linux, Android STB or Other (mobile iOS/Android and SmartTV).
  1. ‘Firmwares’ Dictionary

Upload firmware files to the dictionary by following these steps:

    • Click the Add (+) button.
    • Fill in the following parameters:
      • Version — firmware version;
      • Type — device model for which the firmware is intended;
      • Firmware type:
        • Update — update within the current major version or
        • Upgrade — upgrade to a newer major version;
        • Upgrade to version (for Firmware type — Upgrade only);
      • Release notes.
    • Upload the firmware file using the Upload file button.
    • Click the Save button to save changes.

Now the firmware is ready for assignment to devices — the Is active flag is set to it. If you need to remove firmware from the list of available for installation, set the Is archived flag.

Later, if you need to add an incremental update to a specific firmware version, use the Add (+) button in the Incremental updates to area on the Firmware details page.

  1. ‘Staging Groups’ Dictionary

For testing firmware and apps, multiple end-user devices can be separated into staging groups (the number of groups is not limited):

    • Create a group using the Add (+) button.
    • Specify the parameters:
      • Staging group name — used for the group identification in the SmartTUBE Device Manager interface,
      • Staging group external ID — unique group identifier used in internal API requests and firmware folder naming.
    • Add the terminal UIDs / MACs with the Add (+) button. (You can also do this later).
    • Click the Save button to save changes.

Now you are able to open group details and add more terminals.

    • One by one in the Terminal UID field.
      If you use SmartTUBE SDP as middleware, then the choice is performed by the devices’ UID registered in SDP. Otherwise, the MAC addresses are entered manually
      or
    • Load the list of UIDs /MACs using the Add (+) button.

The Production staging group represents the bulk of STBs held by subscribers and is not editable. When the device testing is complete, it can be moved to this group with the Move to production button.

  1. ‘Android Apps’ Dictionary

In addition to firmware, you can manage Android apps on STBs installed. Applications can be User or System. The only difference between them is that the name and version of System apps are displayed on the Home page for quick and easy monitoring.

    • Apps are loaded in the same way as firmware with the following fields specified:
    • Published — flag to make the app available for assignment to devices,
    • Application name — to identify the app in the SmartTUBE Device Manager interface,
    • Code version — to identify the app version in the SmartTUBE Device Manager interface,
    • Application package — application package name,
    • Application type — User or System.
    • Path — path to the app file on the server. It is filled in automatically after the app file is uploaded.

Uploading Firmware, Apps and Configuration Files

Once you’re done filling out the dictionaries, you’ll be able to upload software artifacts to devices.

  1. Go to the Home page and click on the desired empty cell.

A window offering you to upload firmware, apps and configuration files is displayed:

Applying new firmware and Android apps to devices

  1. Specify the following parameters:
    • Firmware version — select it from the drop-down list.

For the mobile and SmartTV devices, this setting is for informational purposes only. Technically, the version is managed in the corresponding AppStore/Play Market/Seller Lounge LG/Samsung showcase and differs from the specified one. Make changes only after you receive confirmation that the app version has been published on the showcase.

    • Minimal supported version — if the device has a firmware version lower than the minimal supported, it will be forced to update to the current one.
    • Portal URL — Web Application URL (For details, please contact the SmartLabs Support Team).
    • Update by HTTP or Update by Multicast
    • Block authorization for old versions — prohibits subscriber authorization if the firmware version of the end-user device is lower than the current one.
    • Update strategy:
      • Force — subscriber receives an on-screen notification about the need to restart the device without the option to opt out;
      • Soft — subscriber receives the notification with the ability to postpone the update several times.
    • Android apps tab — add a new app using the  button or select from the dictionary using the search field below (enter 3 or more characters).
    • Additional link params tab — If you need to provide the firmware and configuration files of this “Model-Group” pair to devices with a specific firmware version (regardless of the UID and belonging to any staging group), select it from the drop-down list.
    • Setting files section — add JSON or text configuration files using the Add JSON file and Add text file buttons. You can also upload a file of any other format with the Upload files button.

Filled up section looks as follows:

Image9

Here you can track the history of setting files applied to various firmwares (section with the folder tree) and history of changes for each file (using the History button):

Image8
  • Click the Save button to save changes.
  • Software artefacts are now uploaded to devices.

Apps and configuration files should not be uploaded without firmware.

Management of Installed Apps

After you upload the apps to devices, you will have additional options for managing them.

  1. Click on the desired table cell on the Home page. You will see the following information about the installed apps:
Image1
  1. Set the following options, if required:
    • Move to black list — prevent app installation on devices and remove previously installed apps that not part of the firmware built-in apps;
    • Always installed — make it impossible for the subscriber to delete the app;
    • Allow downgrade — allow downgrading for installed debug builds of the app and for installed firmware debug builds

As a security measure, downgrading the app version is prohibited, because if installed, the package gets access to the data left on the device by its predecessor. Therefore, downgrading the application version is only allowed for debugging builds installed.

On debuggable platform builds, downgrades are permitted even for non-debuggable packages. Debuggable platform builds do not offer security guarantees, and thus some security mechanisms can be disabled to make debugging/testing on those builds easier.

  • Force update — subscriber receives an on-screen notification about the need to update the app without the option to opt out;
  • Remove app from link — unlink the app from the current “Device model – Staging group” pair.

Logging

SmartTUBE Device Manager allows you to monitor all actions performed by operators and errors that occur during firmware updates.

Operator Action Logs

The Logs page provides a chronology of actions performed by Device Manager users. You can filter this log by required parameters using the search fields.

Image13

Here you can track the following objects and data:

  • Object class — type of Device Manager entities:
  • ManagerConfigFile — Settings file editor. Tracks only the creation, deletion and saving of files. History of changing the file contents can be found in the Settings files section.
  • Firmware Firmwares dictionary
  • AndroidApp versions of Android apps
  • AndroidAppMain Android apps dictionary
  • AndroidAppStagingGroupDeviceModelLink — linking of Android apps to device models and staging groups on the Home page
  • DeviceModel Device models dictionary
  • FirmwareStagingGroupDeviceModelLink — linking of firmwares to device models and staging groups on the Home page
  • TerminalStagingGroupLink — linking of terminals (end-user devices) to staging groups in the Staging groups dictionary
  • Action — action performed by operator to the object of the Device Manager or a configuration file:
  • create — creating a new object
  • delete — deleting of a certain object
  • update — updating settings for a certain object
  • savefile(new) — creating a new file (configuration, text, image, etc.) for the “Device model – Staging group” link on the Home page
  • savefile — updating a file for the “Device model – Staging group” link on the Home page
  • Object ID — ID of an object of the Device Manager. In the current UI implementation, you can find an object by its ID as follows:
    • Determine the object class and object ID:

Image2

 

    • Proceed to the appropriate dictionary and select any object:
Image10
Image5
    • Look at the URL of this object and replace its ID with the ID of the object you are looking for:

original:

Image3

changed:

Image12

 

    • You found the object:
Image7

 

  • Login — login of the user who applied changes to the Device Manager objects
  • Action date
  • Details — details on the changes applied to the object

Firmware Error Logs

All errors raised during firmware update are collected on the Firmware error logs report. You can use this information for debugging.

Image11

The report provides 4 types of errors (Reasons):

  • Link error: Reasons:
  • No ‘Firmware – Device model – Staging group’ association was found for the device.
  • The Production group has a firmware with the Not for production usage option enabled.
  • Unable to update the device from source firmware to target one via the update chain.
  • File not found: Newer firmware for the upgrade is on the system, but the firmware file was not found.
  • Delivery error: A device attempted to request firmware via unicast or multicast, but this type of delivery is not allowed.
  • Version error: Reasons:
  • The Device Manager have the firmware version older than installed on a device.
  • There is no version argument in the device’s request.
  • Error in internal data structures when building the update chain.
  • Error when searching for firmware in the update chain.
CONTENTS
Sign-in
Sign-in with your SmartLabs Support Portal account credentials to see non-public articles.