How to Customize Your System X-ray on Fire TV

The System X-Ray feature on Fire TV Stick and Fire TV run on Fire OS 5 or higher. This new addition lets developers gain access to a visual tracking screen that measures all metrics of devices and applications while in use. Read on to see how to configure this feature and make the most out of it to diagnose issues with apps or games.

1) Turn System X-Ray on
There are three distinct ways to enable it depending on which is the device you want to do it from
  • Remote Control Press and hold two buttons at the same time, the “D-Pad Down” and the “D-Pad Center” for five seconds. Then, press the menu button.
    Game Controller Again, holding two buttons down together for five seconds and then the menu button will activate the menu, in this case are the “A” and “Y”.
    Computer If ADB is “On”, then you can type “adb shell am start com.amazon.ssm/com.amazon.ssm.ControlPanel” from the command prompt of the connected computer.
Once the Menu appears on the screen, turn the toggle from the “Off” to the “On” position.
Here are the different menus and the customizable options in them:
Diagnosis
Display
HDMI Mode

This shows the resolution and the frequency being used at the FireTV. This resolution can be changed from:
  • Settings>Display & Sounds>Display>Video Resolution.
url]

url]

url]

CPU
This part of the display shows a column for each core of the CPU being used. There´s a color code available ranging from green to red in terms of usage percentage. There are no customizable options on this menu, it´s an informational one only.

Memory
This menu shows three things:
  • ■ The Proportional Set Size of applications running in the foreground in blue.
    ■ The memory used by other applications appears in gray.
    ■ The total available memory in that is not currently being used in white.

Network
This menu shows the strength and other measurements of the Wi-Fi signal the Fire TV is operating on.
  • RSSI Numbers for measurement are always negative. Color coding is goes from green (strong) to red (weak).
    System Downloaded data into the system in real time measured in bits/second. If the number displayed is zero, it means there´s no data being downloaded, it is not connected with signal strength.
    Visible Measures the downloaded data by the foreground app in bits/second.

Custom
The sample shows how to use the Context class for getting the needed classes and resources for the environmental needs.

1. Call the helper method
System X-Ray only displays the app section when it is in the foreground, but if you put the action com.amazon.ssm.METRICS_UPDATE as the action initializer and aggregate your app´s package name as an extra, the getPackageName() helper method can be called.

2. Metrics names
All metrics names have to be Metrics1, Metrics2 or Metrics3. No other name shall be considered. While keeping it might be truncated, metrics can be set any desired value string. Metrics will be later displayed by System X-Ray like this: [name] : [value].

3. Metrics colors
All metrics are gray by default. To change that, you will need to put an extra addition to the Intent. Extras must be named Color1, Color2, Color3 with values being blue, green, red and yellow. Metric´s color and name must match for the first to be applied. You can have more than one metric with the same color since color-values are independent.

4. Add the App section
Once the previous steps are completed and your intent is completely set up, it is time to call send Broadcast(Intent) method. This will add the App section and display in it the metrics with the values you have specified for each.