l12 - device health
TRANSCRIPT
-
8/10/2019 L12 - Device Health
1/39
1COMPANY CONFIDENTIAL
L12Device Health
Jeff Eaton
-
8/10/2019 L12 - Device Health
2/39
2COMPANY CONFIDENTIAL
L07 - Device Health - Agenda
Device HealthOverview
Dashboard GUI
SmartSystems Console Properties Viewer
Device Health XML for ITCSSApiRules Language
Ready-To-Work Control
SmartSystems Device Health Rules Editor
-
8/10/2019 L12 - Device Health
3/39
3COMPANY CONFIDENTIAL
DeviceHealth Overview
Collect Data, Process Rules, Report Status
Periodically collect health dataRules Engine processes health data with user programmablerules
Rules trigger Ready-To-Work status (Blue Light)Dashboard GUI shows current state and reasons for thisstateRules trigger messages sent up line to SmartSystemsconsoleView health data via SmartSystems Properties ViewerDevice Support
70 Series, CK3R/X, CN50, CS40, CV41, CV61
-
8/10/2019 L12 - Device Health
4/39
4COMPANY CONFIDENTIAL
Health Data Collected
Detailed battery health statistics for on-time replacementNetwork interface statistics for trouble-shooting connectivityissues
Memory, Storage, Process info for monitoring criticalthreshold violations
Scanner statistics to trend throughput deviations acrossdevice pools
Version information to ensure up to date software
On-device as well as remote alerts upon deviations
NOTE: Info accessible via any device management console!
-
8/10/2019 L12 - Device Health
5/39
5COMPANY CONFIDENTIAL
BackupBatteryFlag
BackupBatteryFul lL i feTime
BackupBatteryL i fePercent
BackupBatteryL i feTime
BackupBatteryVoltage
BatteryChargerState
BatteryCurrent
BatteryFlag
ManufacturedDate
Collected Health Items - Battery
BatteryHealth
BatteryTemperature
BatteryChemistry
BatterymAHourConsumed
ChargingTime
ExtremeTemperatureTime
HighTemperatureTime
LastFul lCharge
LowTemperatureTime
BatteryLastChanged
BatteryLi fePercent
BatteryLi feTime
BatteryHighTemperatureReached
BatteryLowTemperatureReached
BatteryPrevCPUUsage
BatteryTemperature
BatteryVoltage
PartNumber
SerialNumber
UsageTime
What if some batteries are not lasting through a shift?
-
8/10/2019 L12 - Device Health
6/39
6COMPANY CONFIDENTIAL
Collected Health Items - WLANWLAN\AccessPoint
AssociatedAuthent icat ionBSSIDChannelEncrypt ionSSID
WLAN\AdapterStatsACKFai lureCountFCSErrorCount
Fai ledCountFrameDuplicateCountMult ipleRetryCountPacketReceiveErrorsPacketSendErrorsPacketsReceivedPacketsSentRTSFailureCount
ReceivedFragmentCountRetryCountTimeUnassociatedTotalRoamsTransmit tedFragmentCount
WLAN\AdapterAPIPAAntennaCountryDHCPDHCPLeaseExpiresDHCPLeaseObtainedDHCPServerDefaultGatewayDriverEnabled
HardwarePresentIPIntermecDhcpVersionLink_MbpsMAcNICnoti f icat ionsNoise_dBmPower
RSSI_dBmRoamThreshold_dBmSNR_dBSubnetMaskTxPower_mWZeroConf ig
-
8/10/2019 L12 - Device Health
7/397COMPANY CONFIDENTIAL
Collected Health Items - WLAN
WLAN\Association\00:23:ab:24:b2:c0
Assoc ia t ions
AverageTimeAssociated_seconds
MaxLink_Mbps
MaxNoise_dBm
MaxRSSI_dBmMaxTxPower_mW
MinLink_Mbps
MinNoise_dBm
MinRSSI_dBm
MinTxPower_mW
TimeAssociated_seconds
WLAN\BSSID\00:02:2d:64:e1:5e
Conf igurat ion\ATIMWindow
Conf igurat ion\BeaconPer iod
Conf igurat ion\DSConf ig
InfrastructureMode
MacAddress
NetworkType
Privacy
RSSI
SSID
SupportedRates\0
SupportedRates\1
SupportedRates\2SupportedRates\3
SupportedRates\4
SupportedRates\5
SupportedRates\6
SupportedRates\7
Access Points
the device has been associated with
Access Point List
-
8/10/2019 L12 - Device Health
8/398COMPANY CONFIDENTIAL
Scanning Health
StateGood Reads
Trigger Pulls
Trigger ReleasesAccumulated Decode Time
Internal Scanner only!!
-
8/10/2019 L12 - Device Health
9/399COMPANY CONFIDENTIAL
Dashboard GUI
Accessed via ? key on the keypad
Displays current ReadyToWork status
Displays select device health informationCurrent screen and health data are capturedwhen Dashboard App starts
Disable/enable Rules causing unhealthy status
-
8/10/2019 L12 - Device Health
10/3910COMPANY CONFIDENTIAL
Dashboard GUI
-
8/10/2019 L12 - Device Health
11/3911COMPANY CONFIDENTIAL
Dashboard Configuration
Enable/Disable Dashboard GUI
-
8/10/2019 L12 - Device Health
12/39
12COMPANY CONFIDENTIAL
Dashboard GUI Configuration
Dashboard GUI Screen Capture Location
-
8/10/2019 L12 - Device Health
13/39
13COMPANY CONFIDENTIAL
SmartSystems Console Properties Viewer
-
8/10/2019 L12 - Device Health
14/39
14COMPANY CONFIDENTIAL
SmartSystems API
Set of APIs to manage settings locallyDevice Management Resource Kit - IDL
Device support (7xx, CVx, CNx, CKx, CS40)
Language support, C, C++, C#, VB.Net, JavaXML DrivenSmartSystems configuration XML
Now can be used to retrieve Device Health items
Health items requ ire Managementl icense ondevice
-
8/10/2019 L12 - Device Health
15/39
15COMPANY CONFIDENTIAL
Licensing
No license required to access device health throughdashboard on device
Management License required for any Partner applicationor Remote Console (including SmartSystems Console) to
access device healthPer device license
Only applicable on devices with 4.XX SmartSystems Client
60-day demo period available
Part Number: 454-048-001
List Price: $20
-
8/10/2019 L12 - Device Health
16/39
16COMPANY CONFIDENTIAL
SmartSystems Settings XML - Device Health
How do you figure out the name path??
SmartSystems Asset Message
Health Data Model Files Intermec\SmartSystems\SS_Lib\Tools\RulesEditor\DataModels
-
8/10/2019 L12 - Device Health
17/39
17COMPANY CONFIDENTIAL
Exercise 1ITCSSApi
Retrieve individual health items via the ITCSSApi
Lab12Device Health\Exercise 1 Ins truc t ion s.txt
-
8/10/2019 L12 - Device Health
18/39
18COMPANY CONFIDENTIAL
SmartSystems Settings XMLDevice Health
-
8/10/2019 L12 - Device Health
19/39
19COMPANY CONFIDENTIAL
Exercise 2ITCSSApi
Retrieve all health data via the ITCSSApi
Lab12Device Health\Exercise 2 Instru ct ions .txt
-
8/10/2019 L12 - Device Health
20/39
20COMPANY CONFIDENTIAL
Device Health Rules - Overview
Simple Interpreted Programming LanguageMonitor Health, Configuration and RegistryItems
Allows for Setting the Ready-To-Work state /lightUser Defined Health Messages with the RtwstateExecuted when health data is collected or areferenced configuration item or registry item is
manipulatedRequires a Rules file and a Language XML file
-
8/10/2019 L12 - Device Health
21/39
21COMPANY CONFIDENTIAL
Example Rules File Content
/* RTW State Defin i t ions */INT RTW_BROKEN = 1;
INT RTW_UNHEALTHY = 2;
INT RTW_HEALTHY = 3;
/* b ind var iab le to a health item */INT MemoryL oad = @[heal th/System/Memo ry/MemoryL oad];
/*If the MemoryLoad is greater than 90%, set the dev ice to UnHealthy */
i f (Memo ryLoad > 90)
{
SetRtwState (RTW_UNHEALTHY, " " , 11, __BLOCK__);
}
-
8/10/2019 L12 - Device Health
22/39
22COMPANY CONFIDENTIAL
Device HealthXML RTW number to text map
-
8/10/2019 L12 - Device Health
23/39
23COMPANY CONFIDENTIAL
Health RulesControlling Ready-To-Work
INT RTW_BROKEN = 1;
INT RTW_UNHEALTHY = 2;
INT RTW_HEALTHY = 3;
SetRtwState (RTW_UNHEALTHY, Optional Text, 40, __BLOCK__);ForceAssetMsg ();
Rtw State Order of Precedence: Broken
Unhealthy
Healthy
-
8/10/2019 L12 - Device Health
24/39
-
8/10/2019 L12 - Device Health
25/39
25COMPANY CONFIDENTIAL
Health Rules Language - Basics
Data Bindings
Health, Configuration, Registry, Static STRING systemUpTime = @[health:/System/UpTime];
INT tcoGUIEnabled = @[cfg:/Device Monitor/DeviceHealth/TCOGuiEnabled];
INT intRegCheck =@[reg:/HKEY_LOCAL_MACHINE/Software/MyCompany/IntValue];
INT loopCnt = @[static/loopCnt];
Strings are initialized to or empty strings
Integer and Floats are initialized to 0
Health Definition filesLocated in ss_lib\Tools\RulesEditor\DataModels
NetworkHealthDataModel.xml SystemHealthDataModel.xml WWANConfigletDataModel.xml
-
8/10/2019 L12 - Device Health
26/39
26COMPANY CONFIDENTIAL
Health Rules Language - Basics
Operatorsarithmetic: -, +, *, /
Logical: ==, =,
Boolean: &&, ||, ! (and, or, not)
Assignment: =
Threshold: T
-
8/10/2019 L12 - Device Health
27/39
27COMPANY CONFIDENTIAL
Health Rules Language - Basics
No looping mechanismNested If / else is supported
if (a > b) || (c < d)
{
/* do someth ing */
}
else
{
if (ab > (5 + 10 + 20))
{
/* do someth ing else */}
}
-
8/10/2019 L12 - Device Health
28/39
28COMPANY CONFIDENTIAL
Health Rules Language - Basics
STRING IntrinsicsINT LENGTH (STRING arg1)
INT MATCH (STRING arg1, STRING arg2)
STRING CONCAT (STRING arg1, STRING arg2)
TIME IntrinsicsINT BETWEEN(TIME time1, TIME time2, TIME time3)
STRING TO_STRING(TIME time1)TIME TO_TIME(STRING string1)
-
8/10/2019 L12 - Device Health
29/39
29COMPANY CONFIDENTIAL
Rules LanguageStatics
INT iterCounter = @[static/IterationCounter];
TO_STRING (iterCounter);
INT iterCoun ter = @[stat ic/ Iterat ionCou nter];STRING tempBuf = " " ;
i terCoun ter = iterCounter + 1;
i f (iterCounter > 2)
{
tempBu f = CONCAT (" Iterat ion Coun ter = " , TO_STRING (iterCou nter));
i terCoun ter = 0;
SetRtwState (RTW_UNHEALTHY, tempBuf, 0, __BLOCK__);
}
-
8/10/2019 L12 - Device Health
30/39
30COMPANY CONFIDENTIAL
Rules Editor
Accessed via the SmartSystems ConsoleMenu Tools->Start Rules Editor
Right Click a Rule Bundle
Allows you to create / edit rule sets
Textual and graphic representation of rules
Automatically creates rule bundles
Bundles can update one or more devices with rule
setsNo reboot required to update rules
-
8/10/2019 L12 - Device Health
31/39
31COMPANY CONFIDENTIAL
Rules Editor
-
8/10/2019 L12 - Device Health
32/39
32COMPANY CONFIDENTIAL
Exercise 3Rules EditorAdd Config Item Rule
Create a Configuration Item Rule
Lab12Device Health\Exercise 3 Instru ct ions .txt
STRING Enable_Code_39 = @[cfg/Data Collect ion /Scanners:0/Symbo log ies/Code
39/Enab le Code 39];
i f (Enable_Code_39 != " 1")
{
SetRtwState(RTW_UNHEALTHY, "" , 50, __BLOCK__);
}
-
8/10/2019 L12 - Device Health
33/39
33COMPANY CONFIDENTIAL
Exercise 4Rules EditorAdd Registry Item Rule
Create a Registry Entry Health Rule
Lab12Device Health\Exercise 4 Ins truc tion s.txt
STRING RuleCheckValue =
@[reg/HKEY_LOCAL_MACHINE/SOFTWARE/Intermec/RuleCheckValue];
if (RuleCheckValue != 1")
{SetRtwState(RTW_UNHEALTHY, " " , 50, __BLOCK__);
}
-
8/10/2019 L12 - Device Health
34/39
34COMPANY CONFIDENTIAL
SmartSystems Settings XMLRtw Info
-
8/10/2019 L12 - Device Health
35/39
35COMPANY CONFIDENTIAL
Exercise 5ITCSSApi
Retrieve Rtw state data via the ITCSSApi
Lab12Device Health\Exercise 5 Instru ct ions .txt
-
8/10/2019 L12 - Device Health
36/39
36COMPANY CONFIDENTIAL
What about Printers?
You can access bluetooth connected printer healthinformation via the connected computer.
New Desktop printers have health information and
you can write rules for them. There is no RuleEditor Support.
You must download rules to a persistent directoryand point the configuration parameter at them.
-
8/10/2019 L12 - Device Health
37/39
37COMPANY CONFIDENTIAL
What about Printers?
Printer Demo
Show Printer Health Fields from an Asset Message
Show example rules
Send rules to printer and configure printer to usethem
-
8/10/2019 L12 - Device Health
38/39
38COMPANY CONFIDENTIAL
Thank You!
Questions & Discussion
-
8/10/2019 L12 - Device Health
39/39