Robots, especially ours it seems :D, seem to disconnect at the worst possible times and are very annoying to handle.
This method is what seems to work best for us and it is a very comprehensive strategy.
Turn off robot.
Disconnect robot phone from usb
disconnect cables from expansion hubs/webcam
replug everything except phones
fully exit (swipe out app from dock) Robot Controller App and Driver Station App
Turn on robot.
Plug in robot phone with app not open
wait for phone to automatically open app
click restart robot with the three dots in the upper right corner
wait and then click configure robot
select your config
click scan and make sure it detects your hub(s)
return to main screen
open driver station app and listen for the ring that says you are connected
it should be good to go now!
phone usbs are in, but at an angle or slightly loose
phones need to be secure tightly to minimize shaking during rounds which dislodge USB
add stress relief case for your phone and expansion hub (search it on Thingiverse)
Usually Android Studio or Onbot Java will tell you if your code has an error before it downloads. However, this only catches Syntax Errors (haha a fellow robot team) not logic errors so code could have inherent flaws that don't do what you intended. We ourselves have only encountered one software issue causing disconnects, and it was because there was a missing opModeIsActive() boolean and also the computer vision code was running the entire autonomous which eats up a lot of computing power, so we solved that by disabling the camera earlier.
TIP: it often helps to have a non-coder check your code because they will question everything and be able to see past the bias of a programmer who may skip over certain details. (how we figured out the computer vision issue above)
For a more in depth guide on troubleshooting controls, refer to this trouble shooting guide: www.firstinspires.org/sites/default/files/uploads/resource_library/ftc/control-system-troubleshooting-guide.pdf
Hope this helps!
Also, you can always contact us through the contact page!
The future of this world is undeterminable, but one thing is known for sure: technology is going to play a key role in our daily lives. I chose to do robotics to see if I wanted to pursue a career in engineering. Furthermore, I wanted to learn how to code; I am sure that knowing how to code will help me in the future.
But now I think that robotics isn’t only beneficial in academics, it is fun and engaging. Our team consists of many people (including myself) that had no idea how to code or build robots, but week after week I am surprised by how much we are learning as a team.
Robotics also gives me a chance to practice my teamwork and cooperation: there are many times during our meetings when I am frustrated or confused, but I have learnt to listen to everyone’s reasons and ideas, as well as asking questions when I need help. The whole FIRST community is very welcoming and it is amazing how all teams help each other out. This stimulates a professional work environment (especially the pressure experienced during League Meets).
Feel free to contact us if you have any questions/comments about robotics - we’re more than happy to help!
We received our first finalist trophy at The Grauer School tournament! The whole team was very surprised - our robot was not exactly in the best shape during the qualifications. We tried taking our intake mechanism off, but that made our robot malfunction because the code didn’t correspond with what was attached to the robot. We were all very frustrated because our robot didn’t move for one whole round!
After many struggles - our dedicated members worked through lunch break to get our robot working - we decided to reattach the intake mechanism and borrow a weight from another team (Shockwave 3848)to apply more pressure on the center wheels. Fortunately, after lunch break we scored all the points possible in autonomous and it worked beautifully. Unfortunately, we got stuck on the crater wall couldn’t move for the rest of the round. At least we got partial parking points in endgame!
Although we didn’t have the best robot performance, we think that this was an opportunity to learn to be flexible and to overcome our emotions and compromise to get the robots working. We truly believe that this meet has strengthened our cooperation as a team, as many changes were made last minute and everyone had to be on the same page. We got chosen by the 4th alliance (Fast and Curious), and we beat the 1st Alliance in a huge underdog win, and only lost by 17 points in the final match! We were very happy that our autonomous worked perfectly both finals rounds and it was awesome to finally win a semifinal round. All in all, this has been a great experience and an opportunity to practice gracious professionalism. We still have a lot to work on!