Zebra MC9300 operating system upgrade with SOTIMobiControl

Solved
J
JJC
CONAIR CORPORATION

Morning,

We need to upgrade the Android OS of our RF terminal Zebra MC9300 (20 x devices) from Android 10 to Android 11 + patches.

All the devices are already managed by SOTI for application deployment but we do not use the OS update deployement feature from SOTI.

Can we create a group of devices that will receive the OS upgrade for testing then when the test is concluant add all other devices to the group?

We also have VC8300, can we create a group by model as well in SOTI for the same purpose?

Can someone explain how we can proceed?

Thks for your help  

2 years ago
SOTI MobiControl
ANSWERS
MD
Matt Dermody Diamond Contributor
2 years ago

For upgrading the OS on Zebra Android devices using SOTI I prefer to use File Sync Rules to deliver the ZIP file(s) to the devices followed by a post-sync install_system_update script pointed at the OS update file that has just downloaded so that the install can be kicked off automatically whenever the sync is complete. File Sync Rules are good for large file deliveries as they can resume if interrupted vs restarting over. They also have the advantage of being able to target Virtual Groups so you can assign them to a standalone filterless VG and then drag devices into that group to target them with the upgrade. You can do the same for the VC8300. 

ZC
Zafer Cigdem
2 years ago

Hi JJC,

As Matt said, that's the way I mostly prefer as well. To filter the devices you can either directly use Virtual Group (VG) and use the available filter inside of the VG such as model as below, so you don't need to move any device location to any new folder this way:

if you need confirmation from your device users to confirm the OS upgrade first, you can also use custom data with the combination of the JavaScript, and you can send out the OS upgrade to only devices that user confirmed (such as below notification).   

I hope it helps. Thank you

Zafer

Solution
RS
Rafael Schäfer
2 years ago

Just to show it up here:

If the filters are also available for the profile assignement and you don't need the filter group for continous lookup of those devices, you can place this directly in the profile assignement as a filter instead of creating a filter group.

T
Thorsten
2 years ago

Hi Zafer, 

how would you enable this confirmation in detail? 
This would be really benefitial for me. 

Many thanks in advance,
Thorsten

ZC
Zafer Cigdem
2 years ago

Hi Thorsten,

You can do it by using the JavaScript (JS) script with the combination of Custom Data. Here is a template JS that you can use: (there may be extra space or paragraph below, as this UI is not the best fit for JS copy paste (even if I translate it to HTML and paste it here, if you may face any issue on below JS, please let me know and I'll try to share in a different way somehow, or you can wait for the blog post that I mentioned at the end.)


var now = new Date()

var survery_feedback_ini_file = new mobicontrol.io.File('/sdcard/Download/survey.ini');

var dialog_box_elements = ['Yes, install', 'Postpone to later'];

mobicontrol.message.createInfoDialog('Would you like to install new OS patch on your device?')

    .withButtons(dialog_box_elements[0], dialog_box_elements[1]).withCallback(onConfirm).show();

function onConfirm(result) {

    if (result.buttonIndex != null) {

        switch (dialog_box_elements[result.buttonIndex]) {

            case 'Yes, install':

                var user_feedback = "New OS upgrade is confirmed by user"

                var survey_ini_textContent= "[User Feedback]\nFeedback=" +user_feedback + "\nFeedback Date time=" + now;

                mobicontrol.message.createInfoDialog("Thanks for confirming to install new OS on your device, Current Date/Time:" +now ).show();

                survery_feedback_ini_file.writeText(survey_ini_textContent);

                break;

            case 'Postpone to later':

                var user_feedback = "New OS upgrade is postponed"

                var survey_ini_textContent= "[User Feedback]\nFeedback=" +user_feedback + "\nFeedback Date time=" + now;

                mobicontrol.message.createInfoDialog("You just postponed to new OS upgrade on your device, Current Date/Time:" +now ).show();

                survery_feedback_ini_file.writeText(survey_ini_textContent);

                break;

        }

    }

}


I'll write a "How To" blog post on this, and as soon as it is published on SOTI Pulse I'll update here with the link as well. I have a draft format with me so I should complete it in 2 days. I hope this helps.

Zafer

T
Thorsten
2 years ago

Hi Zafer,

many thanks for the quick reply. Appreciate your effort for writing a blog post for this, really looking forward! This solutions would be good for us as well.

Regards,
Thorsten 

ZC
Zafer Cigdem
a year ago

Hi Thorsten,

Just to update here, I've completed the blog post as said earlier and still waiting for verification. As soon as it's confirmed and be publicly available, I'll share the link here as promised. Have a great week.

Zafer