Announcement

Collapse
No announcement yet.

DS app and RC app have mismatched version numbers, won't run together?

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

  • #16
    Originally posted by Little-Acorn View Post
    Question: If/when I narrow down to having only one copy of ftc_app-master, do I have to completely re-install Oracle Java and Android Studio, to be sure I'm using that "latest" copy of ftc_app-master properly? I might do that (just like I did last night) to be really sure. Then I'll be starting clean.
    No, that's not necessary.

    Comment


    • #17
      Originally posted by Little-Acorn View Post
      I'm coming to realize that "SDK" actually means the ftc_app-master collection that I have found from various sources. Apparently experienced FTC folks speak in a code not known to us old guys, and I need to learn it.
      Yes, SDK stands for Software Development Kit. It is basically a bunch of custom classes for use by FTC teams.

      Originally posted by Little-Acorn View Post
      1.) The RobotController app on the RC phone, has the characteristics I mentioned above. When I compile an Opmode with Android Studio and load it into the phone, it *changes* those characteristics, uses older libraries etc. Should it be changing them? If not, could that be caused by my using a too-old version of ftc_app-master?
      Yes - when you load your Opmodes to the RC, it completely re-writes the .apk. Which is why I asked above if you are using the current "Master" Branch. If you are not, then doing that should fix your problem.

      Originally posted by Little-Acorn View Post
      2.) The DriverStation app on the DS phone, has the following characteristics:
      App Version 3.1
      Library Version 17.04.13
      Robot WiFi Protocol Version v110
      These never change, maybe because I never download anything to the DS phone while playing with Opmodes. In fact, these DriverStation characteristics are identical to the characteristics of the RobotController app before I do the compile and download to the RC phone.
      Correct again. The DS only gets updated if you download from Google Play or if you manually overwrite its .apk.

      Originally posted by Little-Acorn View Post
      3.) It occurs to me that I could replace the DriverStation app in the DS phone, with one that has the "older" characteristics of the RobotController app. Then after a compile and download, it might quit complaining about mismatched apps and the problem would go away. But I might be simply patching a "wrong" RobotController app by bringing in a "wrong" DriverStation app to match it. Might not be a good solution long-term. FLARE, it would seem to violate what you recommended.
      It should also work to load the older DriverStation, but that is probably not what I would do.
      Unless you have a very good reason not to, I would use current SDK.


      Originally posted by Little-Acorn View Post
      4.) Alternatively, I could make sure I've got the LATEST ftc_app-master, re-do everything with that, and then see if a compile-and-download to the RC phone does NOT change the characteristics, but leaves them at App Version 3.1, Lib Version 17.04.13, WiFi Prot Version v110. Then RC and DS would match with the NEWEST version numbers for both, and I'd live happily every after. (At least until someone comes out with an even newer version of something, groan)
      Exactly! (and there will be updates...)

      Originally posted by Little-Acorn View Post
      Sounds like Plan 4 above is like the best thing to do, I'd guess. How does it sound to you all?

      I probably have half a dozen copies of ftc_app-master floating around on my desktop PC from my many attempts over the last several months to make things work. I'm going to track down and delete every one of them. Then load the one that is truly the latest and greatest from GitHub and use that one.

      Question: If/when I narrow down to having only one copy of ftc_app-master, do I have to completely re-install Oracle Java and Android Studio, to be sure I'm using that "latest" copy of ftc_app-master properly? I might do that (just like I did last night) to be really sure. Then I'll be starting clean.
      Unless you have a super-old version of Android Studio, it should be fine.

      Comment


      • #18
        Houston, The Eagle Has Landed.

        Did all the uninstalling of Oracle Java and Android Studio. Eradicated every last copy and link and fragment of ftc_app-master, DriverStation, and RobotController from my desktop PC. Then loaded ONE copy of ftc_app-master.zip from GitHub, to a folder I knew. Then re-installed the latest Oracle Java and Android Studio from their respective manufacturers' websites, and pulled in the latest (now the only) copy of ftc_app-master.

        Loaded the basic Linear Opmode example program (are these now called "classes" or OpModes"?), got it going, compiled and downloaded it to my RC phone. Even Gradle was happy. I kept the DriverStation app in the DS phone.

        And the d@mned thing worked, first time. No whining about mismatched versions (I checked, even after the compile and download they are both v110, version 3.1). It simply displayed runtime on the DS phone, telemetered from the RC phone, as it should. EVERYTHING worked.

        From many of your recent comments, I didn't have to use the sledgehammer method (uninstall and reinstall everything in the world) I did. But finesse is for people who know the system and know what they're doing, and I ain't it, yet. And the sledgehammer method WORKED.

        Apparently the mismatch problem was caused by having an older version of ftc_app-master in Android Studio while using the newer (latest) version of DriverStation. Now that I've got the latest version of ftc_app-master, the OpModes it compiles match the DriverStation app, and all is well with the world.

        Finally I have a good base to start from.

        Thank you all so much for your help! I've learned a lot from this little adventure. It took six 12-hour days hacking on this system, much of which was probably unnecessary, but I didn't know which part(s), so I did it all. And the result was SUCCESS. Plus a know more about how the system works now. Still got a long way to go, but it's progress.

        Comment


        • #19
          Well I think you killed the fly with an elephant gun, but glad you got it to work.

          Comment


          • #20
            Originally posted by Little-Acorn View Post
            Then re-installed the latest Oracle Java
            FYI You don't even need to install Java anymore, as the newest versions Android Studio come bundled with a minimal JDK7.

            Originally posted by Little-Acorn View Post
            Loaded the basic Linear Opmode example program (are these now called "classes" or OpModes"?)
            Technically, they are classes, but FTC calls them OpModes, probably just because that's what they've always been called.

            Originally posted by Little-Acorn View Post
            Apparently the mismatch problem was caused by having an older version of ftc_app-master in Android Studio while using the newer (latest) version of DriverStation
            Yes, definitely, beyond a shadow of a doubt. Tip: disable automatic app updates in the Play Store, or else this problem may crop up again. If you ever do have this problem again, make sure to install the DS from the APK found in your local SDK's /doc/apk/ folder.

            P.S. I've been thinking about making the ultimate FTC setup guide video (updated for 2017-18).... is that something you'd find helpful?

            Comment


            • #21
              Originally posted by 4634 Programmer View Post
              P.S. I've been thinking about making the ultimate FTC setup guide video (updated for 2017-18).... is that something you'd find helpful?
              I think that would be a great help for new teams or those switching from App Inventor/Blocks! When FTC switched to Android I really appreciated Philbot's videos. They were MUCH more helpful than the FIRST documents.

              Comment


              • #22
                Originally posted by 4634 Programmer View Post
                P.S. I've been thinking about making the ultimate FTC setup guide video (updated for 2017-18).... is that something you'd find helpful?
                Yes, EXTREMELY helpful.

                Even more so if written for FTC beginners like me. This would be a great boon for people joining FTC.

                Comment


                • #23
                  BTW, how does one update the ftc_app-master that Android Studio is using, without uninstalling and re-installing everything?

                  Comment


                  • #24
                    I typed "update sdk" in the search bar and this is the top thread found -
                    https://ftcforum.usfirst.org/forum/f...th-the-ftc-sdk

                    There are many techniques teams use you can find in the above link. I use the download the new sdk, unzip, place in the folder you want, copy the files your team created in the teamcode folder in the old version of the sdk to teamcode in the new version.
                    In Android Studio, close the current project, select "import an Eclipse...proj" as normal, navigate to the new sdk and open it.

                    This method appeals to me because 1)novice github user, 2.) If something doesn't work that I can't figure out, I just go back and open the version that worked.

                    Comment

                    Working...
                    X