Software 2.x to 3.x

Software 2.x to 3.x

Software 3.3.2

Introduction

This software version is intended for all MiR systems.

We recommend that your robots are running the latest version of software 2.x before upgrading. Find the latest software on MiR Support Portal.

Upgrading from software 2.x to 3.x is a major change that requires more time and preparation than a regular update. You need to schedule sufficient downtime for this process and follow the steps in MiR Migration Guide 2.x to 3.x. You can find this guide on MiR Support Portal. This guide will help you understand the differences between the software versions and how they affect the robot and zone behavior.

To ensure a smooth and fast transition, MiR also offers Upgrade Support, a service that provides you with the assistance of our Application engineers who have in-depth knowledge of the migration process. They can help you avoid potential problems and reduce the downtime. Contact your MiR representative for more information.

Description

This major software upgrade introduces a new user interface for both MiR robots and MiR Fleet.

The software also introduces new planning methods that are more efficient and consistent, and the upgrade includes changes to the system structure of the software for MiR robots and MiR Fleet. The new system structure uses upgraded operating systems and software, providing a more robust system and better cybersecurity.

Due to these changes in the system structure, the method of upgrading both robots and MiR Fleet have changed.

For more information on how to upgrade and migrate to software 3.x, see MiR Migration Guide 2.x to 3.x. You can find this guide on MiR Support Portal.

The Asus cameras and the SoftKinetic DS325 cameras are not supported in the new software. The Asus cameras were used on MiR100 until mid 2016 when they were replaced for HW version 1.5. The SoftKinetic DS325 cameras were used on hooks until mid 2019 where they were replaced with Intel D435 cameras. If your robot or hook still has this type of camera (You can find the camera type on the robot interface under System > Settings > 3D cameras), you have the following options when upgrading the robot or hook to software 3.x:

  • Replace the camera with a supported Intel camera. You can order an upgrade kit for this from MiR.

  • Let the robot operate without using the camera. This means the robot cannot detect objects above or below the laser scanner height. The camera is not part of the robot's safety system, so this will only affect its ability to plan paths and avoid low hanging obstacles.

Setting parameters in missions has become more consistent.

In software 2.x, certain parameters could be skipped, but this has changed in 3.x, so that you will have to define each parameter before you can save the mission.

You can still run existing missions, but missions that have affected actions may not work as intended.

To avoid missions failing, we recommend reviewing all relevant missions and their actions after upgrading to 3.3.0 and higher. If you edit a mission and do not review and correct the affected actions, you are not able to save your changes. All affected mission actions are highlighted with red.

These are examples of actions that do not save correctly and must be resolved with the following:

  • For If actions, change Compare to I/O input, toggle None, and the change the Compare back to the original selection.

  • For Move actions that use variables, assign a default value to the variable. If the action requires a special kind of position or marker, make sure to select an element of that type.


Using a device that does not support hardware accelerated graphics for browsing the user interface can lead to slow rendering, high processing utilization on the device and make the interface stop responding.

New user interface

The user interface for MiR robots and MiR Fleet both have a new look and functional changes.

The main improvements are: 

  • Map editor
    The revised map editor allows you to edit the map in two layers:

    • The floor plan: The floor plan consists of the data that represents walls and floor, either recorded directly with the robot or uploaded to the interface in an image format.

    • Components: On top of the floor plan, you can add map components such as zones, markers, and positions. These elements can be selected and edited directly.

  • Map viewer includes option to filter which zones are shown on the map
    If you had several zones, positions, and markers on top of each other on a map, it was difficult to select the component you wanted to interact with, especially when they were layered. This has now been solved by enabling you to filter which zones, markers, and position types are shown on the map.

  • Resource queues in MiR Fleet
    When you open a map in the MiR Fleet interface, there is now a tool you can use to see the robot queue for a selected resource on the map.

  • Groups in MiR Fleet
    MiR Fleet now has a separate page for organizing Charging groups, Robot groups, and Staging groups. You are now able to clearly see which robots and components are part of which groups on the same page and you can quickly add and remove robots and components from the groups.

    Staging groups are a new type of group that work the same way as Charging groups, but with Staging positions instead of charging stations.

  • Dashboards
    The created dashboards are now saved in the first menu option and can be opened from there. For an overview of all the dashboards and to edit or create dashboards, go to Setup > Dashboards.

  • Automatic sign-out
    For each user group, you can enable an automatic sign-out so the user is signed out from the interface after a set amount of time.

  • Search bars
    Many pages in the user interface have been improved with a search bar. The search bar enables you to find components or settings quickly.

  • Notifications
    The new user interface includes a notification system that informs about the progress of certain processes or the state of the robot or MiR Fleet. Error notifications are still provided in their usual format.

  • Sites and maps
    Under Setup > Maps, the listed maps are no longer grouped under the site they belong to. You can use the drop-down menu at the top to select a site, so only the maps for the selected site are displayed. To activate, export, and import sites, select Create/Edit sites next to the drop-down menu.

  • Central user and access management in MiR Fleet
    It is now possible to set up MiR Fleet to use OAuth 2.0 and OpenID Connect 1.0 for central user and access management—see How to set up MiR Fleet to use OAuth 2.0 and OpenID Connect 1.0. You can find this guide on MiR Support Portal.

  • Endpoints, API calls, and speed
    Some endpoints have been modified and the number of API requests has been reduced, meaning that the robot interface runs faster. For a full overview of changes in the endpoints, see the latest REST API reference file for software 3.x.


    If you have external devices communicating with MiR products using REST API, we recommend checking if the endpoints you use are still the same in software 3.3.0. We will release more documentation about which endpoints have been changed, but until then you can use the REST API reference files for the full list of endpoints in the new software.

Robot navigation system

The new navigation system improves the speed and robustness of the planner and footprint switching. It also includes a new map zone and a revision of several of the planner system settings. The main improvements are: 

  • New Blocked path timeout function
    In the mission action Move, you now use the new Blocked Path Timeout parameter to set how many seconds the robot waits in the same position before the Move action fails. The Blocked Path Timeout parameter replaces the Retries parameter.

  • Removing Critical zones
    Critical zones have previously been used to permit the robot to move closer to obstacles than the robot planner would normally permit. Due to improved driving behavior, these zones are no longer needed.


    If you have a map with Critical zones, these will automatically be removed when you upgrade the software. In some cases where you have used Critical zones for ramps or automatic doorways, you will need to replace the zone with an Access zone—see Introducing Access zones.
    • Before updating, take screenshots of all of your maps and note which ones have Critical zones that must be replaced after the upgrade.

  • Introducing Access zones
    Use Access zones to mark areas where the robot can expect to detect an obstacle but should not take the obstacle into account when planning a global path. In most cases this is relevant for obstacles that will disappear when the robot gets closer, such as automatic doors and ramps. Access zones should be placed on areas of the map that contain obstacles the robot should disregard.


  • Constant global planning to find better routes
    In software 2.x, the robot would only plan a new global path when an obstacle blocked the path in a way that the local planner could not plan around it. Now, the robot calculates new potential global paths all the time while driving to a goal position and changes the global path if it finds a shorter route. This means the robot will plan a new path around any obstacles as soon as it detects them.

  • Faster footprint changing

    Changing a footprint in a mission now happens faster.

  • Faster map switching

    Switching between two maps now happens faster.

  • Forbidden zone escape improved
    In the rare event that a robot enters a Forbidden zone, for example if it's pushed or there is a localization jump, there are now two ways of handling this situation:

    • If only a part of the robot's footprint is in the Forbidden zone but the robot's center is outside the zone, the robot can plan a new path away from the zone where its center never crosses into the zone.

    • If the center of the robot is inside the zone, it cannot plan a new path and will fail if you try to send it on a mission. You must manually move the robot out of the zone.

  • Global planner paths are now smoother
    The paths the global planner makes are now smoother, improving the driving behavior of the robot.

  • Settings changes in System > Settings > Planner
    Two settings have been renamed for clarity, and six settings have been removed as their functions are either redundant, meant to be set in missions, or were not being used.

    The following settings have been removed from the robot's settings:

    • Global planner footprint

      Unused since the graphical footprint editor was introduced

    • Local planner footprint

      Unused since the graphical footprint editor was introduced

    • Robot height

      Unused since the graphical footprint editor was introduced

    • Dynamic footprint active

      Not intended to be modified

    • Modified pure pursuit

      Deprecated

    • Use the path planning implementation from software version 2.0.16 and earlier

      Deprecated

    • Maximum distance from path before creating new plan

      Unused in software

    The following settings have been renamed in the robot's settings:

    • Path timeout is now Waiting for obstacle. This is the setting you can use to define how long a robot should wait for an obstacle to move out of its path before planning a new path.

    • Path deviation is now Maximum path deviation. This is the furthest the robot's local planner can drive the robot away from the global path.

  • Improved zone handling—especially Speed zones
    Robots are now better at recognizing when they will enter a zone and apply the correct change in driving behavior. This especially takes affect in areas where zones overlap each other and when maintaining the correct speed limit inside and outside Speed zones. Robots will now adjust their speed just before reaching or after exiting a Speed zone, ensuring that the robot drives with the correct speed the entire time it is inside a Speed zone.

  • Map size limit
    If your maps are too large, it can sometimes take too much processing power for robots to plan a path. To avoid this, a map size limit has been implemented. You can no longer upload maps that exceed 750 m in one direction or have an area above 250 000 m2.


    If you have any existing maps that are larger than this, they will not be affected.

MiR Fleet system changes

All MiR Fleet software must now run on a system where Docker is installed (Linux x86_64/AMD64). This change has enabled solutions for issues with updating the software, timestamps, and system configurations. The main improvements are: 

  • MiR Fleet PC host system structure
    The 3.x software for MiR Fleet has been streamlined so MiR Fleet PC must be set up like MiR Fleet Server Solution. This means that existing MiR Fleet PC users wanting to upgrade to software 3.x must use the same upgrade procedure as used for MiR Fleet Server Solution—see MiR Migration Guide 2.x to 3.x. After updating once, you can upgrade MiR Fleet PC as described in the next two points.

  • MiR Fleet Server Solution upgrade process
    You can now upgrade MiR Fleet Server Solution like any other MiR product from the user interface, and you no longer need to remove old fleet files after each software upgrade.

  • MiR Fleet upgrade files
    You can no longer use the same .mir upgrade file for MiR robots to upgrade MiR Fleet. When you upgrade from the Software page in the MiR Fleet interface, select the MiR Fleet Server Solution .zip installer file instead to upgrade the software.

  • Timestamp correction from UTC
    For MiR Fleet Server Solution, all future data will have timestamps that follow the correct time read from your host device instead of UTC time.


    Missions scheduled before you upgrade will not run at the expected time after you upgrade MiR Fleet unless you are in the UTC time zone. Robots operating at unexpected times may result in hazardous situations.
    • Remove all missions from the mission scheduler before upgrading.

  • Removed features
    MiR Fleet running software 3.x has the following changes due to unsupported features:

    • If you are using a MiR AI Camera in your fleet, do not update MiR Fleet if you want to continue using them.

    • If you want to make a backup of MiR Fleet, export a site file and upgrade to the desired software version. You can also make a copy of the persistent storage folder as a backup. If you want to go back to a previous version, you must reinstall MiR Fleet using the old installer file of the version you want to downgrade to.

    • The HTTPS (TLS) certificate is no longer added via a REST API endpoint and has been replaced with a procedure that requires access to MiR Fleet Server Solution's host system. If you want to upload a new HTTPS certificate, see the guide How to use HTTPS and upload certificates to MiR products. The endpoint ssl/cert has been removed.

    • Both the MiR Fleet interface page and API endpoint for remote support have been removed.

    • The MiR Fleet PC tool was used to configure elements of the operating systems on MiR Fleet PC. Because MiR Fleet is now solely installed via Docker, you have direct access to the host system's operating system and no longer need the MiR Fleet PC tool.

    • The MiR Fleet configuration file has been removed. MiR Fleet is now set up with the following permanent settings:

      • Port mapping cannot be changed. Only the following ports can be used: 80, 8080, 8090, 9090 and 443. We recommend that you configure your firewall to close any of these ports if they are not needed. The following are examples of which ports are necessary for certain configurations: 

        • HTTPS only (recommended): 443

        • HTTP only: 80, 8080, and 9090

        • HTTP web only: 80

        • All: 443, 80, 8080, 8090, 9090

      • The docker network is always set to use bridged networking. This is more secure and flexible than host networking.

      • The persistent storage is always saved under /mir_persistence.

  • Cybersecurity upgrades
    The new software implements the following security improvements in MiR Fleet:

    • The default HTTPS certificate that is generated as part of the installation process with newly shipped MiR Fleet products is now unique for each product.

    • MiR Fleet software is now signed with a unique signature that MiR Fleet checks before starting the upgrade. This ensures that the upgrade file has been validated by MiR.

    • When MiR Fleet scans for robots, it no longer sends the MiR Fleet user credentials as part of the HTTP request.

  • MiR Fleet scanning more controlled
    MiR Fleet used to scan regularly for any robots connected to the same subnet as MiR Fleet. Now, MiR Fleet only scans for robots when you request it and it will only scan within the subnet you select. MiR Fleet can only scan once every 10 seconds. You can initiate a scan using either the /robots/scan_subnet API endpoint or on the Robots page in the MiR Fleet interface.

  • Custom resource lock distance for positions and zones in MiR Fleet
    By default, MiR Fleet assigns resources to robots when they are within 10 m of the resource. You can now customize this distance to optimize it for your site under System > Settings > Resource assignment. Changing this value can resolve some types of deadlocks. Be aware that changing the distance will change the behavior of all connected fleet robots and you must test the whole site if you change the value.

MiR robot system changes

The MiR robot software runs on an upgraded operating system and a new system structure that introduces improvements in robustness and security. The main improvements are: 

  • Operating system and software structure upgrade
    The operating system on all MiR robots must be upgraded for this new software version. This is done when you upgrade using the USB upgrade files—see MiR Migration Guide 2.x to 3.x. When you upgrade to software version 3.3.0, there are also several other structural software changes that will take affect. These changes increase the cybersecurity and robustness of the MiR robot software by updating many of the tools and applications used by the software.

  • More robust upgrade process
    After migrating to software version 3.x, all future upgrades will be more robust and less likely to fail.

    On the Software versions page, all software versions you have uploaded to the robot are listed in the interface and you can choose to upgrade to the newest software in the list.

    You can still use backups if you also want to revert the robot to the state from the time the backup was made. Be aware that backups no longer include software version—see the guide How to use backups and recover data on MiR robots for more information. You can find this guide on MiR Support Portal.
  • Discontinuation of Bluetooth support
    All Bluetooth related functions in MiR robots are now removed from the software. This includes functions in the interface as well as the API endpoint. The Bluetooth transmitter/receiver on the robot will be disabled when you upgrade, so it no longer emits frequencies that may disrupt the surrounding workplace. After the upgrade, you can no longer create or control Bluetooth I/O modules. All actions that include the option to select Bluetooth in the user interface have been modified so Bluetooth is no longer shown as an option. This includes mission actions, I/O zones, the Bluetooth widget for dashboards, and system settings. The following existing Bluetooth components will also be changed as follows:

    • Any existing Bluetooth I/O modules are removed.

    • I/O mission actions that use Bluetooth are replaced with a Throw error action. This ensures the mission cannot run before the mission is edited.

    • I/O zones that use Bluetooth alone are removed.

    • I/O zones that include Bluetooth settings as well as other options are modified so the Bluetooth functions are removed.

    • Bluetooth widgets on custom dashboards are still displayed but will no longer work.

    This is a continuation of the deprecation of Bluetooth support initiated on 10 August 2018—see the Product service note labeled Discontinuation of Bluetooth module.

  • New setting to prevent robots from ever driving against a Directional zone
    The robot applies a three-step approach to change its path when an obstacle is in the way: 

    1. The robot tries to avoid the obstacle by deviating up to half a meter from the global path.

    2. If the robot needs to deviate more from the path, the robot will replan the section of the global path that is up to eight meters in front of the robot.

      If the robot fails to plan a new path in that section, it tries again while ignoring nearby Directional zones.

    3. If the robot cannot plan a new path within the limited area in front of it, it will replan the global path completely.

      If the robot fails to plan a new global path, it tries again but while ignoring nearby Directional zones.

    There is a setting under System > Settings > Planner that enables the robot to drive against nearby Directional zones when replanning. By default, the setting is disabled, meaning the robot will never drive against Directional zones. If you want the robot to apply the same driving behavior as in software 2.x, you must enable this setting.

  • Improvements in Relative move, docking, and undocking actions
    When the robot makes a Relative move either in a missions action, docking action, or when undocking, it now makes a full plan for how to move to the goal position relative to its current position. The robot still travels in a straight line towards the goal and stops for obstacles along the way (provided Collision detection is enabled), but the robot can handle obstacles and other unexpected events better now that it makes a path to follow.

    This should resolve many of the issues that have previously been seen with Relative move actions, and during docking and undocking. In case you have certain markers that the robot cannot dock reliably to after these changes, you can enable the legacy Relative move behavior under System > Settings > Docking.

  • Removing Wi-Fi Signal strength watchdog
    The Wi-Fi Signal strength watchdog has previously been used to reconnect the Wi-Fi if the signal strength went below the specified threshold. Due to improved settings, it is no longer needed. Use the Background scan frequency setting instead to influence how aggressively the robot should scan for access points with a stronger signal.

  • Robots can roam automatically between multiple SSIDs
    You can now enable multiple Wi-Fi networks on a robot and let it automatically roam between access points from all enabled networks. The robot can only be connected to a single network (SSID) at a time.

    If you are using dynamic IP allocation (DHCP), the robot IP address may change when the robot roams to a different network. Since robots are associated to MiR Fleet using their IP address, this may result in MiR Fleet losing connection to the robot.

    This setting is disabled by default and should only be used for specific use-cases. We recommend connecting robots to only one network, preferably dedicated.

    To enable multiple networks, create a Wi-Fi profile for each network and enable Connect all under System > Settings > Wi-Fi. To enable a single network, disable Connect all and select Connect on the only network that you want to be enabled.
  • Cybersecurity upgrades
    The new software implements the following security upgrades for all robots:
    • Operating system security has been hardened by disabling ssh access for the root user.

    • OpenSSL has been upgraded to address the following CVEs (Common Vulnerabilities and Exposures):

      • CVE-2022-0778

      • CVE-2022-1292

      • CVE-2022-2068

      • CVE-2022-2097

Known issues

You can find the list of known issues on MiR Support Portal. Go to https://supportportal.mobile-industrial-robots.com/ and select Software. Select the Known issues document for the latest minor release.

Notes on upgrading

Restarting the robot before the upgrade is complete may result in a malfunction of the robot system

  • Do not turn off the robot until the upgrade is complete.

  • If you have issues during the upgrade process, see the sections How to upgrade a MiR robot or MiR hook from software 2.x to 3.x and How to upgrade a MiR Fleet PC from software 2.x to 3.x in MiR Migration Guide 2.x to 3.x

  • Site files can only be imported to a robot or MiR Fleet with the same software version as the site file. This means that if you have any saved site files that you want to be able to apply to your upgraded robots, you must import them before updating the software, and then export them again after the upgrade.

  • All robots that are connected to MiR Fleet must be running the same software version as MiR Fleet.

  • Remove robots from MiR Fleet before upgrading the robots.

Upgrading MiR Fleet and MiR robots

It is important to follow the correct procedure when upgrading MiR products to ensure that the upgrade is successful, that no data is lost, and that the upgrade does not take longer than necessary.

When upgrading, be aware that:

  • Your MiR product will stop running during the upgrade procedure.

  • No data will be lost if the upgrade is successful.

  • All connected robots must be upgraded to the same software version as MiR Fleet.

To correctly upgrade your product, see the guides:

  • When updating a MiR robot, see the guide How to update a MiR robot's software.

  • When updating MiR Fleet, see the guide How to update MiR Fleet.

Downgrade from software 3.x to 2.x

Downgrading to software 2.x is a complex procedure and will take a significant amount of time. Do not proceed with an upgrade to software 3.x unless you are prepared to complete the migration steps. In the extreme case you need to downgrade to software 2.x, you need to contact MiR Technical Support.

    • Related Articles

    • How to update a MiR robot's software

      MiR continuously updates the MiR robot software to fix issues, to improve existing features, or to introduce new features. Each software release is issued with a release note explaining the content of the update and its target audience. This guide ...
    • Software Release Note: 2.13.0.5

      Software 2.13.0.5 Released 2021-12-22 Solved issues Joystick control on MiR100 and MiR200 inoperable at charging stations If you tried to use the joystick to move a MiR100 or MiR200 robot that was charging at a charging station, the robot would enter ...
    • Software Release Note: 2.13.1.3

      Software 2.13.1.3 Released 2022-04-22 Solved issues Robots continuing a Relative move after being interrupted moving to the wrong final position When any MiR robot begins executing a Relative move action, if it is interrupted by an error or is paused ...
    • Software Release Note: 2.13.0.6

      Software 2.13.0.6 Released 2022-01-20 Solved issues MiR250, MiR500, and MiR1000 robots detecting chargers that are not there Due to a rare issue with the charging detection circuits on the power board, some MiR250, MiR500, and MiR1000 robots would ...
    • Software Release Note: 2.13.0.4

      Software 2.13.0.4 Released 2021-11-11 Solved issues Robots failing to release brakes MiR250, MiR500, MiR600, MiR1000, and MiR1350 robots running on 2.13.0.2 software would sometimes fail to release the mechanical brakes. This would cause the motor to ...