Transfer text from WestsideRobotics repo per Danny 11/19/21

Westside Robotics
2021-11-24 12:19:14 -08:00
parent 27ce8a846f
commit 5163c92ee1

229
FTC-Self-Inspect.md Normal file

@ -0,0 +1,229 @@
## Introduction
This page describes the Self Inspect screens in the FTC Driver Station (DS) app and the FTC Robot Controller (RC) app.
A Self Inspect screen provides a snapshot of device status, as it relates to FTC rules for the control system. These rules are described in each season's [Game Manual 1](https://www.firstinspires.org/resource-library/ftc/game-and-season-info), and many are summarized in that manual's **Field Inspection Checklist**.
The Self Inspect screen is provided only as a quick, handy reference to help teams confirm that certain control system elements are up-to-date and properly configured. Self Inspect may be reviewed in Field Inspection at an FTC tournament, but is **not** a comprehensive or official standard of compliance with FTC rules.
Each inspection screen updates automatically, with or without a Restart Robot. This allows quick verification that issues have been resolved.
The challenge is to maximize useful information in a small screen. The Self Inspect layout and graphics evolve with FTC requirements; this page clarifies some of the brief but meaningful captions.
## Device Pairing
Pairing technology is a key aspect of Self Inspect reporting. Remember that RC phones host via **Wi-Fi Direct**, while Control Hubs host via **Standard, or 'infrastructure', Wi-Fi**.
RC and DS phones must have Airplane Mode **ON**, and Wi-Fi **ON** but not connected to any Standard/infra Wi-Fi host such as an internet router or hotspot. Devices should be set to **Forget** any local Wi-Fi networks.
FTC control devices may use these combinations:
- DS phone, RC phone
- DS phone, Control Hub
- Driver Hub, RC phone
- Driver Hub, Control Hub
A DS device (phone or Driver Hub) can display its own DS Self Inspect **and** an RC Self Inspect (for paired RC phone or Control Hub). An RC phone can display only its own RC Self Inspect.
This means that the Self Inspect screens can report as follows:
- [DS Self Inspect 1](#ds-self-inspect-1-on-ds-phone-paired-to-rc-phone), on DS phone paired to RC phone
- [DS Self Inspect 2](#ds-self-inspect-2-on-ds-phone-paired-to-control-hub), on DS phone paired to Control Hub
- [DS Self Inspect 3](#ds-self-inspect-3-on-driver-hub-paired-to-rc-phone), on Driver Hub paired to RC phone
- [DS Self Inspect 4](#ds-self-inspect-4-on-driver-hub-paired-to-control-hub), on Driver Hub paired to Control Hub
<p>
- [RC Self Inspect 1](#rc-self-inspect-1-appearing-on-rc-phone-paired-with-ds-phone), appearing on RC phone paired with DS phone
- [RC Self Inspect 2](#rc-self-inspect-2-appearing-on-ds-phone-paired-to-rc-phone), appearing on DS phone paired to RC phone
- [RC Self Inspect 3](#rc-self-inspect-3-appearing-on-rc-phone-paired-with-driver-hub), appearing on RC phone paired with Driver Hub
- [RC Self Inspect 4](#rc-self-inspect-4-appearing-on-driver-hub-paired-to-rc-phone), appearing on Driver Hub paired to RC phone
- [RC Self Inspect 5](#rc-self-inspect-5-appearing-on-ds-phone-paired-to-control-hub), appearing on DS phone paired to Control Hub
- [RC Self Inspect 6](#rc-self-inspect-6-appearing-on-driver-hub-paired-to-control-hub), appearing on Driver Hub paired to Control Hub
These combinations can display **slightly different** Self Inspect categories, status phrases, and pass/fail results. They are described below; click the **blue link** to explore the Self Inspect screen for that device and combination.
[<p align="right"><i>Return to Top</i>](#introduction)<p>
## DS Self Inspect 1, on DS phone paired to RC phone
<p align="center">[[/images/FTC-Self-Inspect/nDS-1.png]]
<br><i><b>DS Self Inspect 1, on DS phone paired to RC phone</b></i><p>
- Item 1 is a menu with one choice: Disconnect from Wi-Fi Direct. It does work, but sometimes the apps re-pair automatically.
- Item 5 shows the battery level of the device being reported. <i>Fun fact: the green color of the percentage value changes towards **orange** as the charge level goes down.</i>
- Item 8 `Location services` appears only on devices running **Android 8** or higher. This is an SDK/Android technology requirement, not an FTC rule.
- Items 9 and 10 here must be Yes and No. `Wi-Fi Enabled` means the DS device's Wi-Fi radio is **ON**, to use Wi-Fi Direct. It must **not** be connected to a Standard/infrastructure Wi-Fi source, such as an internet router or a Control Hub, when intending to pair with an RC phone.
- Item 11 indicates whether the **device's Wi-Fi Direct name** meets FTC format requirements. It does not check whether the paired device has a matching RC name (team number). In this case, the phones are legally named 2468-A-DS and 2468-A-RC. <i>DS Settings (Driver Station Name) allows only FTC-legal names, but any name can be entered in the DS phone's Android Wi-Fi Direct settings.</i>
- Item 12 verifies that a DS device does **not** have an RC app installed.
- Item 13 ensures the DS app meets the minimum version **for the current FTC season**, based on the device's system date.<p>
<br>
Here's a report from the same phone, with many items **rejected** by Self Inspect.<p>
<p align="center">[[/images/FTC-Self-Inspect/tDS-1-BAD.png]]
<br><i><b>DS Self Inspect 1, on DS phone -- with issues!</b></i><p>
- Item 6 rejects `Airplane Mode` for being **OFF**; it must be on for FTC phones. This is an Android system setting, available at the phone's Settings menu, or easily accessed by swiping down twice from the top of the screen. <i>Turning on Airplane Mode automatically turns off the Wi-Fi radio, as an Android 'convenience'. An FTC user will need to manually turn the Wi-Fi radio back on (although not connected to a local hotspot or internet router).</i>
- Item 7 rejects `Bluetooth` for being **ON**; it must be off for FTC use. This is also an Android system setting; swipe down twice or see Settings menu.
- Item 8 rejects `Location services` for being **OFF**. For devices running **Android 8** or higher, the FTC apps require Location enabled. This is also an Android system setting; swipe down twice or see Settings menu.
- Item 9 shows the DS phone's Wi-Fi radio is **ON**, as required for Wi-Fi Direct **or** Standard Wi-Fi pairing to an RC device.
- Item 10 rejects the DS phone's connection via Standard/infrastructure Wi-Fi, to a device that's **not** an FTC Control Hub. In this case, the phone is connected to a home Wi-Fi network. This and other such networks must be set to **Forget**, in the device's Android Wi-Fi menu. If temporary internet access is needed, 'Forget' that network afterwards. <i>Also **Remove Account** for any Google or other accounts that may have been used during the internet session. Such accounts can cause background activity, notifications and updates -- at the worst possible times.</i>
- Item 11 rejects the device's **Wi-Fi Direct name** for not meeting FTC format requirements. <i>The bad name shown here was created in the DS phone's Android Wi-Fi Direct settings; not possible using the app's DS Settings (Driver Station Name).</i>
- Item 12 rejects the presence of an RC app installed on this DS device. The rejection is not for the older version (6.2), but simply for being an RC app.
[<p align="right"><i>Return to Top</i>](#introduction)<p>
## DS Self Inspect 2, on DS phone paired to Control Hub
<p align="center">[[/images/FTC-Self-Inspect/tDS-2.png]]
<br><i><b>DS Self Inspect 2, on DS phone paired to Control Hub</b></i><p>
The same points apply as for DS Self Inspect 1 (immediately above), except:
- Items 9 and 10 must now be Yes and Yes. The DS phone's Wi-Fi radio is **ON**, and connected via Standard/infra Wi-Fi. It does not indicate **what** the DS phone is connected to; that's covered by Item 11.
- Item 11 shows the Standard Wi-Fi **network name**, or Access Point (AP), that the DS phone is connected to. The check-mark indicates the AP is an FTC legal device (Control Hub) and has a correctly formatted name. This does **not** check that the DS and RC names match (team number). In fact, this phone is 2468-A-DS and this Control Hub is 9999-A-RC, an **illegal combination** to be flagged by the FTC team or the Field Inspector.
[<p align="right"><i>Return to Top</i>](#introduction)<p>
## DS Self Inspect 3, on Driver Hub paired to RC phone
<p align="center">[[/images/FTC-Self-Inspect/tDS-3a.png]]
<br><i><b>DS Self Inspect 3, on Driver Hub paired to RC phone</b></i><p>
- Item 4 appears only on the Driver Hub. The check-mark indicates the Operating System is up-to-date with the current version of the DS app.
- Note that `Airplane Mode` has been omitted from the DS inspection, only for Driver Hub. FTC rules exclude the Driver Hub and Control Hub from the Airplane Mode requirement.
- Item 8 `Location services` appears only on devices running **Android 8** or higher. This is an SDK/Android technology requirement, not an FTC rule.
- Items 9 and 10 must be Yes and No. `Wi-Fi Enabled` means the Driver Hub's Wi-Fi radio is **ON**, to use Wi-Fi Direct for the RC phone. The Driver Hub is technically **able to also be connected** to a Standard/infrastructure Wi-Fi source, including an internet router or a Control Hub. Item 10 confirms this is not happening; see next example.
- Item 11 indicates whether the **device name** meets FTC format requirements. It does not check whether the paired device has a matching RC name (team number).
- Item 12 verifies that the Driver Hub does **not** have an RC app installed.
- Item 13 ensures the DS app meets the minimum version **for the current FTC season**, based on the device's system date. This particular version 7.0.1 does not exactly match the RC phone's 7.0; Self Inspect will soon allow this 'point mismatch'.
<p align="center">[[/images/FTC-Self-Inspect/tDS-3b.png]]
<br><i><b>DS Self Inspect 3, on Driver Hub paired to RC phone</b></i><p>
This Self Inspect screen appeared while the Driver Hub was paired to an RC phone, then was *also* connected to to a Control Hub via Standard Wi-Fi. The DS home screen temporarily showed "Connected" (to RC phone) and "No Heartbeat", then recovered its pairing to the RC phone.
- Item 10 shows the discrepancy. The DS app soon closes this Standard Wi-Fi connection, allowing the Driver Hub to remain paired only with the RC phone.
[<p align="right"><i>Return to Top</i>](#introduction)<p>
## DS Self Inspect 4, on Driver Hub paired to Control Hub
<p align="center">[[/images/FTC-Self-Inspect/tDS-4b.png]]
<br><i><b>DS Self Inspect 4, on Driver Hub paired to Control Hub</b></i><p>
- Item 1 still offers one choice, "Disconnect from Wi-Fi Direct". But now, touching that selection gives this message "There was an error disconnecting from Wi-Fi Direct". That's because the Driver Hub is paired to a Control Hub, thus **not** via Wi-Fi Direct.
- Item 11 shows the Standard Wi-Fi **network name**, or Access Point (AP), that the Driver Hub is connected to. The check-mark indicates the AP is an FTC legal device (Control Hub) and has a correctly formatted name. This does **not** check that the DS and RC names match (team number). In fact, this Driver Hub is 1234-A-DS and this Control Hub is 9999-A-RC, an **illegal combination** to be flagged by the FTC team or the Field Inspector.
<p align="center">[[/images/FTC-Self-Inspect/tDS-4a.png]]
<br><i><b>DS Self Inspect 4, on Driver Hub paired to Control Hub</b></i><p>
This Self Inspect screen appeared after the Driver Hub was paired to a Control Hub, then was connected to a Wi-Fi internet router.
- Item 11 shows the error. The Driver Hub can connect via Standard Wi-Fi to only one AP at a time; this network is not an FTC RC device.
[<p align="right"><i>Return to Top</i>](#introduction)<p>
## RC Self Inspect 1, appearing on RC phone paired with DS phone
Now we change to **Robot Controller** Self Inspect screens. Again, RC screens can be viewed from the DS device **or** from an RC phone, with slight differences.
<p align="center">[[/images/FTC-Self-Inspect/tRC-1.png]]
<br><i><b>RC Self Inspect 1, appearing on RC phone paired with DS phone</b></i><p>
- Item 5 lists the Expansion Hub addresses and firmware levels. This example shows one Expansion Hub, but two can be listed here. A check-mark indicates all firmware is up-to-date based on the current version of the RC app. This item shows "N/A" if no Hubs are connected.
- Item 10 `RC Password` appears only in RC Self Inspect, not in DS Self Inspect. It checks the FTC requirement for a Control Hub password different than the factory default ("password"). Although aimed only at the Control Hub, this item does appear on RC phones (as here) which don't have a default password and thus always get the check-mark.
- Item 14 ensures the RC app meets the minimum version **for the current FTC season**, based on the device's system date. It does not check for a match with the DS app version.
- Item 15 verifies that the RC device does **not** have an DS app installed.
[<p align="right"><i>Return to Top</i>](#introduction)<p>
## RC Self Inspect 2, appearing on DS phone paired to RC phone
<p align="center">[[/images/FTC-Self-Inspect/tRC-2.png]]
<br><i><b>RC Self Inspect 2, appearing on DS phone paired to RC phone</b></i><p>
This RC Self Inspect screen displayed on the paired DS phone is the "same" as the previous one on the RC phone, with two differences:
- The 3-dots menu is missing from the header. This menu offered a single choice, to disconnect the Wi-Fi Direct. But this cannot be performed as an RC action, from a DS phone connected by that same Wi-Fi Direct.
- Item 14 did not appear on the RC phone's display of this RC Self Inspect. Here is the verification that the DS app and RC app have matching versions; in this case both apps are version 7.0. The rejection of 'point mismatches' (e.g. 7.0 vs. 7.0.1) will be corrected soon.
[<p align="right"><i>Return to Top</i>](#introduction)<p>
## RC Self Inspect 3, appearing on RC phone paired with Driver Hub
<p align="center">[[/images/FTC-Self-Inspect/tRC-3a.png]]
<br><i><b>RC Self Inspect 3, appearing on RC phone paired with Driver Hub</b></i><p>
The above screen is the same as RC Self Inspect 1, where the DS device is a DS phone. See the notes there.<p>
<br>
<p align="center">[[/images/FTC-Self-Inspect/tRC-3b.png]]
<br><i><b>RC Self Inspect 3, appearing on RC phone paired with Driver Hub</b></i><p>
This is also the same screen, except the RC phone was connected to an internet router, while paired with a Driver Hub. The Standard Wi-Fi connection caused the RC phone to temporarily lose that pairing, which was able to be restored.
- Item 12 shows the rejection: connected via Standard Wi-Fi, but **not** to an FTC DS device.
[<p align="right"><i>Return to Top</i>](#introduction)<p>
## RC Self Inspect 4, appearing on Driver Hub paired to RC phone
<p align="center">[[/images/FTC-Self-Inspect/tRC-4.png]]
<br><i><b>RC Self Inspect 4, appearing on Driver Hub paired to RC phone</b></i><p>
This display on a paired Driver Hub is the "same" RC Self Inspect screen as the one immediately above, but there are two differences:
- The 3-dots menu is missing from the header. This menu offered a single choice, to disconnect the Wi-Fi Direct. But this cannot be performed as an RC action, from a Driver Hub connected by that same Wi-Fi Direct.
- Item 14 did not appear on the RC phone's display of this RC Self Inspect. Here is the check for matching versions of the DS app and RC app. In this case, the DS app is 7.0.1 and the RC app is 7.0, rejected here as a mismatch. FTC rules will clarify that such 'point mismatches' are acceptable; the Self Inspect screens will be corrected soon.
[<p align="right"><i>Return to Top</i>](#introduction)<p>
## RC Self Inspect 5, appearing on DS phone paired to Control Hub
Looking now at the **Control Hub**, the Self Inspect screen has a few differences. In this example, the robot is configured with **two** Hubs.
<p align="center">[[/images/FTC-Self-Inspect/tRC-5b.png]]
<br><i><b>RC Self Inspect 5, appearing on DS phone paired to Control Hub</b></i><p>
- Again the 3-dots menu is missing from the header. This menu offered a single choice, to disconnect the Wi-Fi Direct. But the Control Hub hosts with Standard Wi-Fi, not with Wi-Fi Direct. In any case, the connection cannot be managed as an RC action, from a DS phone using that same connection.
- Item 3 appears only on RC Self Inspect screens for Control Hub. It verifies the Operating System is up-to-date for the current version of the RC app.
- `Location services` does **not** appear here, since the Control Hub's Android version (Item 4) is **lower** than Android 8.
- Item 5 shows the firmware version of the Expansion Hub embedded in the Control Hub; it's up-to-date for the current version of the RC app.
- Item 6 shows the firmware version and address of the standalone Expansion Hub, also up-to-date.
- Item 7 should always show a high battery charge here, indicating at least the nominal 12V charge level from the robot battery.
- Note that `Airplane Mode` has been omitted from the RC inspection, only for Control Hub. FTC rules exclude the Driver Hub and Control Hub from the Airplane Mode requirement.
- Item 9 does apply here to the Control Hub. Its password must be changed from the factory default ("password").
- Items 10 and 11 should be Yes and Yes for Control Hub, which uses only Standard/infra Wi-Fi. Item 11 does not indicate **what** the Control Hub is connected to (but it must be the DS phone displaying this screen).
- Item 12 shows the Standard Wi-Fi **network name**, or Access Point (AP), that is broadcast by the Control Hub. The check-mark indicates the AP has a correctly formatted FTC name. This does **not** check that the DS and RC names match (team number). In fact, this DS phone is 2468-A-DS and this Control Hub is 9999-A-RC, an **illegal combination** to be flagged by the FTC team or the Field Inspector.
- Item 14 appears only on DS displays of RC Self Inspect. Here is the check for matching versions of DS app and RC app; in this case both apps are version 7.0. The rejection of 'point mismatches' (e.g. 7.0 vs. 7.0.1) will be corrected soon.
- Item 15 verifies that an RC device does **not** have an DS app installed. This would be quite a mistake for a Control Hub, lacking an onboard screen.
[<p align="right"><i>Return to Top</i>](#introduction)<p>
## RC Self Inspect 6, appearing on Driver Hub paired to Control Hub
For a Control Hub, the Self Inspect categories displayed on Driver Hub are the same as on DS phone, immediately above.
<p align="center">[[/images/FTC-Self-Inspect/tRC-6b.png]]
<br><i><b>RC Self Inspect 6, appearing on Driver Hub paired to Control Hub</b></i><p>
The only reporting difference here is the 'mismatch' between the Driver Hub's DS app version of 7.0.1 and the Control Hub's 7.0. This is likely to happen since Driver Hubs are typically auto-updated, in this case to a DS version intended only for old Android 6 phones. Soon a correction will accept such 'point version' mismatches.<p>
<br>
<p align="center">[[/images/FTC-Self-Inspect/tRC-6a.png]]
<br><i><b>RC Self Inspect 6, appearing on Driver Hub paired to Control Hub</b></i><p>
Lastly... with no connection, a DS device cannot display any information about the RC device status.
[<p align="right"><i>Return to Top</i>](#introduction)<p>
## Summary
The Self Inspect screen is a quick, handy reference to help teams confirm that certain control system elements are up-to-date and properly configured.
Self Inspect may be reviewed in Field Inspection at an FTC tournament, but is **not** a comprehensive or official standard of compliance with FTC rules.
Each inspection screen updates automatically, with or without a Restart Robot. This allows quick verification that issues have been resolved.
[<p align="right"><i>Return to Top</i>](#introduction)<p>
=============
<i>Questions, comments and corrections to westsiderobotics@verizon.net</i>