• Articles
  • Security
  • 2024
  • 12
  • Making a smartphone a Push-To-Talk radio, calling a dispatcher, or sending an SOS with one touch. Review of XCover7 and MIL-STD-810H

Making a smartphone a Push-To-Talk radio, calling a dispatcher, or sending an SOS with one touch. Review of XCover7 and MIL-STD-810H

The very first Samsung rugged device appeared back in 2011. It looks like a reinforced case and a replaceable battery, which extends the life of the smartphone, but it's not that simple. The rugged model line is designed to reduce business costs when operating smartphones in the long term because the conditions in production are harsh, and the employees' attitude towards the device is not careful.

In this article, I will describe little-known details of using smartphones in business and talk about the Galaxy XCover7 rugged smartphone model, as well as three ways to program the XCover button on its left side.

Brief overview of the device and MIL-STD-810H


I would like to start with non-obvious specific cases, as ruggedness is not just a reinforced and unusual-looking body. It can be noisy in production, so the speakers of business devices sound louder. The touchscreen is ready to work with gloves, as well as to work in rain and snow (real life). These settings are available, see below.

It is clear that the ability to replace the battery extends the life of the smartphone: it gets "tired" and sags over the years - replaced and no problems. However, the main topic of real durability is the "unwinding" of Type-C due to constant and not the most careful connections to the charger (employees are not careful, and in general). For this, there are POGO pin connectors near the Type-C port (visible in the figure below), as well as special chargers designed for one or several (up to twenty) devices, which are simply more convenient and reliable in everyday use. This is an additional accessory.

What other needs are there and how does the device address them?

eSIM on a corporate device is really important, so it was added. Production, management, logistics, and administration of plastic cost a lot of money if you calculate it. There are also resourceful employees who remove the SIM card from the device and use the traffic for personal purposes. If people can do something, they do it. Also real life.

What about the parameters?

  • Battery (15W) 4050mAh (would like more, but it affects the size and weight, and convenience is important)

  • if autonomy is really a topic, then the battery can be changed on the go (replaceability)

  • Corning® Gorilla® Glass Victus®+ (and that's good)

  • 5G and Android 14 (and that's relevant)

  • Screen 6.6 inches

  • Screen resolution FHD+

  • Memory 6Gb (enough for most business tasks)

  • Storage 128Gb expandable up to 1Tb

  • Dimensions: 169.0 x 80.1 x 10.2mm, 240 g.

  • Wi-Fi: 802.11 a/b/g/n/ac 2.4G+5GHz, Wi-Fi Direct

  • Bluetooth: BT5.3

  • USB: USB 2.0

  • GNSS Support: GPS, Glonass, Beidou, Galileo, QZSS

  • Sensors: Accelerometer, Gyro, Geomagnetic, Light, Proximity

  • NFC: UICC (needed in B2B)

Performance is limited by security requirements and common sense. This is not a beautiful and fashionable flagship, but a workhorse whose task is to "work hard". Therefore, the electronic components are designed so that the smartphone passes more stringent tests than IP68, of the standard MIL-STD-810H

Here are the most interesting examples of them:

  • Vibrations along three axes from 20 to 20000Hz for an hour on each

  • Blowing at 8m/s with sand and dust 10g/m3 for an hour on each of the 6 sides at 25 and 65 °C

  • Exposure in chambers for 2 hours at temperatures of -51 °C and 63 °C and different pressures

  • Sharp temperature changes from -20 °C to +60 °C

  • Impact reactions along all axes with different parameters

  • Three-day tests with salt fog and freezing rain

  • Dropping on plywood from a height of 1.5m on each edge and side 26 times

  • Ice build-up up to 6mm at -10 °C

  • Solar radiation test cycles with a maximum temperature of +54° C and wind

I remember, with the release of the first foldable flagships Flip and Fold, there was a topic that you should not handle them roughly, constantly throwing them on the bed. With great luck, you can throw them away. XCover is designed for much less delicate conditions than flagships. Where does the salty fog come from? Sea ports and transportation. Freezing rain? Receiving cargo and external inspections can take place outdoors in any weather. Warehouses with frozen storage. Falls? As much as you want. Desert conditions, full of sand and wind, or comparable to Arctic conditions, are common in the mining industry.

Programming and setup


How can you assign the desired functionality to the XCover button? Of course, your application is involved in this, but how do you link actions to buttons to call the appropriate functions?

The first way is manual setup in the Settings > Advanced Settings > XCover section. The application includes the logic for handling the press and adds metadata to the AndroidManifest.xml so that it appears in the section among the available ones



  
    
  

When the user presses or releases the XCover button, the device sends an intent with the following properties:

Action

"com.samsung.android.knox.intent.action.HARD_KEY_REPORT"

Extra key settings

"com.samsung.android.knox.intent.extra.KEY_CODE"
"com.samsung.android.knox.intent.extra.KEY_REPORT_TYPE"

The KNOX SDK has predefined constants that are used to define buttons and presses

Public static final int KEYCODE_PTT

1015 (0x000003f7)

Public static final int KEYCODE_EMERGENCY

1079 (0x00000437)

Public static final int KEY_ACTION_DOWN (key press)

1 (0x00000001)

Public static final int KEY_ACTION_UP (key release)

2 (0x00000002)

Below is an example code that parses the intent for the XCover button and checks whether it was pressed or released

String intentAction = intent.getAction();
if ("com.samsung.android.knox.intent.action.HARD_KEY_REPORT".equals(intentAction)) {
  int keyCode = intent.getExtra(com.samsung.android.knox.intent.extra.KEY_CODE)
  int keyReportType = intent.getExtra(com.samsung.android.knox.intent.extra.KEY_REPORT_TYPE)
  if (keyCode == KEYCODE_PTT && keyReportType == 1) {
    // XCover key pressed
  }
  else if (keyCode == KEYCODE_PTT && keyReportType == 2) {
    // XCover key released 
  }
}

The second way is that application developers define their own intents in the manifest


  
    
    
  

The KNOX_CUSTOM_SETTING permission is added to ensure that the application will expect an intent from specialized platform services such as the Knox Service Plugin or Knox Configure, through which the company's IT administrator configures the application compliance. They need to report the processed intents.

A feature of Knox Configure is the ability to use the service without MDM, with the possibility of automatic (Out-of-The-Box) deployment of settings, through uploading serial numbers to the service by an official reseller or QR code.

The third way is to use the KNOX SDK for ISV (Independent Software Providers), which does not require activation of KNOX licenses on the device if it is in Device Owner mode.

Hardware button code values on the device:

Volume up: 24
Volume down: 25
Power (side): 26
Push-to-Talk (XCover): 1015
Top (Emergency, Xcover): 1079

The last button is on the XCover6 Pro, as I noted under the first picture in the article. It is often called Emergency because it is used for SOS alerts in emergency situations at work

Uri uri = Uri.parse("content://com.samsung.android.knox.sdk/config/settings");
ContentValues contentValues = new ContentValues();
contentValues.put("component-name", "com.android.settings/com.android.settings.Settings");
contentValues.put("event", "long-press");
contentValues.put("key-code", "24");
contentValues.put("action", "activity");
String selection = "key=?";
String[] selectionArgs = new String[] {"hardware-key"};
mContext.getContentResolver().update(uri, contentValues, selection, selectionArgs);

How it is used

The most well-known functionality is the Push-To-Talk or Walkie-Talkie. SOS functionality is often implemented, connecting to a dispatcher and transmitting location data, as well as quickly reading barcode data to fill out checklists for inventory management. For this, of course, a separate application is also used - Knox Capture. The option is also available from the keyboard, but many find it more convenient to use the button. By the way, Knox Capture is part of the Knox Suite service, an annual license for which comes with the device, it includes Knox Manage (MDM) and other useful KNOX services.

Here are some industry examples:

Retail. The largest known deal is Walmart's purchase of 740,000 rugged Samsung devices, which are also used for the Push-to-Talk function with the XCover button. Another use of the button was its integration with Knox Capture to automate form filling with barcode data.

Transport. Contrary to popular belief, "if a car, then a navigator, and therefore a tablet," in fact, operational communication with the driver, who is not always in the cab, is much more important. He must constantly have the device with him, which is inconvenient in the case of a tablet. And the button is needed to implement emergency communication with the dispatcher.

In manufacturing, construction, and mining, the button is needed not only for push-to-talk radios but also for safety, that is, SOS calls in emergency situations. Operators usually organize Private LTE networks for customers, in which the smartphone works, and this is a common practice for Push-To-Talk and XCover. And the presence of a jack connector will also come in handy here to connect any wired headphones or so-called tangent.

Conclusions

Few people know that Samsung has rugged devices. Rugged devices are a special specialized niche in which not only buttons, which have been removed from regular smartphones, matter. Not only readers can ask the question: do we need all this...? Maybe it's cheap and cheerful to use typical consumer smartphones in business? Whether the game is worth the candle should be decided by showing sufficient discernment in short-term and long-term effects (measure seven times, cut once). The price, in tandem with the illusion of the importance of immediate benefits, always plays against long-term goals and real savings.

Comments