CoderDojoTC / mentor-resources

Information for new and experienced CoderDojoTC mentors
1 stars 0 forks source link

Troubleshoot Finch robot connectivity issues #4

Open haasken opened 9 years ago

haasken commented 9 years ago

When programming a Finch robot with Scratch, it is required that you run BirdBrain Robot Server. BirdBrain seems to lose the connection to the robot very frequently. When connectivity to the Finch is lost, the Scratch program can no longer communicate with the Finch robot. Typically, when the connection is lost, BirdBrain will indicate that the Finch is "Not connected", but I have also seen it say "Connected" when Scratch programs could not communicate with the Finch robot.

The issue can usually be fixed by one or either of the following workarounds, depending on the computer:

This can be disruptive and confusing to the kids when their robot stops responding. We need to troubleshoot the connectivity issues and come up with a better solution than the workarounds, which need to be done repeatedly.

The BirdBrain Robot Server code is publicly available on GitHub here: https://github.com/BirdBrainTechnologies/BirdBrainRobotServer

RebeccaSchatz commented 9 years ago

Sending this summary from Ryan Haasken who is the lead mentor at CoderDojoTC Finch robot group to Laurie Toll and Marie Gottschalk.

Ryan summarizes an issue that has been very problematic with the Finches -- Laurie and Marie, I'm wondering if you have any suggestions.

Thanks, Rebecca

Rebecca Schatz Rebecca@CodeSavvy.org rebecca@codesavvy.org @CodeSavvyOrg https://twitter.com/CodeSavvyOrg www.CodeSavvy.org http://www.codesavvy.org

On Thu, Apr 30, 2015 at 10:16 PM, haasken notifications@github.com wrote:

When programming a Finch robot with Scratch, it is required that you run BirdBrain Robot Server. BirdBrain seems to lose the connection to the robot very frequently. When connectivity to the Finch is lost, the Scratch program can no longer communicate with the Finch robot. Typically, when the connection is lost, BirdBrain will indicate that the Finch is "Not connected", but I have also seen it say "Connected" when Scratch programs could not communicate with the Finch robot.

The issue can usually be fixed by one or either of the following workarounds, depending on the computer:

  • Unplug the USB cable from the computer and plug it back in without restarting the BirdBrain Robot Server application.
  • Quit BirdBrain Robot Server and then restart it. You may or may not need to also unplug the USB cable from the computer when doing this.

This can be disruptive and confusing to the kids when their robot stops responding. We need to troubleshoot the connectivity issues and come up with a better solution than the workarounds, which need to be done repeatedly.

The BirdBrain Robot Server code is publicly available on GitHub here: https://github.com/BirdBrainTechnologies/BirdBrainRobotServer

— Reply to this email directly or view it on GitHub https://github.com/CoderDojoTC/mentor-resources/issues/4.

RebeccaSchatz commented 9 years ago

Hi Rebecca,

Unfortunately we had the exact same issue Ryan describes with the Finch and have attempted to resolve in the same way. We are re-considering the value of the robot for that very reason. Large amount of design/development time lost in the classroom. I'm so glad Ryan took the time to provide the feedback, it confirms for me a problem that Finch designers will want know about.

Thanks, Laurie

Sent from my iPad

On Apr 30, 2015, at 10:31 PM, Rebecca Schatz rebecca@codesavvy.org wrote:

Sending this summary from Ryan Haasken who is the lead mentor at CoderDojoTC Finch robot group to Laurie Toll and Marie Gottschalk.

Ryan summarizes an issue that has been very problematic with the Finches -- Laurie and Marie, I'm wondering if you have any suggestions.

Thanks, Rebecca

Rebecca Schatz Rebecca@CodeSavvy.org @CodeSavvyOrg www.CodeSavvy.org

On Thu, Apr 30, 2015 at 10:16 PM, haasken notifications@github.com wrote: When programming a Finch robot with Scratch, it is required that you run BirdBrain Robot Server. BirdBrain seems to lose the connection to the robot very frequently. When connectivity to the Finch is lost, the Scratch program can no longer communicate with the Finch robot. Typically, when the connection is lost, BirdBrain will indicate that the Finch is "Not connected", but I have also seen it say "Connected" when Scratch programs could not communicate with the Finch robot.

The issue can usually be fixed by one or either of the following workarounds, depending on the computer:

Unplug the USB cable from the computer and plug it back in without restarting the BirdBrain Robot Server application. Quit BirdBrain Robot Server and then restart it. You may or may not need to also unplug the USB cable from the computer when doing this. This can be disruptive and confusing to the kids when their robot stops responding. We need to troubleshoot the connectivity issues and come up with a better solution than the workarounds, which need to be done repeatedly.

The BirdBrain Robot Server code is publicly available on GitHub here: https://github.com/BirdBrainTechnologies/BirdBrainRobotServer

— Reply to this email directly or view it on GitHub.

haasken commented 9 years ago

Tom Lauwers of BirdBrain Technologies responded to the email thread started by Rebecca above. Here is his response, dated May 1st, 2015:

What operating system are you running them on? If it is Mac, check out the instructions for disabling App Nap: http://www.finchrobot.com/software/scratch (see Mac Instalation steps)

If it isn't, and the issue is that the USB cable is mechanically coming loose, I have advised the following solution to people and it seems to help (also see attached image):

Take a large zip tie, and where the cable comes out the Finch, tie it to the midsection of the Finch, leaving a bit of slack for the cable to make an S-shape. You can use the holes in the Finch for the zip tie. I've attached a picture, USB cable is black, zip tie is grey.

finchziptiestrainrelief 1

My response dated May 10th, 2015 is below:

Thanks for the response. I have seen the issue on both Mac OSX (various versions) and Windows 7. I do disable App Nap for BirdBrain on the Mac whenever that option is available, so I don't think that's the issue.

At the CoderDojo event yesterday, I tried the solution with the zip tie. It was just me and a single student, so there were only two robots being used. The first robot the student was using had some severe connectivity issues, so I switched that robot (and USB cable) out for a different one. I still saw occasional connectivity issues, but I only had to restart BirdBrain Robot Server once or twice over the course of the two hour event. I did notice that the Finch would disconnect briefly and reconnect if the USB cable was wiggled a certain way. This suggests that the forces on the USB cable are causing the biggest problems.

In the future, I'll probably zip tie all of the cables to the robots. Perhaps I'll also need to try new USB cables.

haasken commented 9 years ago

Then Tom asked if we could send him one of the robots with the severe connectivity issues (on May 11th) so that he could debug the issue:

Do you mind exchanging the one with the severe connectivity issues? I'd like to have one here that I know is "bad" because this issue seems to be popping up more lately and I'd like to see if I can work around it.

If that's okay, I can send you a new Finch and label to return the old one.

haasken commented 9 years ago

Marie is in charge of the Finch robots, and she will be responsible for sending one of the robots with severe connectivity issues to Tom. Tom is currently waiting for Marie to let him know when she finds a robot with connectivity issues, so that he can send a replacement robot and a mailing label for the return.

haasken commented 9 years ago

Another mentor had a great idea of labeling each Finch robot with a name or a number so that we could keep track of which ones have problems. We could keep that information in a spreadsheet.

Would it be okay to stick labels on the robots? The mentor who suggested this also thought the kids would enjoy it if the Finches had names.

haasken commented 9 years ago

After I created this issue, I realized it would be more appropriate to have created it in the robots repo rather than the mentor-resources repo. In the future robots issues will be filed in the robots issues page.