Thanks! I’ll have to give that a shot. It isn’t only that thread, but several links in several different threads. Still trying to get the code up so that people can look it over. Hopefully we will get it posted later today or tonight.
First speed controllers flashing red in general just means going in “reserve not a full speed.” If they start flashing a combo of two colors in sequence then you have a problem.
Second it sounds like a code problem. Specific something in the code after a bit of running is causing the periodic loop to take noticeable longer then 20ms. Without looking at your code the first place I would check is your PID functions and any logging your team is doing.
I am not sure about the loop overrun errors but we operate in an environment where this is over half a dozen wifi networks operating at the same time and find that the large packet loss can sometimes cause the symptoms of jerkiness. I have no idea if that is your problem, but it’s pretty easy to see real-time pack loss through the driver station and it is slightly harder but still reasonable to check it through the Rio log. If this truly affects only the drive train then it is probably some sort of code issue and no packet loss, but I would take a look at both.
FIrst off all…I can read JAVA, but couldn’t program my way out of a paperbag using it. Here is a link to a folder our team’s programmer says has the program in it…There are a lot of folders…Not sure what they mean.
Also…if someone wants to educate me on how to get to a place where I can look at this stuff…
Src —> main —> Java —> frc —> robot —> robot.java
Then u can open in a text editor
Love this thread. I recommend using GitHub for code storage rather than Google Drive. It will make your code easier to read, edit on the fly, push/pull with git, easier to share, and generally a more accepted practice. I understand that it is the middle (or end?) of build season, but I recommend taking a look in the off season.
You can follow these instructions as TheFlash said to get to view your robot code. You can learn more about coding, git, and more on the FRC Docs (https://docs.wpilib.org/en/latest/index.html). Some of the community contributors who wrote the docs are on ChiefDelphi, so I am sure some would be able to assist you if you have any further questions regarding the docs or technical issues you may be having. My apologies for not actually answering your question as my knowledge of robot code in few and far between.
I haven’t had time to look through your code in great detail, but you seem to be using
DifferentialDrive which I believe has motor safety checks. This is what you were referring to when you mentioned that the motors are not getting updates frequently enough.
I would be very surprised if your jittering came from wifi interference or CAN bus errors before you resolved the loop overrun issue. A loop overrun is pretty much just saying that the
TimedRobot class expects to run the periodic methods with a period of 50Hz. If your periodic methods take too long to run, then you have a loop overrun, because there is now more time between the start of one method call and the start of the next than is expected.
You may want to, as a testing method, comment out some of your SmartDashboard calls in the periodic methods, to see if that resolves your issue.
So…Thank you all for the tips.
Here is what we did, another issue that we found, and hopefully the problem is resolved…
The scary part is…How intermittent the problem is. Sometimes things are fine…Sometimes they are jitter…The reason why this is so troubling is that it puts us in the position of maybe having solved it, only to find out we didn’t at a crucial time. IE…in competition.
I am hoping that isn’t the case.
So…We commented out or moved the smart dashboard updates. Some of them we moved to places where they will only activate when we need them to. For example, the color sensor was updating the smart dashboard constantly throughout the code. We moved that so that it only updates the smart dashboard when the robot is trying to turn the wheel.
The motor speeds for intake and the like that are controlled by a slider only update the smart dashboard when the drivers are actively changing those values.
These changes got rid of the jittering.
Isaac was only able to make it come back by repeatedly pinging the robot with his phone while driving…
We also found that the wire from the color sensor had been partially severed. We set out to splice it and are ordering a new one only to find that we are out of solder.
So…things will have to wait.
Most of the team is leaving for Costa Rica late Saturday night. I still need to pack.
Everything is going to be alright.
Oh…and here is our reveal video.
The team didn’t meet today. We had parent teacher conferences yesterday and today and in order for the team to meet a parent would have to hang out with them in the classroom. Isaac did go in and work on programming for a while yesterday, mostly trying out the various suggestions people had for our jittering robot issues, but today the robot sat dormant. So…I worked on the drive team and pit crew tests in between visits with parents.
Something that struck me was how many kids who walked by my table had attended our lego camps at some point over the last gosh knows how many years.
The tests…I decided that this year there should be a separate test for pit crew and drive team, though people who generally do well on one will do well on the other.
For the first time I am including essay questions…Meh…it all usually works itself out in the end.
A part of me wonders if we shouldn’t also have a scouting test.
I think this is part of why our team doesn’t see the value in good scouting. I can agree in part because a team has to be relatively good in order to need scouting, but, by having good scouting a team can become good? I mean that in two ways…
For years I have been asking my team to start a folder of mechanisms. I have desperately wanted my kids to walk around the pits and take close up pictures of as many cool mechanisms as they can so that we can borrow from them in the future. How many different ways are there to intake balls? Wouldn’t it be great if we had a folder filled with ball intake pictures from previous years to look over as we are designing a ball intake for this year!?
I also think that the drive team’s strategy for a match should be based on the capabilities of their alliance partners coupled with the capabilities for the opposing alliance.
But, the reality of it all is, that we as a team are still at the point of just trying to do the strategy that we already have and make it work during a match.
Oh…and also while I waited for parents to come by my table I sanded 3 beer steins. I put two in the mail to a customer who payed for 4 and is donating the other two to the auction, and the third one that is for our host in Costa Rica.
Ok…sorry for so many short ones in a row. I will desperately try to post from Costa Rica, and I am asking Gary to keep posting about the robot while we are gone.
One of my kiddos still in the game! So cool to see Mason!
In just a few hours we leave…The trip is going to take somewhere on the order of 20 hours…We have a layover in Houston…
Today I cut more bumper backer boards while the few kids who came in did a few different things. First Isaac, Will, and Grace worked on cleaning up the robot a bit. Then Makenzie came in and they made a bracket to keep the hook lifter from breaking during heavy defence.
I asked them to CADD it but…
We replaced the wire leading from the color sensor above the control panel manipulating wheel back to the roborio, and coated it in braided wire loom so that it won’t get abraded again.
A few more kids came in to take the drive team and pit crew tests…
I’m not sure about how relevant the test is to the actual jobs…I hope it isn’t too bad. After the trip I will post them so that everyone can help me decide how to make better tests in the future.
Though I am amazed with how badly some of the kids did. I understand that some parts of the test were hard, but…Ugh…have we no learned anything?
Maybe the tests will be a wakeup call to the students who did really poorly that they need to start reading chief delphi and looking over the rules.
We finished off the day by repeatedly climbing and winding the winch rope, and then breaking the color sensor by slamming it down on the control panel. (If you disable our robot while the control panel is up, the piston brings it down in a hurry.
Ok…I leave in half a sleep and my not be able to post every day. I will be writing, and may post my engineering notebook entries, but I may bot be able to reach out to you guys for a week.
Made it as far as Houston. Leave for Costa Rica in a few hours. 10 EV3s, and 2 field sets are already in country and headed up the mountain, and I have 4 laptops in my bag.
I wish I could have brought them all…I only got to take 10 kids on this trip.
The rest of the team didn’t meet today, and I am not sure if they are meeting tomorrow. I think Gary had to help his sister in law move or something.
We met at the high school at 330 this morning. We got a shuttle to the airport…had a layover in Houston, and just got to the hotel at 1130 or so pm local time which is 2 hours ahead of Seattle time. All in all not bad except for the fact that I didn’t sleep the whole way.
Tomorrow is a beach day…
I still can’t believe we are here.
Meanwhile …those of us here, remaining at home, with 2980 are working diligently to make sure the robots performs as designed. Isaac and Peter have been working on programming modifications, power ball retrieval, making sure the control manipulated works correctly, and climbing on the switch. We will make just enough noise and just enough mess that the custodians and administration will know we have been working.
Ok…not really today…though maybe a little bit.
Those of us in Costa Rica started off the day going to a “cloud forest” which means exactly what it sounds like. It is a forest that due to elevation is perpetually in a cloud.
We got to see a sloth, and some rare birds…
OK…so that is really just the sloths butt…
I would post pictures but the internet in this house is really spotty. I’m thinking massive post when we get back stateside, though I am loving it here so much that I may not come back.
We had our first meeting with the mentors for the FLL team we are starting. THEY ARE AWESOME!!! and passionate, and they may start teaching robotics as a class at the school if they can get it to take off.
Really that was the first part of the whole reason we are here. It was really wonderful to work with them. We built the lego robots ahead of time because we only had 2 hours with them…5 minute robots to the rescue.
The teachers felt a bit like they had been thrown in to the deep end, but I convinced them that they don’t actually need to know anything. The reality is, that that is sort of true. For me at least I love helping the students to make the discoveries…
There is also so much that is built into the curriculum in the PC version of the lego software already that I think they will either be OK on their own, or they can go through the curriculum on their own and be OK.
So…The kids are sorting legos for a lego camp
OH! the house we are staying in is super amazingly crazy. It was made by an artist and it shows. We will be posting 360 spherical videos when we get back and one will be a walk through of this house.
This is the 6*6 foot field that we have back at home for our lego camps, and they made us something similar for using here. Basically what we do…
We start out first 2 hours we do quick robots and line following. Then we introduce the campers to an FRC/FTC style game. The kids then spend the next 12 or so hours over 2 days making and programming robots that can play the game, then we have an FTC style round robin competition with alliance selections and final matches at the end.
Our timing will be a bit messed up because we are only getting the campers for 2 days and they don’t speak English very well and none of our kids can really speak Spanish. Hopefully we can all speak robot…
If you look at the picture of the field from my classroom back at home, you can see that it is a lot like a 1/2 scale version of skystone…So that is what we are trying to do here, except…We only have 11 cubes, and 11 balls. We are thinking of having them stack the cubes on their own platform and put the balls on the opponents platform. The balls can be de-scored, the cubes cannot.
Balls would be worth 5 points. but no points for getting them under the bridge.
Now question is, do they have to trade a cube for a ball?
The kids who didn’t get to come met the past couple of days. Tonight they did a demonstration for the visiting 8th graders with our FRC robot. They set up the field elements, and I’m not sure if they left them setup in the hallway or if they set them up in the gym. In anycase they got to show them the robot climbing and spinning the control panel, and it looks like peter and Isaac are getting pretty good at intaking without jamming the intake.
They sent me a pretty cool video of them taking out the low goal we built out of plywood.
We also got a sloth for our pit and a really little sloth that we are hoping to put on the robot.
Evan’s nose is itchy.
The internet is really getting iffy so I’ll post this now. Hopefully I’ll be able to post more later.
SO…We are using 2 360 spherical cameras to film a bunch of videos…but one of them was set to the wrong format. So…we can’t stitch the 2 videos. together. Now that I have things figured out I’ll shoot a video tour of the house we are staying in. Starting there?
Wow…what a day.
The adults started out the day going to the coffee shop down the street. At this coffee shop they put out fruits to attract local birds.
I’m trying to upload a video showing these weird local turkey type birds. Every time they put out bananas the turkey type birds (related to turkeys) would come out and throw all the bananas onto the ground. Very messy eaters. Curassow (Not sure if that is right though.)
We came home from the coffee shop just in time for the most amazing breakfast, made by our hosts. Rice and beans, eggs, fried plantains, the tastiest sauce ever…
After that we walked down to a butterfly garden. The butterflies were separated out by elevation.
We ended up having a bar-b-que at our hosts home, where we got into their shop and made the three bridges and two foundations for the camp. We will mark them with colored tape tomorrow while we set up the field for the campers.
We made it home and had a meeting reviewing the plan for tomorrow, and the rules modifications for the rules of the game
Ok…big day tomorrow and I am exhausted…
OMG! Today was amazing. We had the first day of our Lego camp. The kids were awesome!
A little girl came up to me and asked…“why do we have to be in 3rd grade or older before we can participate in the camp”.
I wish we could have taken them all. The camp had about 30 campers.
They were all so amazing!
I want to post more, but I am helping Evan with history homework and I am posting from my phone.
Such a magical day, and we get to do more tomorrow.
I want to type more right now. I want to post pictures. Today was the most amazing day! Our lego camp was so awesome! The kids, my kids were so into it, and the other kids, my new kids from Costa Rica were so into it. The whole thing was amazing.
Someone asked me what my favorite part of this trip was…How could I answer that. My favorite part was definitely today and the camp, but really this whole trip was one amazing lesson for everyone involved.
I promise to post more Monday. Tomorrow I will be traveling until after midnight and have to be at work at 7:30 AM…
It is well after midnight…I have to get up for work tomorrow…I tried to journal on the plane ride home. the reality is…I need time to process this. I think we all do.
What an amazing experience.
My house is freezing right now …I am starving…and my dogs are smelly and hyper.
I am so proud of all of my kids.
I am trying to bolt down food while I type this
We were walking down the hill after the camp was over and my wife asked if I was OK about 10 times. I think I was just stunned.
This was so much more than building a robot or playing a game…
This was incredible.