https://www.helpforsmartphone.com/public/en/zte/android/android-6-0/guides/23/Update-software-ZTE-Android
Ultimate Goal Season uses version 6.0 of the driver station app
The old phones currently have android version 4.4.3 (kit kat) on the red phones
Latest version of android supported by nexus 5 is android 6.0 (marshmallow)
https://github.com/FIRST-Tech-Challenge/FtcRobotController
https://nexus5.gadgethacks.com/how-to/install-android-6-0-marshmallow-your-nexus-right-now-0165090/
note that adb and fastboot were already installed on my mac
and here is where they are installed on my mac. ~/Library/Android/sdk/platform-tools
Go to https://developers.google.com/android/images to get the image for the nexus 5 (which is the red phone)
copy the zip file into and here is where they are installed on my mac. ~/Library/Android/sdk/platform-tools
unzip it, go into the unzipped directory and copy all the files in the directory to copy the zip file into and here is where they are installed on my mac. ~/Library/Android/sdk/platform-tools
now type "adb reboot-bootloader" which will cause the nexus phone to boot into boot-loader mode, which is a black screen with green and white text
(you may get a message on your phone asking permission to allow usb debugging, click on the checkbox and say yes, then re-rerun the "adb reboot-bootloader" command)
(base) ~/Library/Android/sdk/platform-tools/hammerhead-m4b30z $ adb reboot-bootloader
* daemon not running; starting now at tcp:5037
* daemon started successfully
error: device unauthorized.
This adb server's $ADB_VENDOR_KEYS is not set
Try 'adb kill-server' if that seems wrong.
Otherwise check for a confirmation dialog on your device.
// here the phone prompted me whether to allow usb debugging,
// so i clicked the check box to always allow this device to do
// usb debugging and then did the "adb reboot-bootloader" command again and then I was in fastboot mode
(base) ~/Library/Android/sdk/platform-tools/hammerhead-m4b30z $ !!
adb reboot-bootloader
(base) ~/Library/Android/sdk/platform-tools/hammerhead-m4b30z $ fastboot oem unlock
now you are ready to unlock your bootloader, so on your mac terminal window in the platform-tools directory type the following: fastboot oem unlock
then on your nexus phone, you will see a choice. Select "Yes Unlock bootloader (may void warranty)
press the volume up arrow to highlight the "Yes" option, then press the power button to select it
It will take a few minutes to do this and when it is done, it will return you to bootloader mode
now install the marshmallow (android version 6.0) update by typing the following in your mac terminal window from the plat-form tools directory: flash-all.sh
when you do this, you may get error messages indicating there are missing .img files. However, it was not necessary to do the manual installation of img files. the flash-all.sh was all that was necessary. then there were these 4 circles that were there for awhile and eventually it powered off and when i eventually powe
-----------------------------------------------------------
(base) ~/Library/Android/sdk/platform-tools $ more flash-all.sh
#!/bin/sh
# Copyright 2012 The Android Open Source Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
fastboot flash bootloader bootloader-hammerhead-hhz20h.img
fastboot reboot-bootloader
sleep 5
fastboot flash radio radio-hammerhead-m8974a-2.0.50.2.30.img
fastboot reboot-bootloader
sleep 5
fastboot -w update image-hammerhead-m4b30z.zip
(base) ~/Library/Android/sdk/platform-tools $ ls
NOTICE.txt hprof-conv
adb image-hammerhead-m4b30z.zip
api lib64
bootloader-hammerhead-hhz20h.img make_f2fs
dmtracedump mke2fs
e2fsdroid mke2fs.conf
etc1tool package.xml
fastboot radio-hammerhead-m8974a-2.0.50.2.30.img
flash-all.bat sload_f2fs
flash-all.sh source.properties
flash-base.sh sqlite3
hammerhead-m4b30z systrace
(base) ~/Library/Android/sdk/platform-tools $ flash-all.sh
Sending 'bootloader' (3124 KB) OKAY [ 0.320s]
Writing 'bootloader' OKAY [ 0.519s]
Finished. Total time: 1.034s
Rebooting into bootloader OKAY [ 0.119s]
Finished. Total time: 0.119s
Sending 'radio' (45489 KB) OKAY [ 1.700s]
Writing 'radio' OKAY [ 3.130s]
Finished. Total time: 5.028s
Rebooting into bootloader OKAY [ 0.120s]
Finished. Total time: 0.120s
--------------------------------------------
Bootloader Version...: HHZ20h
Baseband Version.....: M8974A-2.0.50.2.30
Serial Number........: 0be147a102e51285
--------------------------------------------
extracting android-info.txt (0 MB) to RAM...
Checking 'product' OKAY [ 0.098s]
Checking 'version-bootloader' OKAY [ 0.100s]
Checking 'version-baseband' OKAY [ 0.100s]
extracting boot.img (8 MB) to disk... took 0.027s
archive does not contain 'boot.sig'
Sending 'boot' (9156 KB) OKAY [ 0.480s]
Writing 'boot' OKAY [ 0.780s]
archive does not contain 'dtbo.img'
archive does not contain 'dt.img'
extracting recovery.img (9 MB) to disk... took 0.025s
archive does not contain 'recovery.sig'
Sending 'recovery' (10014 KB) OKAY [ 0.530s]
Writing 'recovery' OKAY [ 0.830s]
archive does not contain 'vbmeta.img'
archive does not contain 'vbmeta_system.img'
archive does not contain 'vendor_boot.img'
archive does not contain 'super_empty.img'
archive does not contain 'odm.img'
archive does not contain 'product.img'
extracting system.img (996 MB) to disk... took 4.265s
archive does not contain 'system.sig'
Sending 'system' (1020657 KB) OKAY [ 33.145s]
Writing 'system' OKAY [ 68.902s]
archive does not contain 'system_ext.img'
archive does not contain 'vendor.img'
archive does not contain 'vendor_dlkm.img'
Erasing 'userdata' OKAY [ 8.662s]
mke2fs 1.45.4 (23-Sep-2019)
Creating filesystem with 3351034 4k blocks and 838832 inodes
Filesystem UUID: 7d3ae999-8f7a-4dcd-b2da-28d7b64be742
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208
Allocating group tables: done
Writing inode tables: done
Creating journal (16384 blocks): done
Writing superblocks and filesystem accounting information: done
Sending 'userdata' (124 KB) OKAY [ 0.126s]
Writing 'userdata' OKAY [ 0.204s]
Erasing 'cache' OKAY [ 0.560s]
mke2fs 1.45.4 (23-Sep-2019)
Creating filesystem with 179200 4k blocks and 44832 inodes
Filesystem UUID: 8c8c4d7f-b41d-407d-b4c7-f98eeaa22693
Superblock backups stored on blocks:
32768, 98304, 163840
Allocating group tables: done
Writing inode tables: done
Creating journal (4096 blocks): done
Writing superblocks and filesystem accounting information: done
Sending 'cache' (76 KB) OKAY [ 0.211s]
Writing 'cache' OKAY [ 0.191s]
Rebooting OKAY [ 0.100s]
Finished. Total time: 191.350s
(base) ~/Library/Android/sdk/platform-tools $
---------------------------------------------------------------
Then wait until it finishes and then you are in marshmallow version of android. Note that it was not necessary to do the manual installation of img files. It was sufficient just to do the initial flash-all.sh
note then you will get 4 colorful circles turning, so just wait patiently until it settles down
2) then use volume up and down buttons to select recovery mode, then power button to select recovery mode. then you will see the android robot with a red exclamation
3) then click power button and volume up button at the same time until you see the recovery menu, then stop pushing both buttons
4) then use the volume down button to select "wipe data/factory reset", then click the power button to select it
5) wait patiently while the 4 blue dots circle until the android os is ready to come up
https://www.androidauthority.com/nexus-5-problems-539900/
Sometimes after the phone turns off improperly it has a difficult time restarting, try using the device recovery steps to reboot the phone correctly by;
Hold down both the Volume Up, Volume Down, and Power buttons for 30 seconds or until you see the android lying on his back with his belly open. This is the bootloader. Use the volume keys to navigate to "Power off," and touch the power key. Trying powering up normally.
If it worked when you plug in your phone you should see indication of it charging.
If the above steps didn't work, another option is to wipe data to reset to factory settings (which means you would lose all your data currently on the phone!)
Once again hold down the Volume Up, Volume Down, and Power buttons for 30 seconds until the android icon appears. Using the volume up and down buttons navigate to "Recovery mode," and press the Power button. The Google logo appears, followed by an Android with a red exclamation mark. Hold the Power button down and click the Volume Up button to enter Recovery. Use the volume buttons to highlight "Wipe data/Factory reset" and click the Power button.
https://www.reddit.com/r/FTC/comments/dfmwkg/using_the_driver_station_for_webcam_output/
Vuforia and TFOD actually already call CameraStreamServer#setSource() under the hood, so you don't have to make any changes to your opmodes. Here are the usage instructions (from the SKYSTONE SDK README):
To show the stream on the DS, initialize but do not run a stream-enabled opmode, select the Camera Stream option in the DS menu, and tap the image to refresh. This feature is automatically enabled when using Vuforia or TFOD—no additional RC configuration is required for typical use cases. To hide the stream, select the same menu item again.
Note that gamepads are disabled and the selected opmode cannot be started while the stream is open as a safety precaution.
Is both your driver station and control hub up to date to 5.2
make sure you have at least v5.1 running on both apps.
You can hook a hdmi display up to the hub. See this post for how I was testing over the summer. https://www.reddit.com/r/FTC/comments/cjeaoq/rev_control_hub_hdmi_display_and_usb_webcam/