Go to Post FIRST is an organization that teaches students that smart is cool. - Warren Boudreau [more]
Home
Go Back   Chief Delphi > Technical > Programming
CD-Media   CD-Spy  
portal register members calendar search Today's Posts Mark Forums Read FAQ rules

 
Closed Thread
Thread Tools Rate Thread Display Modes
  #16   Spotlight this post!  
Unread 23-03-2010, 17:54
Robototes2412's Avatar
Robototes2412 Robototes2412 is offline
1 * 4 != 14
FRC #2412 (Robototes)
Team Role: Programmer
 
Join Date: Jan 2010
Rookie Year: 2007
Location: Bellevue
Posts: 312
Robototes2412 is on a distinguished road
Re: Driver station coding and other

Yes! Pygtk FTW!

I have made some mockups in the past of a tabbed toolbar IDE, would you like me to post them here?
  #17   Spotlight this post!  
Unread 23-03-2010, 18:18
Thomas Clark Thomas Clark is offline
Hacker
FRC #0237
 
Join Date: Mar 2010
Rookie Year: 2010
Location: Watertown, CT
Posts: 10
Thomas Clark is infamous around these parts
Re: Driver station coding and other

Quote:
Originally Posted by Robototes2412 View Post
Yes! Pygtk FTW!

I have made some mockups in the past of a tabbed toolbar IDE, would you like me to post them here?
Sure.

Although not my preferred language/toolkit combo, PyGTK would be portable to both Linux, Mac, and almost anything else with Python and GTK.

And now GCC is slowly downloading, configuring, compiling, etc...

Last edited by Thomas Clark : 23-03-2010 at 18:20.
  #18   Spotlight this post!  
Unread 23-03-2010, 19:32
ErichKeane ErichKeane is offline
Registered User
FRC #3210
Team Role: Mentor
 
Join Date: Nov 2003
Rookie Year: 2004
Location: Hillsboro, OR
Posts: 113
ErichKeane is just really niceErichKeane is just really niceErichKeane is just really niceErichKeane is just really niceErichKeane is just really nice
Send a message via AIM to ErichKeane
Re: Driver station coding and other

Quote:
Originally Posted by BEEKMAN View Post
Agreed, all this code is written by WPI Grad Students, who have lives of their own, its OKAY to mod their code! You can even send it to them and maybe they'll reconsider their methods
They are Grad students, they DON'T have lives of their own.

Quote:
Originally Posted by Vikesrock View Post
This thread is very likely to go the same route as your posts in the other thread did.

Having said that I will repeat my claim that the robot is protected by WPA encryption when on the field. WPA encryption has not been fully cracked to my knowledge, although there are vulnerabilities with the handshaking which allow for offline dictionary attacks. I don't recall the exact length or nature of the keys in use but I believe they are randomly generated keys that at the very least contain lower case, upper case and digits. A key generated in this fashion, even of the minimum 8 characters, should take far too long to brute force unless you are extremely lucky.

If I am wrong and you have a way to crack a WPA key in a timeframe that would be useful for attacking the FRC network please let me know what it is via PM and I will gladly test it and agree with you after confirming it works.

An FTP password would either be obnoxious for teams (randomly generated) or more vulnerable to a dictionary attack than the WPA key (team chosen)
The issue I mentioned before is that you don't NEED to break the WPA key (which I can do fairly consistently in less than ~30 mins).

All you have to do for this system is make the wireless 'reconnect', which will make it reconnect, thus getting stuck in 'disabled' mode for the rest of the match. Making the wireless connection reset is extremely easy, and I'll leave googling it as an exercise to the reader.

Since hacking a WPA key takes a short period of time, a person in the stands could capture the hash during practice/qual matches, then crack them at their convenience. This would allow the person to alter the assembly on the cRio at the wrong time, which I would imagine could cause immense problems.
__________________
2004: Team 219- Programmer/Designer/Builder
2009: Team 2374- Mentor
2010: Team 3210- Mentor
  #19   Spotlight this post!  
Unread 23-03-2010, 20:22
Tanner's Avatar
Tanner Tanner is offline
Registered User
FRC #1261 (Roblions)
Team Role: Programmer
 
Join Date: Jan 2007
Rookie Year: 2007
Location: Suwanee, GA
Posts: 311
Tanner is a splendid one to beholdTanner is a splendid one to beholdTanner is a splendid one to beholdTanner is a splendid one to beholdTanner is a splendid one to beholdTanner is a splendid one to behold
Re: Driver station coding and other

I'm not sure security is something to be focused on in FIRST as the spirit of gracious professionalism is always in play. When I was a freshman, FIRST still used the old radio receivers which I bet would probably be easier to mess with than the current routers.

Will the system ever be perfect? No.
Will it every be 100% secure? No. Does it need to be? I don't think so.

With the field having a reputation of having errors every few regionals, I don't think adding a better security system in the communications would help one thing a bit.

-Tanner
  #20   Spotlight this post!  
Unread 23-03-2010, 21:09
Radical Pi Radical Pi is offline
Putting the Jumper in the Bumper
AKA: Ian Thompson
FRC #0639 (Code Red Robotics)
Team Role: Programmer
 
Join Date: Jan 2010
Rookie Year: 2010
Location: New York
Posts: 655
Radical Pi has a spectacular aura aboutRadical Pi has a spectacular aura aboutRadical Pi has a spectacular aura about
Re: Driver station coding and other

Quote:
Originally Posted by ErichKeane View Post
The issue I mentioned before is that you don't NEED to break the WPA key (which I can do fairly consistently in less than ~30 mins).
Oh really?

Quote:
Originally Posted by ErichKeane View Post
All you have to do for this system is make the wireless 'reconnect', which will make it reconnect, thus getting stuck in 'disabled' mode for the rest of the match. Making the wireless connection reset is extremely easy, and I'll leave googling it as an exercise to the reader.
I believe this would be the same wireless that YOUR robot is operating on. Any attempts to interfere with it during one of your matches will not only knock out your bot, but it would be detected as a field fault and be a replayed match. Anyways, there is nothing interfering with the connection between the classmate and the FMS, so the auto-disable will be over-ridden by the field sending enable commands to the DS, re-activating the bot as soon as the connection is established again

Quote:
Originally Posted by ErichKeane View Post
Since hacking a WPA key takes a short period of time, a person in the stands could capture the hash during practice/qual matches, then crack them at their convenience. This would allow the person to alter the assembly on the cRio at the wrong time, which I would imagine could cause immense problems.
First of all, un-GP

Second, most likely the FMS would catch it. The FTP connections to the cRIO would probably make it into the logs. Also, for anything to take effect a reboot is required, which I'm sure is noticed.
__________________

"To have no errors would be life without meaning. No strugle, no joy"
"A network is only as strong as it's weakest linksys"
  #21   Spotlight this post!  
Unread 25-03-2010, 15:57
Thomas Clark Thomas Clark is offline
Hacker
FRC #0237
 
Join Date: Mar 2010
Rookie Year: 2010
Location: Watertown, CT
Posts: 10
Thomas Clark is infamous around these parts
Re: Driver station coding and other

Quote:
  • Ideas we offered to the management to use three regular AP and connect each one of the three to two access point bridge and creating three different cells with the assistance of security WEP (Wired Equivalent Privacy) & Pre-shared key mode (PSK, also known as Personal mode) were not implemented.
Well, well, well.
  #22   Spotlight this post!  
Unread 25-03-2010, 16:01
ErichKeane ErichKeane is offline
Registered User
FRC #3210
Team Role: Mentor
 
Join Date: Nov 2003
Rookie Year: 2004
Location: Hillsboro, OR
Posts: 113
ErichKeane is just really niceErichKeane is just really niceErichKeane is just really niceErichKeane is just really niceErichKeane is just really nice
Send a message via AIM to ErichKeane
Re: Driver station coding and other

Quote:
Originally Posted by Radical Pi View Post
Oh really?



I believe this would be the same wireless that YOUR robot is operating on. Any attempts to interfere with it during one of your matches will not only knock out your bot, but it would be detected as a field fault and be a replayed match. Anyways, there is nothing interfering with the connection between the classmate and the FMS, so the auto-disable will be over-ridden by the field sending enable commands to the DS, re-activating the bot as soon as the connection is established again
Assuming your goal was to give you an advantage, and not just wreck the event. OR you weren't just trying to ruin a different team's score. Also, you can often do targeted attacks this way since they are all on a different VLAN and use different keys. The re-sync with the FMS takes a while, which would put the bot out of service for up to minutes.

Quote:
First of all, un-GP

Second, most likely the FMS would catch it. The FTP connections to the cRIO would probably make it into the logs. Also, for anything to take effect a reboot is required, which I'm sure is noticed.
Very un-GP, however nefarious characters exist everywhere. You would think FTP connections to the cRIO would make the logs, however someone would have to be watching. AND your goal could be to attack for their NEXT match, so the reboot when they started next match would take effect.
__________________
2004: Team 219- Programmer/Designer/Builder
2009: Team 2374- Mentor
2010: Team 3210- Mentor
  #23   Spotlight this post!  
Unread 25-03-2010, 16:26
Jon Stratis's Avatar
Jon Stratis Jon Stratis is offline
Mentor, LRI, MN RPC
FRC #2177 (The Robettes)
Team Role: Mentor
 
Join Date: Feb 2007
Rookie Year: 2006
Location: Minnesota
Posts: 3,835
Jon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond repute
Re: Driver station coding and other

Quote:
Originally Posted by Thomas Clark View Post
Okay, I accidentally caused another thread to get hijacked and locked, so I thought I should create a new one specifically for this topic.

After my first season, I'd like to say is that, truthfully, the FIRST tools are poorly thrown together. Although I'm not as experienced here as some people, I'd like to say a few things about them and ask if anyone agrees.
If you really think that, you should have been around even a few years ago... things were much, much worse. The system in place today is easy to use and, quite simply, works. The average student can write and download code to the robot without running into any hassles, which was NOT true about the old IFI system (there were times with that system where i would be forced to bang my head for several hours just to get code to download... then do it all over again the following week!).

Quote:
The robot itself runs an unprotected FTP server. I really fear someone exploiting this, and I've already demonstrated that this is possible (no, I won't post the code). IMHO, they should either use a password, or, better yet, use encrypted SSH file transfer (SFTP).
First off, if you really fear someone exploiting this, then you haven't fully grasped one of the core concepts of FIRST - Gracious Professionalism. Trying to do something like this is, quite simply, cheating, and if it happens (and when it gets caught) you can be sure FIRST would be pretty strict.

Second, FIRST puts into place sufficient safeguards to ensure nothing accidental happens to the robots while they're on the field. Your average person in the stands, playing around on their laptop, isn't going to "accidentally" get connected to the secure field system. They aren't going to be able to "accidentally" do anything to the robots through the network. It would take a dedicated, intentional, and somewhat lengthy (at least 30 minutes if they're an expert, probably more like 2-10 hours for a good comp sci-focused student) process to be able to seriously negatively affect the robots.

Quote:
The compiler doesn't support anything besides Windows, and some of us prefer Linux. The IDE I don't care about (I never use IDEs, just makefiles), but FIRST is limiting users' experiences by limiting who can program and on what operating system. IMHO, they should provide a build of the WPI library and compiler for Linux.
Welcome to the real world. Out here, a vast majority of work is done on Windows. In fact, where i work we have to do everything on Windows except for the actual deployment, which goes to some AIX boxes. As for not using IDEs and only makefiles... you really don't know what you're missing out on. makefiles are handy, I use them all the time... but you really do need an IDE once your project gets past a certain size. Imagine trying to work on a project with several thousand files and millions of lines of code... you aren't going to do that with VI. Get used to IDEs now, learn how to use them effectively. They provide shortcuts that will make you a better programmer.

Quote:
Another this is the library. Although it's obvious that tremendous effort was put into it, I can tell that it was rushed to be finished before the build season started. All I can say is that I hope it's better next year.

Agree? Disagree? Another other notes?
Again, you should have seen what we had before. The library we have today works. It's not perfect, it may be missing a few things, but it's a heck of a lot better than what we had with IFI. Most importantly, it can be picked up by anyone. Someone with no code experience can pick it up, read a little documentation, and have a driving robot very quickly. You couldn't do that before.


All that said, if you don't like the current state of things, you have two options. You can sit here and complain about it, hoping that someone fixes it for you, or you can go out there and fix it yourself.

You want to be able to code, compile, and download on linux? Make it happen! start up the project, get the basic outline, and get it up on sourceforge. Post here about your efforts, and you'll find people willing to help. Before long, you'll have something working. It may remain as a community supported project for the rest of time, or FIRST/WPI/NI may pick it up and integrate it into their offerings, but either way you will have had a material impact on the program.

You think the security FIRST has for its network on the field isn't sufficient? Do the research, create a well-written white paper on robot security, and make some suggestions for improvements. Work with your own robot to implement some of these suggestions. Create youtube videos demonstrating the exploit and how your suggestions make it impossible.

In short, be productive about this. Its clear you're passionate about the subject. Use that passion to improve things for everyone, instead of sitting behind a keyboard whining about what FIRST should do for you. I can promise you - if you take some of these "problems" your posting about here and lead efforts to fix them, you'll be better for it. It will change the way you look at problems in the future. It will give you something great to talk about when interviewing for college or jobs.
  #24   Spotlight this post!  
Unread 25-03-2010, 16:42
Dave Flowerday Dave Flowerday is offline
Software Engineer
VRC #0111 (Wildstang)
Team Role: Engineer
 
Join Date: Feb 2002
Rookie Year: 1995
Location: North Barrington, IL
Posts: 1,366
Dave Flowerday has a reputation beyond reputeDave Flowerday has a reputation beyond reputeDave Flowerday has a reputation beyond reputeDave Flowerday has a reputation beyond reputeDave Flowerday has a reputation beyond reputeDave Flowerday has a reputation beyond reputeDave Flowerday has a reputation beyond reputeDave Flowerday has a reputation beyond reputeDave Flowerday has a reputation beyond reputeDave Flowerday has a reputation beyond reputeDave Flowerday has a reputation beyond repute
Re: Driver station coding and other

Quote:
Originally Posted by eagle33199 View Post
The average student can write and download code to the robot without running into any hassles, which was NOT true about the old IFI system (there were times with that system where i would be forced to bang my head for several hours just to get code to download... then do it all over again the following week!).
There's a lot of people around here that will disagree with you on this statement, including me. The IFI system is alive and well in the VEX world (the VEX microcontroller is very similar to the IFI RC used by FRC in the past), and thousands of students all over the world use it successfully. So, I'd say that "the average student" is able to work with the IFI stuff just fine.
Quote:
Originally Posted by eagle33199 View Post
As for not using IDEs and only makefiles... you really don't know what you're missing out on. makefiles are handy, I use them all the time... but you really do need an IDE once your project gets past a certain size. Imagine trying to work on a project with several thousand files and millions of lines of code... you aren't going to do that with VI.
I do that every day at Motorola, along with hundreds or thousands of other engineers here. I've worked with several different groups here, and all the products I've worked on have been built from a command line with make (and they've all had 1000s of files and millions of lines of code). Makefiles are very stable - we can build code that's 20 years old here without issue. If we did everything in an IDE, we'd have very little chance of being able to build our current projects 20 years in the future, when whatever IDE of choice today is long gone. Makefiles also make it easy to parallelize builds, which is important if it takes 6-8 hours to compile your code. Oh, and I do indeed do all my coding here with Vim, as do many others.
  #25   Spotlight this post!  
Unread 25-03-2010, 17:11
Ken Streeter's Avatar
Ken Streeter Ken Streeter is offline
Let the MAYHEM begin!
FRC #1519 (Mechanical Mayhem)
Team Role: Engineer
 
Join Date: Feb 2005
Rookie Year: 2005
Location: Team: Milford, NH; Me: Bedford, NH
Posts: 475
Ken Streeter has a reputation beyond reputeKen Streeter has a reputation beyond reputeKen Streeter has a reputation beyond reputeKen Streeter has a reputation beyond reputeKen Streeter has a reputation beyond reputeKen Streeter has a reputation beyond reputeKen Streeter has a reputation beyond reputeKen Streeter has a reputation beyond reputeKen Streeter has a reputation beyond reputeKen Streeter has a reputation beyond reputeKen Streeter has a reputation beyond repute
Re: Driver station coding and other

Quote:
Originally Posted by codedr View Post
The WPI library would be the same if built on linux because the target is still the robot.
This is absolutely true -- the limiting factor is the development environments in use, not the WPI library.

Quote:
Originally Posted by codedr View Post
Building a cross environment on Linux would require...

If you can convince a small group of robo linux enthusiasts to build the
environment, you could grow support for this endeavor.
With respect to Java development using NetBeans, I believe that after the initial imaging of the cRIO, you would be able to use NetBeans on a Linux machine to write your robot code without any troubles.

With respect to C++ development using Wind River Workbench, I believe that after the initial cRIO imaging, you could use Wind River Workbench for Linux (see http://www.windriver.com/products/pr...PO_WB_0109.pdf ) without any troubles. The only issue here is that you would need your own license for Wind River Workbench, as the one that is provided for FIRST is only for Windows development systems.

I confess to not knowing what options exist for running LabView on Linux hosts.
__________________
Ken Streeter - Team 1519 - Mechanical Mayhem (Milford Area Youth Homeschoolers Enriching Minds)
2015 NE District Winners with 195 & 2067, 125 & 1786, 230 & 4908, and 95 & 1307
2013 World Finalists & Archimedes Division Winners with 33 & 469
2013 & 2012 North Carolina Regional Winners with teams 435 & 4828 and 1311 & 2642
2011, 2010, 2006 Granite State Regional Winners with teams 175 & 176, 1073 & 1058, and 1276 & 133
Team 1519 Video Gallery - including Chairman's Video, and the infamous "Speed Racer!"
  #26   Spotlight this post!  
Unread 25-03-2010, 17:57
Greg McKaskle Greg McKaskle is offline
Registered User
FRC #2468 (Team NI & Appreciate)
 
Join Date: Apr 2008
Rookie Year: 2008
Location: Austin, TX
Posts: 4,756
Greg McKaskle has a reputation beyond reputeGreg McKaskle has a reputation beyond reputeGreg McKaskle has a reputation beyond reputeGreg McKaskle has a reputation beyond reputeGreg McKaskle has a reputation beyond reputeGreg McKaskle has a reputation beyond reputeGreg McKaskle has a reputation beyond reputeGreg McKaskle has a reputation beyond reputeGreg McKaskle has a reputation beyond reputeGreg McKaskle has a reputation beyond reputeGreg McKaskle has a reputation beyond repute
Re: Driver station coding and other

LabVIEW for linux and Mac target local execution. For FRC, they will work for editing VIs, but the RT cross-targetting was dropped several releases back.

A quick comment on makefiles and IDEs -- don't be afraid of either one. Good IDEs are great at organizing workflow and integrating different tools into a somewhat cohesive experience. Bad or mediocre IDEs are a waste of launch time.

Make and other script oriented build environments are still with us, and in fact at least a few of the NI internal VxWorks developers choose to work from command line and text editor. If you poke around a bit, I suspect you can do FRC without the IDE.

Internally, LV development has been multi-platform for over twenty years. One of the cool things about that is exposure to many different development tools. We've always had at least one IDE and at least one non-IDE platform. It ebbs and flows.

Greg McKaskle
Closed Thread


Thread Tools
Display Modes Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
2010 Driver Station Netbook Driver Account and Java joshholat FRC Control System 2 10-01-2010 15:04
Spare router and/or driver station? TD912 FRC Control System 4 28-09-2009 18:04
paper: Set and display your Auto-Mode using LabVIEW and the Driver Station PhilBot Extra Discussion 0 11-02-2009 12:32
Camera and driver station viperred396 General Forum 8 05-02-2009 10:12


All times are GMT -5. The time now is 03:46.

The Chief Delphi Forums are sponsored by Innovation First International, Inc.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi