Announcement

Collapse
No announcement yet.

REV Expansion HUB and "Problem With ..." (MR Sensors)

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

  • #16
    Here is a link to a google doc that has the log file. I cleared the log file, changed the port the gyro was plugged into (I2C Bus 1, Port 0). I then plugged in the robot and as soon as the robot status was: "running" the error popped up. If you search for gyro in the file you can see where the error shows up.

    Comment


    • #17
      Let me try the link again:

      https://docs.google.com/document/d/1...it?usp=sharing

      Comment


      • #18
        PACKET_TYPE_ID_UNKNOWN is different than the communication error I got. Mine seems fixed by the new firmware.

        Just curious, why do you need MR Gyro, can you use embedded IMU, which is more accurate than MR Gyro?

        Code:
        11-10 14:39:45.486  8100 10241 V LynxAnalogInputController: initializeHardware() mod#=2
        11-10 14:39:45.486  8100 10241 V LynxDigitalChannelController: initializeHardware() mod#=2
        11-10 14:39:45.510  8100 10241 V RobotCore: Creating Modern Robotics I2C Gyro Sensor - mod=2 bus=1
        11-10 14:39:45.510  8100 10241 V RobotCore: Creating I2cDeviceSynch (Lynx) - mod=2 bus=1
        11-10 14:39:45.511  8100 10241 I RobotCore: LynxFirmwareVersionManager: LynxI2cDeviceSynchV1
        11-10 14:39:45.511  8100 10241 V LynxI2cDeviceSynch: initializeHardware() mod#=2
        11-10 14:39:45.511  8100 10241 I RobotCore: ========= Device Information ===================================================
        11-10 14:39:45.511  8100 10241 I RobotCore: Type                                               Name                           Connection
        11-10 14:39:45.511  8100 10241 I RobotCore: Motor                                              br                             USB DQ146MT4; module 2; port 0
        11-10 14:39:45.511  8100 10241 I RobotCore: Motor                                              fl                             USB DQ146MT4; module 2; port 3
        11-10 14:39:45.511  8100 10241 I RobotCore: REV Robotics USB Expansion Hub Portal              Expansion Hub Portal 1         USB DQ146MT4
        11-10 14:39:45.512  8100 10241 I RobotCore: Motor                                              bl                             USB DQ146MT4; module 2; port 2
        11-10 14:39:45.512  8100 10241 I RobotCore: Motor                                              fr                             USB DQ146MT4; module 2; port 1
        11-10 14:39:45.512  8100 10241 I RobotCore: Expansion Hub DC Motor Controller                  Expansion Hub 2                USB DQ146MT4; module 2
        11-10 14:39:45.512  8100 10241 I RobotCore: Expansion Hub Servo Controller                     Expansion Hub 2                USB DQ146MT4; module 2
        11-10 14:39:45.512  8100 10241 I RobotCore: Expansion Hub Voltage Sensor                       Expansion Hub 2                USB DQ146MT4; module 2
        11-10 14:39:45.512  8100 10241 I RobotCore: Expansion Hub Pwm Controller                       Expansion Hub 2                USB DQ146MT4; module 2
        11-10 14:39:45.512  8100 10241 I RobotCore: Expansion Hub Analog Input Controller              Expansion Hub 2                USB DQ146MT4; module 2
        11-10 14:39:45.512  8100 10241 I RobotCore: Expansion Hub Digital Channel Controller           Expansion Hub 2                USB DQ146MT4; module 2
        11-10 14:39:45.516  8100 10241 I RobotCore: Expansion Hub (HW: 20, Maj: 1, Min: 7, Eng: 0)     Expansion Hub 2                USB DQ146MT4; module 2
        11-10 14:39:45.581  8100 10251 V RobotCore: nack rec'd mod=2 msg#=76 ref#=0 reason=PACKET_TYPE_ID_UNKNOWN:255
        11-10 14:39:45.586  8100 10241 E LynxI2cDeviceSynch: exception thrown during lynx communication
        11-10 14:39:45.588  8100 10241 E LynxI2cDeviceSynch: com.qualcomm.hardware.lynx.LynxNackException: (DQ146MT4 #2) LynxI2cReadStatusQueryCommand: nack received: PACKET_TYPE_ID_UNKNOWN:255
        11-10 14:39:45.589  8100 10241 E LynxI2cDeviceSynch:     at com.qualcomm.hardware.lynx.commands.LynxRespondable.responseOrThrow(LynxRespondable.java:314)
        11-10 14:39:45.590  8100 10241 E LynxI2cDeviceSynch:     at com.qualcomm.hardware.lynx.commands.LynxRespondable.sendReceive(LynxRespondable.java:254)
        11-10 14:39:45.591  8100 10241 E LynxI2cDeviceSynch:     at com.qualcomm.hardware.lynx.LynxI2cDeviceSynch.pollForReadResult(LynxI2cDeviceSynch.java:449)
        11-10 14:39:45.592  8100 10241 E LynxI2cDeviceSynch:     at com.qualcomm.hardware.lynx.LynxI2cDeviceSynchV1$1.get(LynxI2cDeviceSynchV1.java:79)
        11-10 14:39:45.592  8100 10241 E LynxI2cDeviceSynch:     at com.qualcomm.hardware.lynx.LynxI2cDeviceSynchV1$1.get(LynxI2cDeviceSynchV1.java:64)
        11-10 14:39:45.593  8100 10241 E LynxI2cDeviceSynch:     at com.qualcomm.hardware.lynx.LynxModule.acquireI2cLockWhile(LynxModule.java:1118)
        11-10 14:39:45.594  8100 10241 E LynxI2cDeviceSynch:     at com.qualcomm.hardware.lynx.LynxI2cDeviceSynch.acquireI2cLockWhile(LynxI2cDeviceSynch.java:391)
        11-10 14:39:45.595  8100 10241 E LynxI2cDeviceSynch:     at com.qualcomm.hardware.lynx.LynxI2cDeviceSynchV1.readTimeStamped(LynxI2cDeviceSynchV1.java:63)
        11-10 14:39:45.595  8100 10241 E LynxI2cDeviceSynch:     at com.qualcomm.robotcore.hardware.I2cDeviceSynchImplOnSimple.readTimeStamped(I2cDeviceSynchImplOnSimple.java:511)
        11-10 14:39:45.596  8100 10241 E LynxI2cDeviceSynch:     at com.qualcomm.robotcore.hardware.I2cDeviceSynchImplOnSimple.read(I2cDeviceSynchImplOnSimple.java:489)
        11-10 14:39:45.596  8100 10241 E LynxI2cDeviceSynch:     at com.qualcomm.robotcore.hardware.I2cDeviceSynchImplOnSimple.read8(I2cDeviceSynchImplOnSimple.java:483)
        11-10 14:39:45.597  8100 10241 E LynxI2cDeviceSynch:     at com.qualcomm.hardware.modernrobotics.ModernRoboticsI2cGyro.read8(ModernRoboticsI2cGyro.java:231)
        11-10 14:39:45.597  8100 10241 E LynxI2cDeviceSynch:     at com.qualcomm.hardware.modernrobotics.ModernRoboticsI2cGyro.getDeviceName(ModernRoboticsI2cGyro.java:221)
        11-10 14:39:45.598  8100 10241 E LynxI2cDeviceSynch:     at com.qualcomm.robotcore.hardware.HardwareMap.logDevices(HardwareMap.java:460)
        11-10 14:39:45.598  8100 10241 E LynxI2cDeviceSynch:     at com.qualcomm.ftccommon.FtcEventLoop.init(FtcEventLoop.java:181)
        11-10 14:39:45.599  8100 10241 E LynxI2cDeviceSynch:     at com.qualcomm.robotcore.eventloop.EventLoopManager.startEventLoop(EventLoopManager.java:540)
        11-10 14:39:45.599  8100 10241 E LynxI2cDeviceSynch:     at com.qualcomm.robotcore.eventloop.EventLoopManager.setEventLoop(EventLoopManager.java:514)
        11-10 14:39:45.600  8100 10241 E LynxI2cDeviceSynch:     at com.qualcomm.robotcore.eventloop.EventLoopManager.start(EventLoopManager.java:456)
        11-10 14:39:45.600  8100 10241 E LynxI2cDeviceSynch:     at com.qualcomm.robotcore.robot.Robot.start(Robot.java:59)
        11-10 14:39:45.601  8100 10241 E LynxI2cDeviceSynch:     at com.qualcomm.ftccommon.FtcRobotControllerService$RobotSetupRunnable.startRobot(FtcRobotControllerService.java:259)
        11-10 14:39:45.601  8100 10241 E LynxI2cDeviceSynch:     at com.qualcomm.ftccommon.FtcRobotControllerService$RobotSetupRunnable$1.run(FtcRobotControllerService.java:276)
        11-10 14:39:45.602  8100 10241 E LynxI2cDeviceSynch:     at com.qualcomm.robotcore.util.ThreadPool.logThreadLifeCycle(ThreadPool.java:709)
        11-10 14:39:45.602  8100 10241 E LynxI2cDeviceSynch:     at com.qualcomm.ftccommon.FtcRobotControllerService$RobotSetupRunnable.run(FtcRobotControllerService.java:267)
        11-10 14:39:45.603  8100 10241 E LynxI2cDeviceSynch:     at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:423)
        11-10 14:39:45.603  8100 10241 E LynxI2cDeviceSynch:     at java.util.concurrent.FutureTask.run(FutureTask.java:237)
        11-10 14:39:45.603  8100 10241 E LynxI2cDeviceSynch:     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
        11-10 14:39:45.604  8100 10241 E LynxI2cDeviceSynch:     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
        11-10 14:39:45.604  8100 10241 E LynxI2cDeviceSynch:     at com.qualcomm.robotcore.util.ThreadPool$ThreadFactoryImpl$1.run(ThreadPool.java:764)
        11-10 14:39:45.604  8100 10241 E LynxI2cDeviceSynch:     at java.lang.Thread.run(Thread.java:818)
        11-10 14:39:45.605  8100 10241 E LynxI2cDeviceSynch: placeholder: readStatusQuery
        11-10 14:39:45.605  8100 10241 I RobotCore: Modern Robotics Gyroscope v0.0                     gyro                           USB DQ146MT4; module 2; bus 1; addr7=0x10
        11-10 14:39:45.605  8100 10241 I FtcEventLoop: ======= INIT FINISH =======
        11-10 14:39:45.605  8100 10241 V RobotCore: EventLoopManager state is RUNNING
        11-10 14:39:45.606  8100 10241 V RobotCore: Robot Status: running, starting robot
        11-10 14:39:45.606  8100 10241 V RobotCore: Robot Status: running
        11-10 14:39:45.606  8100 10241 V ThreadPool: container(0x06454a67: executorEventLoop) added id=2745 TID=0 count=1
        11-10 14:39:45.607  8100 10241 V RobotCore: thread: ...terminating 'RobotSetupRunnable.run()'
        11-10 14:39:45.607  8100 10253 V RobotCore: thread: 'opmode loop()' starting...
        11-10 14:39:45.609  8100  8166 W AudioTrack: AUDIO_OUTPUT_FLAG_FAST denied by client; transfer 4, track 8000 Hz, output 48000 Hz
        11-10 14:39:45.613  8100 10253 D RobotCore: system telemetry: key=$System$Warning$ msg="problem with "gyro""

        Comment


        • #19
          We are using the MR Gyro because we used it last year with luck and already have the code that incorporates into our autonomous.

          How much difference is there in programming the internal IMU? Also, doesn

          Comment


          • #20
            Originally posted by CoachZM View Post
            We are still seeing the same issue after updating the firmware. Here is our setup:

            1. REV Expansion Hub
            2. 4 Neverest 20 Motors with Encoders
            3. 1 Gyro plugged into I2C port 0
            4. Gyro goes from expansion hub to level shifter to converter cable and then to sensor. All cables have been double checked to make sure they are plugged in properly
            5. In the config file on the phone we have all 4 motors in the motor portion and selected as a Neverest 20 motor.
            6. In the config file under I2C bus 0, Port 0 we have the MR Gyro selected with the name gyro typed in.
            7. The program we are trying to run is the sample code in the SDK for the MR Gyro.

            As soon as I exit out of the configuration editor, the phone scans for the hardware and goes to the status "Robot Status: running"
            As soon as this happens the error pops up in orange that says: "Warning problem with "gyro""
            It will allow us to run the program but the gyro never calibrates or gives any feedback. The gyro only flashes blue as it has done since it has been plugged in.
            Hi CoachZM,

            In your post you state that the "Gyro goes from the expansion hub to level shifter to converter cable then to sensor". Does this mean that you are using the REV Robotics Sensor Adapter Cable inline with the REV Robotics Logic Level Converter?

            http://cdn6.bigcommerce.com/s-t3eo8v...0.1280.png?c=2

            Tom

            Comment


            • #21
              Tom,

              That is correct. We looked at the Rev Expansion Hub guide and used the recommended cable combination for connecting the MR gyro to the expansion hub.

              Comment


              • #22
                Originally posted by CoachZM View Post
                Was there ever a solution to this? We are running some tests with 4 motors and a MR Integrated Gyro. The gyro never initializes and on the phone it shows "Warning Problem with "gyro""

                We have all of the correct adapters and connectors attached. We have double checked that they are properly attached as well.
                There is a Firmware update for the REV Expansion Hub that addresses some issues with Modern Robotics sensors.
                It may improve your situation.

                Check out this page from REV. Scroll down to see the 1.7 Upgrade process (No charge for upgrades)

                https://www.revrobotics.com/rev-31-1153/

                Comment


                • #23
                  Philbot, Thanks for the suggestion. We ran the firmware update on Friday and were still experiencing the same issues.

                  Comment


                  • #24
                    Hello, our robot is having similar problems.

                    We are using:
                    NeveRest 20:1 x2 w/ encoders
                    NeveRest 40:1 x1 w/ encoder
                    NeveRest 40:1 x1
                    Servos x5
                    CR Servo x1
                    REV Color/Range Sensor x1 on I2C port 0
                    MR Gyro x1 on I2C port 2
                    MR Range Sensor x1 on I2C port 3

                    REV hub is version 1.7.2
                    phones are 3.6

                    The Range sensor worked for a short while, but after I finally had an autonomous program work successfully with it twice, it has failed and stopped working since.
                    The code seems to be able to find it okay, but the "Warning: problem with "range"" error comes up and we get constant zeros from it.
                    Occasionally the warning stops for half a second and returns good values, but then it will revert again.
                    I have triple checked the wiring and configuration files.
                    Please help!

                    Comment


                    • #25
                      Originally posted by HeroofWind View Post
                      Occasionally the warning stops for half a second and returns good values, but then it will revert again.
                      I have triple checked the wiring and configuration files.
                      This does sound quite like a hardware/wiring issue. If it works sometimes, it does not sound like "incorrect" wiring or configurations, but rather something losing connection.


                      Maybe a wire is broken inside the insulation where you can't see it. Or maybe a problem with one of the end connectors. Or perhaps the connection to the board inside the sensor.

                      Have you tried a different port on the REV? Have you tried 2nd range sensor?

                      I would try replacing every wire right back to the REV hub, including the shifter & sensor intself. If that works, try adding the original pieces back in 1 at a time to track down the culprit.

                      Comment


                      • #26
                        Originally posted by FLARE View Post

                        This does sound quite like a hardware/wiring issue. If it works sometimes, it does not sound like "incorrect" wiring or configurations, but rather something losing connection.


                        Maybe a wire is broken inside the insulation where you can't see it. Or maybe a problem with one of the end connectors. Or perhaps the connection to the board inside the sensor.

                        Have you tried a different port on the REV? Have you tried 2nd range sensor?

                        I would try replacing every wire right back to the REV hub, including the shifter & sensor intself. If that works, try adding the original pieces back in 1 at a time to track down the culprit.
                        The range sensor we got to work is the second one we have used already, and it always has it's red light on.
                        I have not tried a different port, will do that.
                        We can try a different level shifter, and can eliminate the wire converter all together.
                        Thanks for suggestions.

                        Comment


                        • #27
                          Update:

                          The cable exchange wire was found as the culprit.
                          Range Sensor working perfectly!
                          Thanks for the help FLARE!

                          Comment


                          • #28
                            Originally posted by HeroofWind View Post
                            Update:

                            The cable exchange wire was found as the culprit.
                            Range Sensor working perfectly!
                            Thanks for the help FLARE!
                            Yaaaaayyyy!

                            Comment

                            Working...
                            X