Announcement

Collapse
No announcement yet.

Update on USB Disconnect Issues (unable to detect USB modules during scan)

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #46
    Alec.... I tried to imagine a stress test that might put voltage spikes into the PDM to see if USB problems would result. I wrote a simple LinearOpMode program that would cycle between -1.0 and 1.0 power levels on two motors. The simple code is:

    for (int i = 0; i < 25; i++) {
    waitForNextHardwareCycle();

    //Drive forward at 100% power for 1 second
    motorLeft.setPower(1.0);
    motorRight.setPower(1.0);
    sleep(250);

    waitForNextHardwareCycle();

    //Drive backward at 100% power of 1 second
    motorLeft.setPower(-1.0);
    motorRight.setPower(-1.0);
    sleep(250);

    }
    In this simple test, my voltage indicator showed fully charged 13.7 volts and android battery level at 94%. I'm unsure if this test would cause significant power spikes but in any event the test showed no problems with USB disconnects. Can you think of any other tests that might inject voltage spikes?

    Comment


    • #47
      So more feedback from a recent USB outage.

      So I switched to null op mode config to test telemetry solutions with the phones not connected to any hardware. I switched back to my normal hardware configure and reactivated it and it took me over 30 minutes of phone rebooting and other restarts to finally get to a state where I did not get the annoying "USB cannot connect to MR Motor Controller on serial #.." problem.

      All voodoo to me.

      Comment


      • #48
        USB Disconnect - where to send example logcat file?

        Tom,
        I am having similar "USB Disconnect" issues to those others have described here. I tried each of our team's three PDMs, all to similar effect. I just now captured a logcat file (logcat -v time -b system -b events -b main -b radio for maximum reporting). I have not tried reproducing this logcat file, however, on other Robot Controller phones.
        For lack of an obvious way to upload, enclosed is an example logcat excerpt. I can send the whole file, where the failure happens 3 times in the log, if you can suggest the best way to send.
        I'm beginning to have paranoid thoughts like - maybe the phone's screen rotation changed (see nearby log entries) - or maybe the screen decided to lock itself... that then triggered the failure. Alas, I'm not in a position to try experiments again until Tuesday.
        Thanks,
        Martin Haeberli
        Mentor
        ----
        Code:
        10-18 13:47:10.360 I/FIRST   ( 3615): Processing Command: CMD_INIT_OP_MODE TeleOpTankTread
        10-18 13:47:10.370 I/RobotCore( 3615): Attempting to switch to op mode TeleOpTankTread
        10-18 13:47:10.440 V/RobotCore( 3615): Sending command: CMD_INIT_OP_MODE_RESP, attempt 0
        10-18 13:47:10.570 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 9.0
        10-18 13:47:10.790 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 8.0
        10-18 13:47:10.960 D/dalvikvm( 3615): GC_FOR_ALLOC freed 2047K, 55% free 5051K/11088K, paused 20ms, total 20ms
        10-18 13:47:11.010 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 9.0
        10-18 13:47:12.220 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 8.0
        10-18 13:47:12.330 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 9.0
        10-18 13:47:12.590 D/dalvikvm( 3615): GC_FOR_ALLOC freed 2021K, 55% free 5078K/11088K, paused 15ms, total 17ms
        10-18 13:47:13.080 D/WifiStateMachine(  817): handleMessage: E msg.what=131155
        10-18 13:47:13.080 D/WifiStateMachine(  817): processMsg: ConnectedState
        10-18 13:47:13.080 D/WifiStateMachine(  817): processMsg: L2ConnectedState
        10-18 13:47:13.080 E/WifiManager(  817): calculateSignalLevel(), enter. rssi=-65 numLevels=5 getNameForPid(817)=system_server
        10-18 13:47:13.080 D/WifiStateMachine(  817): handleMessage: X
        10-18 13:47:13.760 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 8.0
        10-18 13:47:13.800 D/dalvikvm( 3615): GC_FOR_ALLOC freed 2038K, 55% free 5087K/11088K, paused 16ms, total 16ms
        10-18 13:47:13.980 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 9.0
        10-18 13:47:14.090 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 8.0
        10-18 13:47:14.200 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 9.0
        10-18 13:47:14.530 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 8.0
        10-18 13:47:14.860 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 9.0
        10-18 13:47:15.020 D/dalvikvm( 3615): GC_FOR_ALLOC freed 2046K, 55% free 5089K/11088K, paused 18ms, total 19ms
        10-18 13:47:15.190 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 8.0
        10-18 13:47:15.410 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 9.0
        10-18 13:47:16.080 D/WifiStateMachine(  817): handleMessage: E msg.what=131155
        10-18 13:47:16.080 D/WifiStateMachine(  817): processMsg: ConnectedState
        10-18 13:47:16.080 D/WifiStateMachine(  817): processMsg: L2ConnectedState
        10-18 13:47:16.090 E/WifiManager(  817): calculateSignalLevel(), enter. rssi=-65 numLevels=5 getNameForPid(817)=system_server
        10-18 13:47:16.090 D/WifiStateMachine(  817): handleMessage: X
        10-18 13:47:16.290 I/FIRST   ( 3615): Processing Command: CMD_RUN_OP_MODE TeleOpTankTread
        10-18 13:47:16.310 D/dalvikvm( 3615): GC_FOR_ALLOC freed 2047K, 55% free 5090K/11088K, paused 19ms, total 19ms
        10-18 13:47:16.370 V/RobotCore( 3615): Sending command: CMD_RUN_OP_MODE_RESP, attempt 0
        10-18 13:47:16.510 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 8.0
        10-18 13:47:16.620 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 9.0
        10-18 13:47:17.390 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 8.0
        10-18 13:47:17.830 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 9.0
        10-18 13:47:18.020 D/dalvikvm( 3615): GC_FOR_ALLOC freed 2061K, 55% free 5076K/11088K, paused 19ms, total 20ms
        10-18 13:47:18.390 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 8.0
        10-18 13:47:18.610 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 9.0
        10-18 13:47:18.710 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 8.0
        10-18 13:47:18.820 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 7.0
        10-18 13:47:19.050 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 8.0
        10-18 13:47:19.090 D/WifiStateMachine(  817): handleMessage: E msg.what=131155
        10-18 13:47:19.090 D/WifiStateMachine(  817): processMsg: ConnectedState
        10-18 13:47:19.090 D/WifiStateMachine(  817): processMsg: L2ConnectedState
        10-18 13:47:19.100 E/WifiManager(  817): calculateSignalLevel(), enter. rssi=-65 numLevels=5 getNameForPid(817)=system_server
        10-18 13:47:19.100 D/WifiStateMachine(  817): handleMessage: X
        10-18 13:47:19.160 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 7.0
        10-18 13:47:19.480 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 6.0
        10-18 13:47:19.760 D/dalvikvm( 3615): GC_FOR_ALLOC freed 2048K, 55% free 5076K/11088K, paused 28ms, total 28ms
        10-18 13:47:20.700 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 7.0
        10-18 13:47:20.810 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 6.0
        10-18 13:47:20.820 D/WindowManager(  817): xym---onProposedRotationChanged, rotation=3
        10-18 13:47:20.820 D/PowerManagerService(  817): sendPendingNotificationsLocked mSendGoToSleepFinishedNotificationWhenReady = false
        10-18 13:47:20.840 I/configuration_changed(  817): 1152
        10-18 13:47:20.840 I/ActivityManager(  817): Config changes=480 {1.0 310mcc65535mnc en_US ldltr sw320dp w569dp h294dp 240dpi nrml long land finger -keyb/v/h -nav/h s.13}
        10-18 13:47:20.850 I/InputReader(  817): Reconfiguring input devices.  changes=0x00000004
        10-18 13:47:20.850 I/InputReader(  817): Device reconfigured: id=0, name='goodix-touchscreen', size 480x854, orientation 3, mode 1, display id 0
        10-18 13:47:20.900 D/LockScreen_KeyguardViewMediator(  969): setHidden false
        10-18 13:47:20.900 D/LockScreen_KeyguardUpdateMonitor(  969): sendKeyguardVisibilityChanged(true)
        10-18 13:47:20.910 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 7.0
        10-18 13:47:20.920 D/PhoneStatusBar(  969): mSettingsPanelGravity = 55
        10-18 13:47:20.920 D/LockScreen_KeyguardUpdateMonitor(  969): handleKeyguardVisibilityChanged(1)
        10-18 13:47:20.930 D/LockScreen_KeyguardViewMediator(  969): setHidden false
        10-18 13:47:20.930 D/LockScreen_KeyguardUpdateMonitor(  969): sendKeyguardVisibilityChanged(true)
        10-18 13:47:20.930 D/LockScreen_KeyguardViewMediator(  969): setHidden false
        10-18 13:47:20.930 D/LockScreen_KeyguardUpdateMonitor(  969): sendKeyguardVisibilityChanged(true)
        10-18 13:47:20.940 D/Tethering(  817): secureSetting : 1
        10-18 13:47:20.940 D/LockScreen_KeyguardViewMediator(  969): setHidden false
        10-18 13:47:20.940 D/LockScreen_KeyguardUpdateMonitor(  969): sendKeyguardVisibilityChanged(true)
        10-18 13:47:20.970 D/LockScreen_KeyguardUpdateMonitor(  969): handleKeyguardVisibilityChanged(1)
        10-18 13:47:20.970 I/SwitchButtonControlView(  969): intent.getAction=android.intent.action.CONFIGURATION_CHANGED
        10-18 13:47:20.970 I/SwitchButtonControlView(  969): onConfigurationChanged()  newCfgOrientation=2
        10-18 13:47:20.970 D/SwitchButtonControlView(  969):  mMoreViewShowing=false
        10-18 13:47:20.970 D/SwitchButtonControlView(  969): sreenOrientation =2
        10-18 13:47:20.970 I/SwitchButtonControlView(  969): mShowSBCount=9
        10-18 13:47:20.970 D/LockScreen_KeyguardViewMediator(  969): setHidden false
        10-18 13:47:20.970 D/LockScreen_KeyguardUpdateMonitor(  969): sendKeyguardVisibilityChanged(true)
        10-18 13:47:20.970 I/SwitchButton(  969): More onDetachedFromWindow
        10-18 13:47:20.970 I/SwitchButton(  969): Auto Rotate onDetachedFromWindow
        10-18 13:47:20.970 I/SwitchButton(  969): Sound onDetachedFromWindow
        10-18 13:47:20.970 I/SwitchButton(  969): GPS onDetachedFromWindow
        10-18 13:47:20.970 I/SwitchButton(  969): Wi-Fi onDetachedFromWindow
        10-18 13:47:20.970 I/SwitchButton(  969): Data onDetachedFromWindow
        10-18 13:47:20.980 I/SwitchButton(  969): Bluetooth onDetachedFromWindow
        10-18 13:47:20.980 I/SwitchButton(  969): Airplane mode onDetachedFromWindow
        10-18 13:47:20.980 I/SwitchButton(  969): Sync onDetachedFromWindow
        10-18 13:47:20.980 D/LockScreen_KeyguardViewMediator(  969): setHidden false
        10-18 13:47:20.980 D/LockScreen_KeyguardUpdateMonitor(  969): sendKeyguardVisibilityChanged(true)
        10-18 13:47:20.980 D/LockScreen_KeyguardUpdateMonitor(  969): handleKeyguardVisibilityChanged(1)
        10-18 13:47:20.980 D/StatusBar.NetworkController(  969): refreshViews: Data not connected!! Set no data type icon / Roaming
        10-18 13:47:20.990 E/niejiyong(  969): WeatherService is Running
        10-18 13:47:20.990 E/niejiyong(  969): Weather process is Running
        10-18 13:47:21.000 E/niejiyong(  969): WeatherService is Running
        10-18 13:47:21.000 E/niejiyong(  969): Weather process is Running
        10-18 13:47:21.000 D/LockScreen_KeyguardUpdateMonitor(  969): handleKeyguardVisibilityChanged(1)
        10-18 13:47:21.010 D/LockScreen_KeyguardViewMediator(  969): setHidden false
        10-18 13:47:21.010 D/LockScreen_KeyguardUpdateMonitor(  969): sendKeyguardVisibilityChanged(true)
        10-18 13:47:21.030 I/Timeline(  817): Timeline: Activity_windows_visible id: ActivityRecord{41868418 u0 com.qualcomm.ftcrobotcontroller/.FtcRobotControllerActivity t9} time:498622
        10-18 13:47:21.030 D/LockScreen_KeyguardUpdateMonitor(  969): handleKeyguardVisibilityChanged(1)
        10-18 13:47:21.030 D/LockScreen_KeyguardUpdateMonitor(  969): handleKeyguardVisibilityChanged(1)
        10-18 13:47:21.030 D/LockScreen_KeyguardUpdateMonitor(  969): handleKeyguardVisibilityChanged(1)
        10-18 13:47:21.030 D/LockScreen_KeyguardViewMediator(  969): setHidden false
        10-18 13:47:21.030 D/LockScreen_KeyguardUpdateMonitor(  969): sendKeyguardVisibilityChanged(true)
        10-18 13:47:21.030 D/LockScreen_KeyguardUpdateMonitor(  969): handleKeyguardVisibilityChanged(1)
        10-18 13:47:21.030 I/WindowManager(  817): Screen frozen for +211ms due to Window{42264fa8 u0 com.qualcomm.ftcrobotcontroller/com.qualcomm.ftcrobotcontroller.FtcRobotControllerActivity}
        10-18 13:47:21.040 D/PowerManagerService(  817): sendPendingNotificationsLocked mSendGoToSleepFinishedNotificationWhenReady = false
        10-18 13:47:21.240 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 6.0
        10-18 13:47:21.340 D/dalvikvm( 3615): GC_FOR_ALLOC freed 2055K, 55% free 5068K/11088K, paused 21ms, total 21ms
        10-18 13:47:21.470 D/LockScreen_KeyguardViewMediator(  969): setHidden false
        10-18 13:47:21.470 D/LockScreen_KeyguardUpdateMonitor(  969): sendKeyguardVisibilityChanged(true)
        10-18 13:47:21.480 D/LockScreen_KeyguardUpdateMonitor(  969): handleKeyguardVisibilityChanged(1)
        10-18 13:47:22.110 D/WifiStateMachine(  817): handleMessage: E msg.what=131155
        10-18 13:47:22.110 D/WifiStateMachine(  817): processMsg: ConnectedState
        10-18 13:47:22.110 D/WifiStateMachine(  817): processMsg: L2ConnectedState
        10-18 13:47:22.120 E/WifiManager(  817): calculateSignalLevel(), enter. rssi=-66 numLevels=5 getNameForPid(817)=system_server
        10-18 13:47:22.120 D/WifiStateMachine(  817): handleMessage: X
        10-18 13:47:22.450 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 5.0
        10-18 13:47:23.100 D/dalvikvm( 3615): GC_FOR_ALLOC freed 2065K, 55% free 5051K/11088K, paused 16ms, total 17ms
        10-18 13:47:23.130 D/dalvikvm(  817): GC_EXPLICIT freed 501K, 16% free 14688K/17380K, paused 5ms+6ms, total 97ms
        10-18 13:47:23.570 D/WindowManager(  817): xym---onProposedRotationChanged, rotation=3
        10-18 13:47:23.570 D/LockScreen_KeyguardViewMediator(  969): setHidden false
        10-18 13:47:23.570 D/LockScreen_KeyguardUpdateMonitor(  969): sendKeyguardVisibilityChanged(true)
        10-18 13:47:23.570 D/LockScreen_KeyguardUpdateMonitor(  969): handleKeyguardVisibilityChanged(1)
        10-18 13:47:24.330 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 4.0
        10-18 13:47:24.550 D/WindowManager(  817): xym---onProposedRotationChanged, rotation=3
        10-18 13:47:24.550 D/LockScreen_KeyguardViewMediator(  969): setHidden false
        10-18 13:47:24.550 D/LockScreen_KeyguardUpdateMonitor(  969): sendKeyguardVisibilityChanged(true)
        10-18 13:47:24.550 D/LockScreen_KeyguardUpdateMonitor(  969): handleKeyguardVisibilityChanged(1)
        10-18 13:47:24.650 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 5.0
        10-18 13:47:24.860 D/dalvikvm( 3615): GC_FOR_ALLOC freed 2048K, 55% free 5050K/11088K, paused 20ms, total 20ms
        10-18 13:47:25.120 D/WifiStateMachine(  817): handleMessage: E msg.what=131155
        10-18 13:47:25.120 D/WifiStateMachine(  817): processMsg: ConnectedState
        10-18 13:47:25.120 D/WifiStateMachine(  817): processMsg: L2ConnectedState
        10-18 13:47:25.130 E/WifiManager(  817): calculateSignalLevel(), enter. rssi=-69 numLevels=5 getNameForPid(817)=system_server
        10-18 13:47:25.130 D/WifiStateMachine(  817): handleMessage: X
        10-18 13:47:26.190 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 4.0
        10-18 13:47:26.250 D/WindowManager(  817): xym---onProposedRotationChanged, rotation=3
        10-18 13:47:26.250 D/LockScreen_KeyguardViewMediator(  969): setHidden false
        10-18 13:47:26.250 D/LockScreen_KeyguardUpdateMonitor(  969): sendKeyguardVisibilityChanged(true)
        10-18 13:47:26.250 D/LockScreen_KeyguardUpdateMonitor(  969): handleKeyguardVisibilityChanged(1)
        10-18 13:47:26.410 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 5.0
        10-18 13:47:26.460 D/DisplayPowerController(  817): ZTE_PM updateAutoBrightness: useAutoBrightness = true  mAmbientLuxValid = true  mAmbientLux = 4.41463
        10-18 13:47:26.460 D/DisplayPowerController(  817): updateAutoBrightness: value=0.07000163 *255 = 17.850416
        10-18 13:47:26.460 D/DisplayPowerController(  817): ZTE_PM mPowerRequest.screenState is 2
        10-18 13:47:26.460 D/DisplayPowerController(  817): ZTE_PM_PROX disable ProxSensor while NO useProximitySensor 
        10-18 13:47:26.460 D/DisplayPowerController(  817): ZTE_PM_PROX setProximitySensorEnabled enable = false
        10-18 13:47:26.460 D/DisplayPowerController(  817): ZTE_PM  setLightSensorEnabled enable = true updateAutoBrightness = false
        10-18 13:47:26.480 D/DisplayPowerState(  817): Updating screen state: onChanged=false, on= true, backlightChanged=true, backlight=19
        10-18 13:47:26.520 D/DisplayPowerState(  817): Updating screen state: onChanged=false, on= true, backlightChanged=true, backlight=18
        10-18 13:47:26.630 D/dalvikvm( 3615): GC_FOR_ALLOC freed 2048K, 55% free 5050K/11088K, paused 24ms, total 24ms
        10-18 13:47:26.740 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 7.0
        10-18 13:47:26.840 D/UsbDeviceConnectionJNI( 3615): close
        10-18 13:47:26.840 D/ProcessRequestThread::( 3615): Device has been closed.
        10-18 13:47:26.840 D/BulkIn::( 3615): Stop BulkIn thread
        10-18 13:47:26.840 W/System.err( 3615): java.lang.NullPointerException
        10-18 13:47:26.840 W/System.err( 3615): 	at com.ftdi.j2xx.o.e(SourceFile:2602)
        10-18 13:47:26.840 W/RobotCore( 3615): could not write to device AL00XTVX: FTDI Null Pointer Exception
        10-18 13:47:26.840 E/RobotCore( 3615): java.lang.NullPointerException
        10-18 13:47:26.840 W/System.err( 3615): 	at java.lang.InterruptedException
        10-18 13:47:26.840 W/System.err( 3615): 	at java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireSharedInterruptibly(AbstractQueuedSynchronizer.java:975)
        10-18 13:47:26.840 W/System.err( 3615): 	at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1281)
        10-18 13:47:26.840 E/RobotCore( 3615): com.ftdi.j2xx.o.a(SourceFile:2520)
        10-18 13:47:26.840 E/RobotCore( 3615): com.ftdi.j2xx.FT_Device.read(SourceFile:666)
        10-18 13:47:26.840 E/RobotCore( 3615): com.qualcomm.robotcore.hardware.usb.ftdi.RobotUsbDeviceFtdi.read(SourceFile:94)
        10-18 13:47:26.840 W/System.err( 3615): 	at java.util.concurrent.Semaphore.acquire(Semaphore.java:283)
        10-18 13:47:26.840 E/RobotCore( 3615): com.qualcomm.modernrobotics.ReadWriteRunnableUsbHandler.a(SourceFile:86)
        10-18 13:47:26.840 E/RobotCore( 3615): com.qualcomm.modernrobotics.ReadWriteRunnableUsbHandler.read(SourceFile:65)
        10-18 13:47:26.840 E/RobotCore( 3615): com.qualcomm.hardware.ReadWriteRunnableStandard.run(SourceFile:237)
        10-18 13:47:26.840 E/RobotCore( 3615): java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
        10-18 13:47:26.840 E/RobotCore( 3615): java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
        10-18 13:47:26.840 E/RobotCore( 3615): java.lang.Thread.run(Thread.java:841)
        10-18 13:47:26.840 V/RobotCore( 3615): stopped read/write loop for device AL00XTVX
        10-18 13:47:26.840 W/System.err( 3615): 	at com.ftdi.j2xx.o.c(SourceFile:2294)
        10-18 13:47:26.840 W/System.err( 3615): 	at com.ftdi.j2xx.p.run(SourceFile:2764)
        10-18 13:47:26.840 W/System.err( 3615): 	at java.lang.Thread.run(Thread.java:841)
        10-18 13:47:26.840 W/System.err( 3615): com.ftdi.j2xx.a.run(SourceFile:2880)
        10-18 13:47:26.840 W/System.err( 3615): 	at java.lang.Thread.run(Thread.java:841)
        10-18 13:47:26.860 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 8.0
        10-18 13:47:26.900 W/RobotCore( 3615): sync device block requested, but device is shut down - AL00XTVX
        10-18 13:47:26.900 V/RobotCore( 3615): RobotCoreException in EventLoopManager: cannot block, device is shut down
        10-18 13:47:26.900 V/RobotCore( 3615): EventLoopManager state is EMERGENCY_STOP
        10-18 13:47:26.900 I/FIRST   ( 3615): Robot Status: EMERGENCY STOP
        10-18 13:47:26.900 I/FIRST   ( 3615): ======= TEARDOWN =======
        10-18 13:47:26.910 I/FIRST   ( 3615): Stopping DC Motor Controller Motor Controller 1
        10-18 13:47:26.910 V/RobotCore( 3615): Shutting down device AL00XPUS
        10-18 13:47:26.910 V/RobotCore( 3615): stopped read/write loop for device AL00XPUS
        10-18 13:47:26.910 D/ProcessRequestThread::( 3615): Device has been closed.
        10-18 13:47:26.910 W/System.err( 3615): java.lang.InterruptedException
        10-18 13:47:26.910 W/System.err( 3615): 	at java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireSharedInterruptibly(AbstractQueuedSynchronizer.java:975)
        10-18 13:47:26.910 W/System.err( 3615): 	at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1281)
        10-18 13:47:26.910 W/System.err( 3615): 	at java.util.concurrent.Semaphore.acquire(Semaphore.java:283)
        10-18 13:47:26.910 W/System.err( 3615): 	at com.ftdi.j2xx.o.c(SourceFile:2294)
        10-18 13:47:26.920 W/System.err( 3615): 	at com.ftdi.j2xx.p.run(SourceFile:2764)
        10-18 13:47:26.920 W/System.err( 3615): 	at java.lang.Thread.run(Thread.java:841)
        10-18 13:47:26.920 D/UsbDeviceConnectionJNI( 3615): close
        10-18 13:47:26.920 I/FIRST   ( 3615): Stopping DC Motor Controller Motor Controller 2
        10-18 13:47:26.920 V/RobotCore( 3615): Shutting down device AL00XTVX
        10-18 13:47:26.930 D/LockScreen_KeyguardViewMediator(  969): setHidden false
        10-18 13:47:26.930 D/LockScreen_KeyguardUpdateMonitor(  969): sendKeyguardVisibilityChanged(true)
        10-18 13:47:26.930 D/LockScreen_KeyguardUpdateMonitor(  969): handleKeyguardVisibilityChanged(1)
        10-18 13:47:27.030 W/RobotCore( 3615): sync device block requested, but device is shut down - AL00XTVX
        10-18 13:47:27.030 I/FIRST   ( 3615): ======= TEARDOWN COMPLETE =======
        10-18 13:47:27.030 V/RobotCore( 3615): EventLoopRunnable has exited
        10-18 13:47:27.080 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 10.0
        10-18 13:47:27.190 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 11.0
        10-18 13:47:27.200 D/UsbHostManager(  817): usbDeviceAdded interfaceClass:255 interfaceSubclass:255 interfaceProtocol:255
        10-18 13:47:27.200 D/UsbHostManager(  817): deviceAttached
        10-18 13:47:27.210 W/ContextImpl(  817): Calling a method in the system process without a qualified user: android.app.ContextImpl.sendBroadcast:1213 com.android.server.usb.UsbSettingsManager.deviceAttached:621 com.android.server.usb.UsbHostManager.usbDeviceAdded:610 com.android.server.usb.UsbHostManager.monitorUsbHostBus:-2 com.android.server.usb.UsbHostManager.access$500:62 
        10-18 13:47:27.210 I/ActivityManager(  817): START u0 {act=android.hardware.usb.action.USB_DEVICE_ATTACHED flg=0x10000000 cmp=com.qualcomm.ftcrobotcontroller/.FtcRobotControllerActivity (has extras)} from pid 817
        10-18 13:47:27.220 V/D2xx::  ( 3615): Vendor: 0403, Product: 6001
        10-18 13:47:27.220 I/am_new_intent(  817): [0,1102789776,9,com.qualcomm.ftcrobotcontroller/.FtcRobotControllerActivity,android.hardware.usb.action.USB_DEVICE_ATTACHED,NULL,NULL,268435456]
        10-18 13:47:27.230 D/UsbDeviceConnectionJNI( 3615): close
        10-18 13:47:27.240 D/WindowManager(  817): xym---onProposedRotationChanged, rotation=3
        10-18 13:47:27.240 D/LockScreen_KeyguardViewMediator(  969): setHidden false
        10-18 13:47:27.240 D/LockScreen_KeyguardUpdateMonitor(  969): sendKeyguardVisibilityChanged(true)
        10-18 13:47:27.240 D/LockScreen_KeyguardUpdateMonitor(  969): handleKeyguardVisibilityChanged(1)
        10-18 13:47:27.300 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 13.0
        10-18 13:47:27.630 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 14.0
        10-18 13:47:27.730 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 15.0
        10-18 13:47:27.960 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 16.0
        10-18 13:47:28.130 D/WifiStateMachine(  817): handleMessage: E msg.what=131155
        10-18 13:47:28.130 D/WifiStateMachine(  817): processMsg: ConnectedState
        10-18 13:47:28.130 D/WifiStateMachine(  817): processMsg: L2ConnectedState
        10-18 13:47:28.140 E/WifiManager(  817): calculateSignalLevel(), enter. rssi=-71 numLevels=5 getNameForPid(817)=system_server
        10-18 13:47:28.150 E/WifiManager(  969): calculateSignalLevel(), enter. rssi=-71 numLevels=5 getNameForPid(969)=com.android.systemui
        10-18 13:47:28.150 D/StatusBar.NetworkController(  969): refreshViews: Data not connected!! Set no data type icon / Roaming
        10-18 13:47:28.150 E/niejiyong(  969): SignalClusterView::mMobileType = android.widget.ImageView{41995f38 G.ED.... ......I. 0,0-0,0 #7f07002c app:id/mobile_type}
        10-18 13:47:28.150 E/niejiyong(  969): SignalClusterView::mMobileActivity = android.widget.ImageView{41996208 G.ED.... ......I. 0,0-0,0 #7f07002d app:id/mobile_inout}
        10-18 13:47:28.150 E/SignalClusterController(  969): onUpdateSignalClusterView mAloneDataIconId = 0
        10-18 13:47:28.150 D/WifiStateMachine(  817): handleMessage: X
        10-18 13:47:28.150 E/sunwei  (  969): netType = 0
        10-18 13:47:28.150 E/niejiyong(  969): SignalClusterView::mMobileType = android.widget.ImageView{41995f38 G.ED.... ......I. 0,0-0,0 #7f07002c app:id/mobile_type}
        10-18 13:47:28.150 E/niejiyong(  969): SignalClusterView::mMobileActivity = android.widget.ImageView{41996208 G.ED.... ......I. 0,0-0,0 #7f07002d app:id/mobile_inout}
        10-18 13:47:28.150 E/SignalClusterController(  969): onUpdateSignalClusterView mAloneDataIconId = 0
        10-18 13:47:28.150 E/sunwei  (  969): netType = 0
        10-18 13:47:28.150 E/niejiyong(  969): SignalClusterView::mMobileType = android.widget.ImageView{41995f38 G.ED.... ......I. 0,0-0,0 #7f07002c app:id/mobile_type}
        10-18 13:47:28.150 E/niejiyong(  969): SignalClusterView::mMobileActivity = android.widget.ImageView{41996208 G.ED.... ......I. 0,0-0,0 #7f07002d app:id/mobile_inout}
        10-18 13:47:28.160 E/SignalClusterController(  969): onUpdateSignalClusterView mAloneDataIconId = 0
        10-18 13:47:28.160 E/sunwei  (  969): netType = 0
        10-18 13:47:28.290 D/WindowManager(  817): xym---onProposedRotationChanged, rotation=3
        10-18 13:47:28.290 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 17.0
        10-18 13:47:28.300 D/LockScreen_KeyguardViewMediator(  969): setHidden false
        10-18 13:47:28.300 D/LockScreen_KeyguardUpdateMonitor(  969): sendKeyguardVisibilityChanged(true)
        10-18 13:47:28.310 D/LockScreen_KeyguardUpdateMonitor(  969): handleKeyguardVisibilityChanged(1)
        10-18 13:47:28.510 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 18.0
        10-18 13:47:28.730 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 19.0
        10-18 13:47:28.740 D/DisplayPowerController(  817): ZTE_PM updateAutoBrightness: useAutoBrightness = true  mAmbientLuxValid = true  mAmbientLux = 14.324333
        10-18 13:47:28.750 D/DisplayPowerController(  817): updateAutoBrightness: value=0.12475269 *255 = 31.811937
        10-18 13:47:28.750 D/DisplayPowerController(  817): ZTE_PM mPowerRequest.screenState is 2
        10-18 13:47:28.750 D/DisplayPowerController(  817): ZTE_PM_PROX disable ProxSensor while NO useProximitySensor 
        10-18 13:47:28.750 D/DisplayPowerController(  817): ZTE_PM_PROX setProximitySensorEnabled enable = false
        10-18 13:47:28.750 D/DisplayPowerController(  817): ZTE_PM  setLightSensorEnabled enable = true updateAutoBrightness = false
        10-18 13:47:28.760 D/DisplayPowerState(  817): Updating screen state: onChanged=false, on= true, backlightChanged=true, backlight=20
        10-18 13:47:28.830 D/ledlog_java_com(  817): Excessive delay setting light: 65ms
        10-18 13:47:28.830 D/DisplayPowerState(  817): Updating screen state: onChanged=false, on= true, backlightChanged=true, backlight=30
        10-18 13:47:28.840 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 20.0
        10-18 13:47:28.890 D/ledlog_java_com(  817): Excessive delay setting light: 67ms
        10-18 13:47:28.890 D/DisplayPowerState(  817): Updating screen state: onChanged=false, on= true, backlightChanged=true, backlight=32
        10-18 13:47:29.610 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 22.0
        10-18 13:47:30.050 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 23.0
        10-18 13:47:30.820 D/PowerManagerService_DumpWakeLock(  817): Dump interval is: 20 s
        10-18 13:47:30.820 D/PowerManagerService_DumpWakeLock(  817):  Current State is: Awake
        10-18 13:47:30.820 D/PowerManagerService_DumpWakeLock(  817): Screen off timeout: 30000 ms
        10-18 13:47:30.820 D/PowerManagerService_DumpWakeLock(  817): Screen dim duration: 6000 ms
        10-18 13:47:30.830 D/PowerManagerService_DumpWakeLock(  817): Wake Locks: size=1
        10-18 13:47:30.830 D/PowerManagerService_DumpWakeLock(  817):   SCREEN_BRIGHT_WAKE_LOCK        'WindowManager' ON_AFTER_RELEASE (uid=1000, pid=817, ws=WorkSource{10108})
        10-18 13:47:30.830 D/PowerManagerService_DumpWakeLock(  817): Suspend Blockers: size=5
        10-18 13:47:30.830 D/PowerManagerService_DumpWakeLock(  817):   PowerManagerService.WakeLocks: ref count=1
        10-18 13:47:30.830 D/PowerManagerService_DumpWakeLock(  817):   PowerManagerService.Display: ref count=1
        10-18 13:47:30.830 D/PowerManagerService_DumpWakeLock(  817):   PowerManagerService.Proximity: ref count=0
        10-18 13:47:30.830 D/PowerManagerService_DumpWakeLock(  817):   PowerManagerService.Broadcasts: ref count=0
        10-18 13:47:30.830 D/PowerManagerService_DumpWakeLock(  817):   PowerManagerService.WirelessChargerDetector: ref count=0
        10-18 13:47:30.830 D/PowerManagerService_DumpWakeLock(  817): Screen On Blocker: held=false, mNestCount=0
        10-18 13:47:30.830 D/PowerManagerService_DumpWakeLock(  817): Display Blanker: blanked=false
        10-18 13:47:30.930 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 24.0
        10-18 13:47:31.040 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 23.0
        10-18 13:47:31.160 D/WifiStateMachine(  817): handleMessage: E msg.what=131155
        10-18 13:47:31.160 D/WifiStateMachine(  817): processMsg: ConnectedState
        10-18 13:47:31.160 D/WifiStateMachine(  817): processMsg: L2ConnectedState
        10-18 13:47:31.170 E/WifiManager(  817): calculateSignalLevel(), enter. rssi=-70 numLevels=5 getNameForPid(817)=system_server
        10-18 13:47:31.180 E/WifiManager(  969): calculateSignalLevel(), enter. rssi=-70 numLevels=5 getNameForPid(969)=com.android.systemui
        10-18 13:47:31.180 D/StatusBar.NetworkController(  969): refreshViews: Data not connected!! Set no data type icon / Roaming
        10-18 13:47:31.180 E/niejiyong(  969): SignalClusterView::mMobileType = android.widget.ImageView{41995f38 G.ED.... ......I. 0,0-0,0 #7f07002c app:id/mobile_type}
        10-18 13:47:31.180 D/WifiStateMachine(  817): handleMessage: X
        10-18 13:47:31.180 E/niejiyong(  969): SignalClusterView::mMobileActivity = android.widget.ImageView{41996208 G.ED.... ......I. 0,0-0,0 #7f07002d app:id/mobile_inout}
        10-18 13:47:31.180 E/SignalClusterController(  969): onUpdateSignalClusterView mAloneDataIconId = 0
        10-18 13:47:31.190 E/sunwei  (  969): netType = 0
        10-18 13:47:31.190 E/niejiyong(  969): SignalClusterView::mMobileType = android.widget.ImageView{41995f38 G.ED.... ......I. 0,0-0,0 #7f07002c app:id/mobile_type}
        10-18 13:47:31.190 E/niejiyong(  969): SignalClusterView::mMobileActivity = android.widget.ImageView{41996208 G.ED.... ......I. 0,0-0,0 #7f07002d app:id/mobile_inout}
        10-18 13:47:31.190 E/SignalClusterController(  969): onUpdateSignalClusterView mAloneDataIconId = 0
        10-18 13:47:31.190 E/sunwei  (  969): netType = 0
        10-18 13:47:31.190 E/niejiyong(  969): SignalClusterView::mMobileType = android.widget.ImageView{41995f38 G.ED.... ......I. 0,0-0,0 #7f07002c app:id/mobile_type}
        10-18 13:47:31.190 E/niejiyong(  969): SignalClusterView::mMobileActivity = android.widget.ImageView{41996208 G.ED.... ......I. 0,0-0,0 #7f07002d app:id/mobile_inout}
        10-18 13:47:31.190 E/SignalClusterController(  969): onUpdateSignalClusterView mAloneDataIconId = 0
        10-18 13:47:31.190 E/sunwei  (  969): netType = 0
        10-18 13:47:32.930 D/DisplayPowerController(  817): ZTE_PM updateAutoBrightness: useAutoBrightness = true  mAmbientLuxValid = true  mAmbientLux = 21.757212
        10-18 13:47:32.930 D/DisplayPowerController(  817): updateAutoBrightness: value=0.16306809 *255 = 41.582363
        10-18 13:47:32.930 D/DisplayPowerController(  817): ZTE_PM mPowerRequest.screenState is 2
        10-18 13:47:32.930 D/DisplayPowerController(  817): ZTE_PM_PROX disable ProxSensor while NO useProximitySensor 
        10-18 13:47:32.930 D/DisplayPowerController(  817): ZTE_PM_PROX setProximitySensorEnabled enable = false
        10-18 13:47:32.930 D/DisplayPowerController(  817): ZTE_PM  setLightSensorEnabled enable = true updateAutoBrightness = false
        10-18 13:47:32.940 D/DisplayPowerState(  817): Updating screen state: onChanged=false, on= true, backlightChanged=true, backlight=34
        10-18 13:47:33.010 D/ledlog_java_com(  817): Excessive delay setting light: 63ms
        10-18 13:47:33.010 D/DisplayPowerState(  817): Updating screen state: onChanged=false, on= true, backlightChanged=true, backlight=42
        10-18 13:47:33.080 D/ledlog_java_com(  817): Excessive delay setting light: 67ms
        10-18 13:47:33.460 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 22.0
        10-18 13:47:33.570 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 23.0
        10-18 13:47:34.190 D/WifiStateMachine(  817): handleMessage: E msg.what=131155
        10-18 13:47:34.190 D/WifiStateMachine(  817): processMsg: ConnectedState
        10-18 13:47:34.190 D/WifiStateMachine(  817): processMsg: L2ConnectedState
        10-18 13:47:34.190 E/WifiManager(  817): calculateSignalLevel(), enter. rssi=-68 numLevels=5 getNameForPid(817)=system_server
        10-18 13:47:34.190 D/WifiStateMachine(  817): handleMessage: X
        10-18 13:47:35.330 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 22.0
        10-18 13:47:35.550 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 23.0
        10-18 13:47:36.430 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 22.0
        10-18 13:47:36.540 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 23.0
        10-18 13:47:37.200 D/WifiStateMachine(  817): handleMessage: E msg.what=131155
        10-18 13:47:37.200 D/WifiStateMachine(  817): processMsg: ConnectedState
        10-18 13:47:37.200 D/WifiStateMachine(  817): processMsg: L2ConnectedState
        10-18 13:47:37.200 E/WifiManager(  817): calculateSignalLevel(), enter. rssi=-67 numLevels=5 getNameForPid(817)=system_server
        10-18 13:47:37.200 D/WifiStateMachine(  817): handleMessage: X
        10-18 13:47:38.960 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 24.0
        10-18 13:47:39.070 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 23.0
        10-18 13:47:40.210 D/WifiStateMachine(  817): handleMessage: E msg.what=131155
        10-18 13:47:40.210 D/WifiStateMachine(  817): processMsg: ConnectedState
        10-18 13:47:40.210 D/WifiStateMachine(  817): processMsg: L2ConnectedState
        10-18 13:47:40.210 E/WifiManager(  817): calculateSignalLevel(), enter. rssi=-67 numLevels=5 getNameForPid(817)=system_server
        10-18 13:47:40.220 D/WifiStateMachine(  817): handleMessage: X
        10-18 13:47:42.480 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 22.0
        10-18 13:47:42.700 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 23.0
        10-18 13:47:42.920 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 24.0
        10-18 13:47:43.140 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 23.0
        10-18 13:47:43.220 D/WifiStateMachine(  817): handleMessage: E msg.what=131155
        10-18 13:47:43.220 D/WifiStateMachine(  817): processMsg: ConnectedState
        10-18 13:47:43.220 D/WifiStateMachine(  817): processMsg: L2ConnectedState
        10-18 13:47:43.230 E/WifiManager(  817): calculateSignalLevel(), enter. rssi=-67 numLevels=5 getNameForPid(817)=system_server
        10-18 13:47:43.230 D/WifiStateMachine(  817): handleMessage: X
        10-18 13:47:46.240 D/WifiStateMachine(  817): handleMessage: E msg.what=131155
        10-18 13:47:46.240 D/WifiStateMachine(  817): processMsg: ConnectedState
        10-18 13:47:46.240 D/WifiStateMachine(  817): processMsg: L2ConnectedState
        10-18 13:47:46.240 E/WifiManager(  817): calculateSignalLevel(), enter. rssi=-67 numLevels=5 getNameForPid(817)=system_server
        10-18 13:47:46.240 D/WifiStateMachine(  817): handleMessage: X
        10-18 13:47:47.430 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 22.0
        10-18 13:47:47.540 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 23.0
        10-18 13:47:49.250 D/WifiStateMachine(  817): handleMessage: E msg.what=131155
        10-18 13:47:49.250 D/WifiStateMachine(  817): processMsg: ConnectedState
        10-18 13:47:49.250 D/WifiStateMachine(  817): processMsg: L2ConnectedState
        10-18 13:47:49.250 E/WifiManager(  817): calculateSignalLevel(), enter. rssi=-67 numLevels=5 getNameForPid(817)=system_server
        10-18 13:47:49.250 D/WifiStateMachine(  817): handleMessage: X
        10-18 13:47:49.520 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 22.0
        10-18 13:47:49.630 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 23.0
        10-18 13:47:51.390 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 22.0
        10-18 13:47:51.610 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 23.0
        10-18 13:47:52.260 D/WifiStateMachine(  817): handleMessage: E msg.what=131155
        10-18 13:47:52.260 D/WifiStateMachine(  817): processMsg: ConnectedState
        10-18 13:47:52.260 D/WifiStateMachine(  817): processMsg: L2ConnectedState
        10-18 13:47:52.270 E/WifiManager(  817): calculateSignalLevel(), enter. rssi=-67 numLevels=5 getNameForPid(817)=system_server
        10-18 13:47:52.270 D/WifiStateMachine(  817): handleMessage: X
        10-18 13:47:53.260 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 22.0
        10-18 13:47:53.370 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 23.0
        10-18 13:47:54.360 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 22.0
        10-18 13:47:54.580 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 23.0
        10-18 13:47:55.270 D/WifiStateMachine(  817): handleMessage: E msg.what=131155
        10-18 13:47:55.270 D/WifiStateMachine(  817): processMsg: ConnectedState
        10-18 13:47:55.280 D/WifiStateMachine(  817): processMsg: L2ConnectedState
        10-18 13:47:55.280 E/WifiManager(  817): calculateSignalLevel(), enter. rssi=-67 numLevels=5 getNameForPid(817)=system_server
        10-18 13:47:55.280 D/WifiStateMachine(  817): handleMessage: X
        10-18 13:47:57.550 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 24.0
        10-18 13:47:57.650 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 23.0
        10-18 13:47:58.290 D/WifiStateMachine(  817): handleMessage: E msg.what=131155
        10-18 13:47:58.290 D/WifiStateMachine(  817): processMsg: ConnectedState
        10-18 13:47:58.290 D/WifiStateMachine(  817): processMsg: L2ConnectedState
        10-18 13:47:58.290 E/WifiManager(  817): calculateSignalLevel(), enter. rssi=-67 numLevels=5 getNameForPid(817)=system_server
        10-18 13:47:58.290 D/WifiStateMachine(  817): handleMessage: X
        10-18 13:47:58.320 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 22.0
        10-18 13:47:58.430 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 23.0
        10-18 13:47:58.760 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 24.0
        10-18 13:47:58.870 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 23.0
        10-18 13:48:00.000 D/LockScreen_KeyguardUpdateMonitor(  969): received broadcast android.intent.action.TIME_TICK
        10-18 13:48:00.000 D/LockScreen_DMLockCodeController(  969): canAcceptIntent - can: false
        10-18 13:48:00.000 D/LockScreen_CMASAlertController(  969): canAcceptIntent - can: false
        10-18 13:48:00.000 D/LockScreen_KeyguardUpdateMonitor(  969): handleTimeUpdate
        10-18 13:48:00.000 W/AlarmManager(  817): Alarm triggering: Alarm{422e85a0 type 3 android}
        10-18 13:48:00.000 D/PowerManagerService(  817): sendPendingNotificationsLocked mSendGoToSleepFinishedNotificationWhenReady = false
        10-18 13:48:00.020 E/niejiyong(  969): WeatherService is Running
        10-18 13:48:00.020 E/niejiyong(  969): Weather process is Running
        10-18 13:48:00.040 E/niejiyong(  969): WeatherService is Running
        10-18 13:48:00.040 E/niejiyong(  969): Weather process is Running
        10-18 13:48:00.050 D/haha    ( 1083): mDateTimeReceiver intent::Intent { act=android.intent.action.TIME_TICK flg=0x50000014 (has extras) }
        10-18 13:48:00.050 E/niejiyong( 1083): TypeBWeatherWidget :: performUpdate..
        10-18 13:48:00.050 E/niejiyong( 1083): TypeBWeatherWidget :: performUpdate..cityLocationId = cityId:337342
        10-18 13:48:00.050 D/haha    ( 1083): WeatherWidget update  AmPm=1,  Hour=1,  Minute=48
        10-18 13:48:00.060 D/PowerManagerService(  817): sendPendingNotificationsLocked mSendGoToSleepFinishedNotificationWhenReady = false
        10-18 13:48:01.070 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 22.0
        10-18 13:48:01.290 D/WifiStateMachine(  817): handleMessage: E msg.what=131155
        10-18 13:48:01.290 D/WifiStateMachine(  817): processMsg: ConnectedState
        10-18 13:48:01.290 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 23.0
        10-18 13:48:01.300 D/WifiStateMachine(  817): processMsg: L2ConnectedState
        10-18 13:48:01.300 E/WifiManager(  817): calculateSignalLevel(), enter. rssi=-67 numLevels=5 getNameForPid(817)=system_server
        10-18 13:48:01.300 D/WifiStateMachine(  817): handleMessage: X
        10-18 13:48:02.720 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 22.0
        10-18 13:48:02.830 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 23.0
        10-18 13:48:03.050 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 22.0
        10-18 13:48:03.160 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 23.0
        10-18 13:48:04.310 D/WifiStateMachine(  817): handleMessage: E msg.what=131155
        10-18 13:48:04.310 D/WifiStateMachine(  817): processMsg: ConnectedState
        10-18 13:48:04.310 D/WifiStateMachine(  817): processMsg: L2ConnectedState
        10-18 13:48:04.310 E/WifiManager(  817): calculateSignalLevel(), enter. rssi=-66 numLevels=5 getNameForPid(817)=system_server
        10-18 13:48:04.310 D/WifiStateMachine(  817): handleMessage: X
        10-18 13:48:07.010 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 24.0
        10-18 13:48:07.230 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 23.0
        10-18 13:48:07.320 D/WifiStateMachine(  817): handleMessage: E msg.what=131155
        10-18 13:48:07.320 D/WifiStateMachine(  817): processMsg: ConnectedState
        10-18 13:48:07.320 D/WifiStateMachine(  817): processMsg: L2ConnectedState
        10-18 13:48:07.330 E/WifiManager(  817): calculateSignalLevel(), enter. rssi=-67 numLevels=5 getNameForPid(817)=system_server
        10-18 13:48:07.330 D/WifiStateMachine(  817): handleMessage: X
        10-18 13:48:07.540 D/BatteryService(  817): ZTE Sending ACTION_BATTERY_CHANGED.  level:65, scale:100, status:3, health:2, present:true, voltage: 3935, temperature: 270, technology: Li-ion, AC powered:false, USB powered:false, Wireless powered:false, icon:17302952, invalid charger:0
        10-18 13:48:07.550 D/LockScreen_KeyguardUpdateMonitor(  969): received broadcast android.intent.action.BATTERY_CHANGED
        10-18 13:48:07.550 D/LockScreen_DMLockCodeController(  969): canAcceptIntent - can: false
        10-18 13:48:07.550 D/LockScreen_CMASAlertController(  969): canAcceptIntent - can: false
        10-18 13:48:07.560 D/LockScreen_KeyguardUpdateMonitor(  969): handleBatteryUpdate
        10-18 13:48:07.560 D/WifiApPowerMode(  817): ACTION_BATTERY_CHANGED received. pluggedType=0 mUSBConnected=false
        10-18 13:48:07.560 D/WifiController(  817): battery changed pluggedType: 0
        10-18 13:48:07.570 D/PowerManagerService(  817): sendPendingNotificationsLocked mSendGoToSleepFinishedNotificationWhenReady = false
        10-18 13:48:08.990 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 24.0
        10-18 13:48:09.100 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 23.0
        10-18 13:48:10.000 D/PowerManagerService_DumpWakeLock(  817): Dump interval is: 39 s
        10-18 13:48:10.000 D/PowerManagerService_DumpWakeLock(  817):  Current State is: Awake
        10-18 13:48:10.000 D/PowerManagerService_DumpWakeLock(  817): Screen off timeout: 30000 ms
        10-18 13:48:10.000 D/PowerManagerService_DumpWakeLock(  817): Screen dim duration: 6000 ms
        10-18 13:48:10.000 D/PowerManagerService_DumpWakeLock(  817): Wake Locks: size=1
        10-18 13:48:10.000 D/PowerManagerService_DumpWakeLock(  817):   SCREEN_BRIGHT_WAKE_LOCK        'WindowManager' ON_AFTER_RELEASE (uid=1000, pid=817, ws=WorkSource{10108})
        10-18 13:48:10.000 D/PowerManagerService_DumpWakeLock(  817): Suspend Blockers: size=5
        10-18 13:48:10.000 D/PowerManagerService_DumpWakeLock(  817):   PowerManagerService.WakeLocks: ref count=1
        10-18 13:48:10.000 D/PowerManagerService_DumpWakeLock(  817):   PowerManagerService.Display: ref count=1
        10-18 13:48:10.000 D/PowerManagerService_DumpWakeLock(  817):   PowerManagerService.Proximity: ref count=0
        10-18 13:48:10.000 D/PowerManagerService_DumpWakeLock(  817):   PowerManagerService.Broadcasts: ref count=0
        10-18 13:48:10.000 D/PowerManagerService_DumpWakeLock(  817):   PowerManagerService.WirelessChargerDetector: ref count=0
        10-18 13:48:10.010 D/PowerManagerService_DumpWakeLock(  817): Screen On Blocker: held=false, mNestCount=0
        10-18 13:48:10.010 D/PowerManagerService_DumpWakeLock(  817): Display Blanker: blanked=false
        10-18 13:48:10.330 D/WifiStateMachine(  817): handleMessage: E msg.what=131155
        10-18 13:48:10.330 D/WifiStateMachine(  817): processMsg: ConnectedState
        10-18 13:48:10.330 D/WifiStateMachine(  817): processMsg: L2ConnectedState
        10-18 13:48:10.350 E/WifiManager(  817): calculateSignalLevel(), enter. rssi=-67 numLevels=5 getNameForPid(817)=system_server
        10-18 13:48:10.350 D/WifiStateMachine(  817): handleMessage: X
        10-18 13:48:11.310 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 22.0
        10-18 13:48:11.520 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 23.0
        10-18 13:48:12.290 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 22.0
        10-18 13:48:12.400 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 23.0
        10-18 13:48:13.170 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 22.0
        10-18 13:48:13.280 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 23.0
        10-18 13:48:13.350 D/WifiStateMachine(  817): handleMessage: E msg.what=131155
        10-18 13:48:13.350 D/WifiStateMachine(  817): processMsg: ConnectedState
        10-18 13:48:13.350 D/WifiStateMachine(  817): processMsg: L2ConnectedState
        10-18 13:48:13.360 E/WifiManager(  817): calculateSignalLevel(), enter. rssi=-66 numLevels=5 getNameForPid(817)=system_server
        10-18 13:48:13.360 D/WifiStateMachine(  817): handleMessage: X
        10-18 13:48:14.050 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 22.0
        10-18 13:48:14.160 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 23.0
        10-18 13:48:14.930 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 22.0
        10-18 13:48:15.260 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 23.0
        10-18 13:48:15.810 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 22.0
        10-18 13:48:16.140 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 23.0
        10-18 13:48:16.360 D/WifiStateMachine(  817): handleMessage: E msg.what=131155
        10-18 13:48:16.360 D/WifiStateMachine(  817): processMsg: ConnectedState
        10-18 13:48:16.370 D/WifiStateMachine(  817): processMsg: L2ConnectedState
        10-18 13:48:16.370 E/WifiManager(  817): calculateSignalLevel(), enter. rssi=-66 numLevels=5 getNameForPid(817)=system_server
        10-18 13:48:16.380 D/WifiStateMachine(  817): handleMessage: X
        10-18 13:48:16.690 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 22.0
        10-18 13:48:16.800 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 23.0
        10-18 13:48:17.790 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 22.0
        10-18 13:48:17.900 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 23.0
        10-18 13:48:18.780 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 22.0
        10-18 13:48:18.890 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 23.0
        10-18 13:48:19.380 D/WifiStateMachine(  817): handleMessage: E msg.what=131155
        10-18 13:48:19.380 D/WifiStateMachine(  817): processMsg: ConnectedState
        10-18 13:48:19.380 D/WifiStateMachine(  817): processMsg: L2ConnectedState
        10-18 13:48:19.390 E/WifiManager(  817): calculateSignalLevel(), enter. rssi=-67 numLevels=5 getNameForPid(817)=system_server
        10-18 13:48:19.390 D/WifiStateMachine(  817): handleMessage: X
        10-18 13:48:19.550 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 22.0
        10-18 13:48:19.660 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 23.0
        10-18 13:48:21.640 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 22.0
        10-18 13:48:21.740 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 23.0
        10-18 13:48:22.290 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 22.0
        10-18 13:48:22.400 D/WifiStateMachine(  817): handleMessage: E msg.what=131155
        10-18 13:48:22.400 D/WifiStateMachine(  817): processMsg: ConnectedState
        10-18 13:48:22.400 D/WifiStateMachine(  817): processMsg: L2ConnectedState
        10-18 13:48:22.410 E/WifiManager(  817): calculateSignalLevel(), enter. rssi=-66 numLevels=5 getNameForPid(817)=system_server
        10-18 13:48:22.410 D/WifiStateMachine(  817): handleMessage: X
        10-18 13:48:22.460 D/PowerManagerService(  817): sendPendingNotificationsLocked mSendGoToSleepFinishedNotificationWhenReady = false
        10-18 13:48:22.500 I/netstats_mobile_sample(  817): [0,0,0,0,0,0,0,0,0,0,0,0,1445201302510]
        10-18 13:48:22.500 I/netstats_wifi_sample(  817): [2480468,27807,4308482,16444,2364596,25245,4078070,16437,2039826,23572,4074350,16449,1445201302510]
        10-18 13:48:22.500 D/PowerManagerService(  817): sendPendingNotificationsLocked mSendGoToSleepFinishedNotificationWhenReady = false
        10-18 13:48:22.510 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 23.0
        10-18 13:48:23.510 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 22.0
        10-18 13:48:23.720 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 23.0
        10-18 13:48:24.390 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 22.0
        10-18 13:48:24.610 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 23.0
        10-18 13:48:25.410 D/WifiStateMachine(  817): handleMessage: E msg.what=131155
        10-18 13:48:25.410 D/WifiStateMachine(  817): processMsg: ConnectedState
        10-18 13:48:25.410 D/WifiStateMachine(  817): processMsg: L2ConnectedState
        10-18 13:48:25.420 E/WifiManager(  817): calculateSignalLevel(), enter. rssi=-68 numLevels=5 getNameForPid(817)=system_server
        10-18 13:48:25.420 D/WifiStateMachine(  817): handleMessage: X
        10-18 13:48:26.370 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 22.0
        10-18 13:48:26.480 D/DisplayPowerController(  817): updateAmbientLux:  mLightSensorListener lux is 23.0
        10-18 13:48:26.990 D/LockScreen_KeyguardViewMediator(  969): setHidden false
        10-18 13:48:26.990 D/LockScreen_KeyguardUpdateMonitor(  969): sendKeyguardVisibilityChanged(true)
        10-18 13:48:26.990 D/LockScreen_KeyguardUpdateMonitor(  969): handleKeyguardVisibilityChanged(1)
        10-18 13:48:26.990 D/SensorManager(  817): android: unregisterListenerImpl: all sensors
        10-18 13:48:26.990 D/SensorService(  817): xym SensorService::disable---on 0
        10-18 13:48:26.990 D/SensorService(  817): xym 1 active sensors
        10-18 13:48:26.990 D/DisplayPowerController(  817): ZTE_PM mPowerRequest.screenState is 2
        10-18 13:48:26.990 D/DisplayPowerController(  817): ZTE_PM_PROX disable ProxSensor while NO useProximitySensor 
        10-18 13:48:26.990 D/DisplayPowerController(  817): ZTE_PM_PROX setProximitySensorEnabled enable = false
        10-18 13:48:26.990 D/DisplayPowerController(  817): ZTE_PM  setLightSensorEnabled enable = false updateAutoBrightness = false
        10-18 13:48:27.000 E/SensorManager(  817): SensorListener android: 
        10-18 13:48:27.010 D/PowerManagerService(  817): sendPendingNotificationsLocked mSendGoToSleepFinishedNotificationWhenReady = false
        10-18 13:48:27.020 D/DisplayPowerState(  817): Updating screen state: onChanged=false, on= true, backlightChanged=true, backlight=38
        10-18 13:48:27.080 D/ledlog_java_com(  817): Excessive delay setting light: 63ms
        10-18 13:48:27.080 D/DisplayPowerState(  817): Updating screen state: onChanged=false, on= true, backlightChanged=true, backlight=28
        10-18 13:48:27.150 D/ledlog_java_com(  817): Excessive delay setting light: 66ms
        10-18 13:48:27.150 D/DisplayPowerState(  817): Updating screen state: onChanged=false, on= true, backlightChanged=true, backlight=15
        10-18 13:48:27.220 D/ledlog_java_com(  817): Excessive delay setting light: 67ms
        10-18 13:48:27.220 D/DisplayPowerState(  817): Updating screen state: onChanged=false, on= true, backlightChanged=true, backlight=12
        10-18 13:48:27.280 D/ledlog_java_com(  817): Excessive delay setting light: 64ms
        10-18 13:48:28.420 D/WifiStateMachine(  817): handleMessage: E msg.what=131155
        10-18 13:48:28.420 D/WifiStateMachine(  817): processMsg: ConnectedState
        10-18 13:48:28.420 D/WifiStateMachine(  817): processMsg: L2ConnectedState
        10-18 13:48:28.430 E/WifiManager(  817): calculateSignalLevel(), enter. rssi=-67 numLevels=5 getNameForPid(817)=system_server
        10-18 13:48:28.430 D/WifiStateMachine(  817): handleMessage: X
        10-18 13:48:29.320 D/WifiMonitor(  817): Event [IFNAME=wlan0 CTRL-EVENT-BSS-REMOVED 5 00:19:77:30:07:16]
        10-18 13:48:29.320 W/WifiMonitor(  817): <<<<<tokens[0]= CTRL-EVENT-BSS-REMOVED
        10-18 13:48:29.320 D/WifiMonitor(  817): Event [IFNAME=wlan0 CTRL-EVENT-BSS-REMOVED 6 00:19:77:30:07:14]
        10-18 13:48:29.330 W/WifiMonitor(  817): <<<<<tokens[0]= CTRL-EVENT-BSS-REMOVED
        10-18 13:48:29.330 D/WifiMonitor(  817): Event [IFNAME=wlan0 CTRL-EVENT-BSS-REMOVED 12 00:0d:67:6e:dc:cf]
        10-18 13:48:29.330 W/WifiMonitor(  817): <<<<<tokens[0]= CTRL-EVENT-BSS-REMOVED
        10-18 13:48:29.330 D/WifiMonitor(  817): Event [IFNAME=wlan0 CTRL-EVENT-BSS-REMOVED 9 00:19:77:2e:b2:96]
        10-18 13:48:29.330 W/WifiMonitor(  817): <<<<<tokens[0]= CTRL-EVENT-BSS-REMOVED
        10-18 13:48:29.330 D/WifiMonitor(  817): Event [IFNAME=wlan0 CTRL-EVENT-BSS-REMOVED 10 00:19:77:2e:b2:95]
        10-18 13:48:29.330 W/WifiMonitor(  817): <<<<<tokens[0]= CTRL-EVENT-BSS-REMOVED
        10-18 13:48:29.330 D/WifiMonitor(  817): Event [IFNAME=wlan0 CTRL-EVENT-BSS-REMOVED 7 00:19:77:2e:b2:94]
        10-18 13:48:29.330 W/WifiMonitor(  817): <<<<<tokens[0]= CTRL-EVENT-BSS-REMOVED
        10-18 13:48:29.330 D/WifiMonitor(  817): Event [IFNAME=wlan0 CTRL-EVENT-BSS-REMOVED 8 00:19:77:2e:b2:97]
        10-18 13:48:29.330 W/WifiMonitor(  817): <<<<<tokens[0]= CTRL-EVENT-BSS-REMOVED
        10-18 13:48:29.330 D/WifiMonitor(  817): Event [IFNAME=wlan0 CTRL-EVENT-BSS-REMOVED 11 02:ac:e0:32:8c:70]
        10-18 13:48:29.330 W/WifiMonitor(  817): <<<<<tokens[0]= CTRL-EVENT-BSS-REMOVED
        10-18 13:48:29.330 D/WifiMonitor(  817): Event [IFNAME=wlan0 CTRL-EVENT-BSS-REMOVED 13 00:0d:67:6e:dc:d1]
        10-18 13:48:29.330 W/WifiMonitor(  817): <<<<<tokens[0]= CTRL-EVENT-BSS-REMOVED
        10-18 13:48:31.440 D/WifiStateMachine(  817): handleMessage: E msg.what=131155
        10-18 13:48:31.440 D/WifiStateMachine(  817): processMsg: ConnectedState
        10-18 13:48:31.440 D/WifiStateMachine(  817): processMsg: L2ConnectedState
        10-18 13:48:31.450 E/WifiManager(  817): calculateSignalLevel(), enter. rssi=-67 numLevels=5 getNameForPid(817)=system_server
        10-18 13:48:31.450 D/WifiStateMachine(  817): handleMessage: X
        10-18 13:48:32.470 D/PowerManagerService_DumpWakeLock(  817): Dump interval is: 22 s
        10-18 13:48:32.470 D/PowerManagerService_DumpWakeLock(  817):  Current State is: Awake
        10-18 13:48:32.470 D/PowerManagerService_DumpWakeLock(  817): Screen off timeout: 30000 ms
        10-18 13:48:32.470 D/PowerManagerService_DumpWakeLock(  817): Screen dim duration: 6000 ms
        10-18 13:48:32.470 D/PowerManagerService_DumpWakeLock(  817): Wake Locks: size=1
        10-18 13:48:32.470 D/PowerManagerService_DumpWakeLock(  817):   SCREEN_BRIGHT_WAKE_LOCK        'WindowManager' ON_AFTER_RELEASE (uid=1000, pid=817, ws=WorkSource{10108})
        10-18 13:48:32.470 D/PowerManagerService_DumpWakeLock(  817): Suspend Blockers: size=5
        10-18 13:48:32.470 D/PowerManagerService_DumpWakeLock(  817):   PowerManagerService.WakeLocks: ref count=1
        10-18 13:48:32.470 D/PowerManagerService_DumpWakeLock(  817):   PowerManagerService.Display: ref count=1
        10-18 13:48:32.470 D/PowerManagerService_DumpWakeLock(  817):   PowerManagerService.Proximity: ref count=0
        10-18 13:48:32.470 D/PowerManagerService_DumpWakeLock(  817):   PowerManagerService.Broadcasts: ref count=0
        10-18 13:48:32.470 D/PowerManagerService_DumpWakeLock(  817):   PowerManagerService.WirelessChargerDetector: ref count=0
        10-18 13:48:32.470 D/PowerManagerService_DumpWakeLock(  817): Screen On Blocker: held=false, mNestCount=0
        10-18 13:48:32.470 D/PowerManagerService_DumpWakeLock(  817): Display Blanker: blanked=false

        Comment


        • #49
          Originally posted by mhaeberli View Post
          Varun,
          So, to deconstruct and summarize this:
          a) you used a micro-USB hub, not the PDM to distribute control from a phone (S5 or ZTE Speed). You still had intermittent problems with the robot controller phone consistently recognizing the attached Motor Controllers, etc.
          (by the way, what micro-USB hub did you happen to use?)
          b) I'm not sure I understand your point about proving there is a software problem. Can you please explain?
          Thanks,
          Martin
          Mentor, Team 7593 TigerBots
          ----
          I can tell that there is a software problem because when I plug in the modules/hub into the phone, the Robot Controller app automatically opens every time, no matter which modules are connected, so I know the phone can recognize the modules and knows their serial number. However, the software in the app is not able to recognize these modules, saying that the particular USB device cannot be found, or saying that it is not a motor/servo controller, or another weird error message, and scanning for it does not bring it up, until I do the standard procedures for "resetting" everything multiple times.
          Programmer for Team 4997 Masquerade -- 2012 World Champions, 2014 - 2016 Division Finalists
          Founding Member of Team 6433 Neutrinos -- 2015 World Champions

          Check out my intro video to the new tech platform
          Check out my team's Robot Reveal for Res-Q

          Comment


          • #50
            Possible fix for MR scan issues

            OK, I've got an update on this myself, and for me at least, it's a solution, though as you will see it is a non-sanctioned one.

            I am increasingly convinced that this is NOT a software issue as we once feared.

            In the discussion below, here are some caveats:
            - I'm not an electrical engineer by training, but I'm dangerous. Real EEs, please check my thought process.
            - This is only a theory, with some collected evidence and a fix that works for me, but maybe not for you.

            Reading through the various comments here about sensitivity to voltage and battery charge levels, I started doing a little digging on the power-up sequence for Modern Robotics controllers.

            Experiment #1: Construct sample robot. My robot consists of a power distribution board, a motor controller, two motors, and a laboratory power supply. No battery to worry about.

            Start the robot. If it connects successfully, then power off and on the 12V section, eventually it will get into its failure.

            Normally when it is complaining it says something like "Serial # xx is not a valid MR controller." The serial # itself is stored in the FTDI chip (USB serial port) not the on-board micro controller that takes the commands and sends them to the motor drivers. So: how is this micro controller being reset?

            It turns out it's not. The Modern Robotics drives use a PIC24F series micro controller and they count on the internal power-on reset circuit. Microchip's guidelines recommend an external reset circuit when the power supply voltage does not rise quickly on power-on.

            Well, we're building robots here. Robots with lots of things attached over long wires to a relatively small power source. When you apply power, there's a huge inrush of current and it takes a while for all the power to stabilize. Meanwhile the PIC's power-on reset expires and it tries to start the MCU before power is stable. The result is that it's not always ready.

            A freshly charged battery seems to work because its voltage is higher, so the PIC can reach the spec'd voltage before the on-chip power on reset expires.

            The Evidence:


            See: https://www.dropbox.com/s/p0qssv9ira...00001.png?dl=0

            The yellow line is the rise time of the 12V rail. The blue line is the rise time of the MCLR signal (the reset input to the the PIC). It needs to reach 4V to be considered "out of reset" but anywhere between 1V and 4V is the no-man's land for "high" and "low." The 12V line bounces around while the other devices settle.

            Since the MCLR signal is the same as the 5V supply for the PIC, the PIC's own supply also has the slow rise, exactly the same as MCLR. Normally this would be fine but it's just a little too slow.

            Experiment #2: The Fix.

            Add a capacitor between the MCLR signal and ground. Conveniently, there's a 5-pin programming header on the board that is used to write the PIC program into the flash. I added a 0.1uf capacitor between pin 4 (MCLR) and pin 1 (GND). The tails sticking out the side are so I can attach the scope probes.


            See: https://www.dropbox.com/s/97cciktlsf..._0928.jpg?dl=0

            What this changes:

            Here's the result:


            See: https://www.dropbox.com/s/nowiy58q22...00005.PNG?dl=0

            The pink line is the 5V supply voltage to the PIC.

            The blue line is the MCLR signal.

            Now the MCLR will not de-assert until well after the 12V and 5V supplies are stable.

            Since I made this change, my simple robot has NEVER missed a configuration.

            I'm honestly surprised that MR made this error. A robot like this will have the most unfriendly power environment you can imagine, and it's our job as FIRST mentors and suppliers to NOT be the reason our teams have problems.

            Modification of the motor controller in this way is most certainly a violation of the rules, so I am not recommending that anyone does this to a robot destined for competitions.

            But, I'd like to see if any others can replicate my results. If it works for others, perhaps we can get it as a sanctioned mod.

            /Mitch.
            Mitch Lichtenberg
            Technical Mentor, Saratoga High School Mechanical Science and Engineering Team (M-SET)
            FRC 649
            FTC 6165, 7641, 7390

            Comment


            • #51
              Nice work - I'd like to see MR comment on this!

              It's all been 'voodoo' but we do tend to fair better with topped up batteries...

              Looking for a cap...

              Comment


              • #52
                Mitch,
                This is interesting, but how does it "bake out" on a real robot - one that, by assumption, was suffering frequent USB resets before, and now, we assume, doesn't see those anymore?
                Thanks,
                Martin Haeberli
                Mentor, Team 7593 TigerBots
                (and also FRC 3045) - thanks to M-Set for a wonderful CalGames and for bringing 3045 in on the alliance...

                Comment


                • #53
                  Originally posted by Mitch View Post
                  OK, I've got an update on this myself, and for me at least, it's a solution, though as you will see it is a non-sanctioned one.

                  [...]

                  I'm honestly surprised that MR made this error. A robot like this will have the most unfriendly power environment you can imagine, and it's our job as FIRST mentors and suppliers to NOT be the reason our teams have problems.
                  Marvelous, simply marvelous! Thanks for doing this and for writing it up clearly. I hope this pans out and we can put an end to these issues.

                  Has anyone / can anyone take a look at the analogous circuitry in the other modules (CDIM, Legacy, Servo, and CPDM) and see whether there's similar problems there? Is anyone from Modern Robotics reading these threads and might care to provide additional insight?

                  Comment


                  • #54
                    A 0.1 microfarad ceramic cap should do the trick (it's what I had handy).

                    Something like DigiKey # BC2665CT-ND should work. I had some unknown part in my junk box.

                    For those looking at the linked photo, the cap goes between the square pin 1 on J5 (upper right corner) and pin 4.

                    Since posting, I've added a servo controller and another motor controller. So, my "mentor bot" now has two motor controllers, one servo, and one device interface. I'm going to add an unmodified servo controller (my last personally owned one) to see if it causes problems, then I'll modify it and make sure the problem goes away.

                    I can power cycle at will. I can unplug and reattach the USB cables (then restart the robot). The order doesn't seem to matter anymore.
                    If you go really fast, it is possible to leave the phone a little confused, but an unplug/replug fixes that.

                    (you only need to modify servo and motor controllers; theoretically the bus-powered legacy and device modules get good VBus power from the PDB but I am going to measure that one just to be sure).

                    I hope you (and any other teams) are successful after trying this. Definitely post results for all.

                    If it turns out to be the right answer, we will want to do two things:
                    - Get it to be a sanctioned modification (FIRST rules)
                    - Get MR to fix it for future production.

                    If I've just been lucky and this fix isn't right, hopefully we've gained info to help us continue our quest.

                    /Mitch.
                    Mitch Lichtenberg
                    Technical Mentor, Saratoga High School Mechanical Science and Engineering Team (M-SET)
                    FRC 649
                    FTC 6165, 7641, 7390

                    Comment


                    • #55
                      Originally posted by mhaeberli View Post
                      Mitch,
                      This is interesting, but how does it "bake out" on a real robot - one that, by assumption, was suffering frequent USB resets before, and now, we assume, doesn't see those anymore?
                      Thanks,
                      Martin Haeberli
                      Mentor, Team 7593 TigerBots
                      (and also FRC 3045) - thanks to M-Set for a wonderful CalGames and for bringing 3045 in on the alliance...

                      Good question - my "mentor bot" is a drivable robot. I'm using the supplied USB cables and DC power pigtails. It's not a pretty robot. Currently:

                      - PDB modified with Anderson Power Poles (legal mod).
                      - 2X motor controllers
                      - 2X Andymark Neverest 40
                      - 1X servo controller
                      - 1X device interface
                      - 1x Color sensor
                      - 1x touch sensor

                      I haven't seen USB disconnects, but I don't push it as hard as a team does.

                      As Tom has mentioned before, the USB cables are definitely going to be an issue. We all suffered USB connector problems on NXT+Samantha, this will be no different, perhaps worse with all the mini and micro connectors.

                      So: Robots losing USB during operation is still very much an issue. Using decent cables, good tiedowns, robust wire routing are all good practices.

                      The issue I was hoping to solve here was the dreaded "scan after restart" problems that have been plaguing us...

                      /Mitch.
                      And: you're welcome! I'll let the FRC guys know, we all had an excellent, fun CalGames.
                      Mitch Lichtenberg
                      Technical Mentor, Saratoga High School Mechanical Science and Engineering Team (M-SET)
                      FRC 649
                      FTC 6165, 7641, 7390

                      Comment


                      • #56
                        Our team suddenly started to have this problem. We were running good with one motor controller for a month. We added the second motor controller and a servo controller and now this problem popped up. The first time was the night before our scrimmage. We did multiple power on cycles and re-seating cables. We replaced the battery and the problem went away. Then during scrimmage we didn't have a problem until the last match. No matter what we did, it wouldn't find the MR controllers. We had replaced the battery before the match. So we got another battery. We tested the battery and it was was at 12.7 volts. Put it on the bot and all controllers were found. The battery we pulled off was at 13.1 volts. We figured it must still be a cable issue and got lucky replacing the battery. We have ordered three sets of cables from monoprice. But maybe it is a battery performance issue that the Modern Robotics Controllers are not robust to. We are anxious to see how this resolves. We need to number our batteries to see if it is occurs more often with specific batteries.

                        Comment


                        • #57
                          We attended an outreach event over the weekend with two simple robots which we made available for our middle-school guests to drive. Here are the configurations, which I'll identify according to their robot controller (RC) WiFi Direct id:

                          18-RC:
                          • ZTE Speed
                          • Core Power Distribution Module S/N P501897, ordered 2015-05-21, received 2015-07-23
                          • Core Motor Controller (2)
                          • Core Servo Controller
                          • AndyMark NeveRest 40 motors (4)
                          • HITEC HS-485HB servos (2)
                          • Modern Robotics cabling (replaced with Monoprice cabling mid-event - see below)

                          18-RC-B:
                          • ZTE Speed
                          • Core Power Distribution Module S/N P504136, ordered 2015-09-23, received 2015-10-05
                          • Core Motor Controller (2)
                          • TETRIX gear motors (4)
                          • Modern Robotics cabling (replaced RC-CPDM OTG cable with Monoprice OTG & USB A to Mini B - see below)

                          If you were to consider each guest's driving session of approximately 1-2 minutes to be the equivalent of a teleop period for an FTC match, we had less than 20% success rate of achieving continuous error-free operation for a "match". We experienced frequent USB disconnects, emergency stops, etc. Sometimes these were recovered by issuing "restart robot" from the DS, "restart robot" from the RC, stopping/restarting the RC app, or various combinations of power cycles of CPDM, RC device, and disconnecting/reconnecting the RC-CPDM cable.

                          This low reliability rate was also experienced with an earlier version of the 18-RC robot back in July, with the main difference being the use of TETRIX gear motors at the time. I described that experience in an earlier post.

                          Prior to the event we received a shipment of the Monoprice cables suggested here and here. In an effort to increase reliability we swapped out the orginal Modern Robotics cabling with Monoprice replacements, beginning with the MR OTG cable replaced with a combination of the Monoprice OTG Adapter and USB A to Mini-B w/ Ferrite Core. When this wasn't found to fully resolve the "Unable to communicate with ModernRobotics USB device" problems, we replaced the remainder of the MR USB A to Mini-B cables with the Monoprice versions on 18-RC. We also replaced the OTG cable on 18-RC-B, but did not have enough Monoprice USB A to Mini-B cables to replace the rest.

                          There was a period of about 10 minutes where we thought the cable swap had worked, but the errors continued at just about the same rate. The event ran from 12:00 to 5:00 pm, but we gave up trying to demo the robots around 3:30 pm due to the poor reliability (and team members and mentor discouraged by having to repeatedly explain to eager middle-school girls that "the robot isn't working right now").

                          The logcats from the the day are posted in this gist. The MR to Monoprice cable swap was performed about 2:30 pm. There seemed to be a little overlap in the timestamps log entries in the 18-RC log and log.gz, so I included them both. If anyone with knowledge of how to interpret the log entries for the errors has any insight, please pass along any suggestions.

                          Our next step is to try bypassing the CPDM USB hub with a standalone mini USB hub as suggested here.
                          Joe Higham
                          Mentor, 18 Techno Chix

                          Comment


                          • #58
                            Originally posted by Mitch View Post
                            OK, I've got an update on this myself, and for me at least, it's a solution, though as you will see it is a non-sanctioned one.

                            I am increasingly convinced that this is NOT a software issue as we once feared.

                            In the discussion below, here are some caveats:
                            - I'm not an electrical engineer by training, but I'm dangerous. Real EEs, please check my thought process.
                            - This is only a theory, with some collected evidence and a fix that works for me, but maybe not for you.
                            Hi Mitch.

                            Thanks for the analysis and scope pics.

                            Let me post a related issue and see what you think, and consider how it relates to what you found.

                            I have been tracking down a similar effect, but it relates to power cycling the 12V when the App is running (even just sitting in stop robot mode).

                            My tests indicate that if the app is running, and you cycle the 12V power off for about 2 seconds and then bring it up again, you naturally get a USB error, but you ALSO create the condition that causes the software in the phone to refuse to see the proper USB configuration any more. The only way to recover from this USB lockup is to sleep the phone for about 10 seconds, and then all is well.

                            However, under the same running conditions, if you cycle the 12V off for a full 10 seconds before re-powering, you still get the USB error, but you DO NOT cause the unrecoverable USB Lockup error. Simply shutting down the power, killing the app and restarting power will get you up and running again.

                            Based on your testing, if the CPU reset timing is subject to a "short reset time" problem... I'm wondering if this is ALSO being initiated by a short power-off cycle.

                            The CPU reset period would normally be the time a fully discharged cap takes to reach some input voltage threshold.

                            However, if the power had been on recently, and the reset cap was not fully discharged, wouldn't this ALSO cause a short reset cycle?
                            (It takes less time to charge up from 1V than from 0V)

                            Note: This is harder to test with a scope because the probe itself would help discharge the cap, but it would explain to me the fact that a short power down cycle can be so destructive.

                            Often a reset circuit would ALSO have a diode from the cap, up to the supply rail, so when power goes off, the cap is fully discharged, but it's effectiveness may depend on the regulator circuit..
                            I'm wondering if this is the case with the MR design.

                            Final observation.....
                            As we encounter the "Can't find USB" error,we are prone to do a power reset to clear the problem....
                            I've come to the conclusion you MUST power down the 12V for at LEAST 10 seconds unless you just want to re-initiate the problem...

                            Phil.

                            Comment


                            • #59
                              Hey Phil,

                              Regarding my comments from three months ago concerning the multiple delays in shipment of the MR electronics:

                              Originally posted by Alec View Post
                              Originally posted by Philbot View Post

                              The good news is... since the ordering opened up BEFORE the official season start, we can get all these backlogs and re-orders out of the way before we are actually under the gun with the need to start building.

                              Phil.... looking for the silver lining
                              Presuming that shipments are delayed for QA reasons, I suggest the silver lining is that we won't be reading horror stories on this forum regarding DOA electronics, or otherwise electronics that fail just before or during a competition.
                              Well, it turns out there is no silver lining to the delays in shipment, so it looks like I have to eat my words... sigh!

                              Comment


                              • #60
                                Originally posted by Philbot View Post
                                Let me post a related issue and see what you think, and consider how it relates to what you found.

                                I have been tracking down a similar effect, but it relates to power cycling the 12V when the App is running (even just sitting in stop robot mode).

                                My tests indicate that if the app is running, and you cycle the 12V power off for about 2 seconds and then bring it up again, you naturally get a USB error, but you ALSO create the condition that causes the software in the phone to refuse to see the proper USB configuration any more. The only way to recover from this USB lockup is to sleep the phone for about 10 seconds, and then all is well.
                                I've seen this too and this is why I initially thought it was a software issue. I got some insight on Android USB device discovery from a kernel engineer at Google and managed to get some kernel logs. (incidentally, this issue occurs on non-ZTE phones, I used a Samsung tablet running KitKat). There are no suspicious errors in the any of the Android logs.


                                Any time you power cycle the 12V side, you are resetting the PIC micro controller. The micro is not powered from the 5V USB, but from a small regulator on the 12V side. (Ultimately the 5V USB power is generated by the PDB, which gets it from the 12V battery. I have not studied that side at all).

                                Incidentally, the FTDI (usb-to-serial) parts are also micro controllers with their own idea of reset. I haven't looked at those yet.

                                I've taken many scope shots of the 12V and local(PIC) 5V rails coming up - they vary quite a lot.

                                My theory is that the PIC is being released from reset before power is stable, and it can either work properly or behave erratically when this happens. Which of those things that happens is random, affected by many things (even temperature). Giving the PIC just a few milliseconds longer to see stable power before releasing reset is the trick (or so my theory goes).

                                PIC microcontrollers have brown-out detectors and other features that are supposed to prevent this sort of thing from happening. Still, Microchip's documentation does specify rise time for the supply voltage. In addition, there are parameters you can store in the flash related to POR - I have dumped the contents of the flash but didn't get the boot parameters, I'll do that next time.

                                As I said, I'm not an EE, but I've built little micro controller projects like this. I never would have considered leaving out the RC on the reset line. MR might have done so to make manufacturing easier - if you put a capacitor there you need a way to disconnect it for the programming cable (this is also from the PIC documentation).


                                However, under the same running conditions, if you cycle the 12V off for a full 10 seconds before re-powering, you still get the USB error, but you DO NOT cause the unrecoverable USB Lockup error. Simply shutting down the power, killing the app and restarting power will get you up and running again.
                                You *can* get things into a state where the phone is confused, even with the caps installed. If I power cycle for 200ms or so (this is the sort of thing that can happen during a tournament) it might not be enough for the phone to see the unplug event. In that case, re-plugging the phone's micro-USB cable makes restart work again.

                                Last night (with caps installed) I went through several dozen 12V on/off cycles (about 2 seconds off) and was able to restart the robot without exiting hte app. I could even restart from the driver station.

                                Based on your testing, if the CPU reset timing is subject to a "short reset time" problem... I'm wondering if this is ALSO being initiated by a short power-off cycle.
                                I'm nearly certain of it.

                                The CPU reset period would normally be the time a fully discharged cap takes to reach some input voltage threshold.

                                However, if the power had been on recently, and the reset cap was not fully discharged, wouldn't this ALSO cause a short reset cycle?
                                (It takes less time to charge up from 1V than from 0V)

                                Note: This is harder to test with a scope because the probe itself would help discharge the cap, but it would explain to me the fact that a short power down cycle can be so destructive.

                                Often a reset circuit would ALSO have a diode from the cap, up to the supply rail, so when power goes off, the cap is fully discharged, but it's effectiveness may depend on the regulator circuit..
                                I'm wondering if this is the case with the MR design.
                                I can easily make those measurements and see how long it takes for the reset line to go low on both a modified and unmodified controller on power _off_. The time scales we're talking about are in milliseconds. Looking at my photo, the resistor on the pull-up side of the cap is actually 100K, not 10K (it is R11, marked 104) , so the cap introduced a really long delay, more than is probably necessary, but plenty short in the time scale we care about. A 0.01uf cap might have worked just as well.

                                Final observation.....
                                As we encounter the "Can't find USB" error,we are prone to do a power reset to clear the problem....
                                I've come to the conclusion you MUST power down the 12V for at LEAST 10 seconds unless you just want to re-initiate the problem...

                                Phil.
                                10 seconds is a good rule (even with the cap) - this will ensure that the FTDI parts have fully lost power, the power supply caps are discharged throughout the system, and the Android phone has seen VBus go away so it can tear down all the USB devices. May not need all of 10 seconds but it's a good number to give teams (they'll be impatient and wait for less anyway!)

                                /Mitch.
                                Mitch Lichtenberg
                                Technical Mentor, Saratoga High School Mechanical Science and Engineering Team (M-SET)
                                FRC 649
                                FTC 6165, 7641, 7390

                                Comment

                                Working...
                                X