Go to Post The name of the game will be "Conjunction Junction". The robots will be tasked with hooking up words and phrases and clauses. You're welcome. - Travis Hoffman [more]
Home
Go Back   Chief Delphi > Technical > Control System > FRC Control System
CD-Media   CD-Spy  
portal register members calendar search Today's Posts Mark Forums Read FAQ rules

 
Reply
 
Thread Tools Rate Thread Display Modes
  #1   Spotlight this post!  
Unread 09-03-2010, 18:53
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
Reset user program button

This was inspired by complaints about the needed reboot after code download to the cRIO

What I would basically like is a button on the driver station, similar to the reboot button, that kills and reloads user code on the cRIO. From what I know about the system, I don't think this would be too hard. User programs run in their own task, and this task is loaded as a default library on boot. To do this, the simplest thing would just be kill the user program task and reload it from flash. Don't think it would be too hard unless there is some aspect of the system I'm missing

This would be really helpful for downloading code since the reboot time is the most annoying thing when downloading for me. according to NetConsole, the time for the actual user program to load relative to the rest of the system boot is minimal, in most situations less than a full IFI boot. A simple reset of the task after download would save much time in the pits and for programming in general (as well as many "can we run it yet?" questions. Why can't they learn the RSL codes?)
__________________

"To have no errors would be life without meaning. No strugle, no joy"
"A network is only as strong as it's weakest linksys"
Reply With Quote
  #2   Spotlight this post!  
Unread 22-03-2010, 23:04
biojae's Avatar
biojae biojae is offline
Likes Omni drives :)
AKA: Justin Stocking
FTC #5011 (BOT SQUAD) && FTC#72(Garage bots)&& FRC#0399 (Eagle Robotics)
Team Role: College Student
 
Join Date: Oct 2008
Rookie Year: 2008
Location: Lancaster
Posts: 276
biojae is a jewel in the roughbiojae is a jewel in the roughbiojae is a jewel in the rough
Re: Reset user program button

Well, it would be a good idea if you only had the main thread (task) running.
There are other threads running in the background (ie compressor, FRCCOMMS, vision, etc)
These tasks take up RAM.

And if the main task doesn't properly deallocate all of its resources, then when it is killed these objects could still remain in RAM.

Rebooting the cRio clears all of the RAM, and is an option that doesn't have to have properly written code.
With most of the other team's code that I have helped clean up, memory management was the last concern.

Its probably best for the developers of the Control System, to keep the reset as it is (eventhough it does take a while to come back up) instead of trying to debug the problems of poor memory management.


As far as rebooting when deploying code, Netbeans for Java has the squawk VM reboot the robot when the code has been uploaded. It still takes the same time as a powercycle boot, but it seems faster because you don't have to manually reset the power (or push the reset button, or reboot from the DS).
__________________
FTC Team 72 - No site
FRC Team 399 - http://www.team399.org
2010 Rockwell Collins Innovation in Control Award - (Use of the CAN bus, among other reasons) Phoenix, Arizona!
Reply With Quote
  #3   Spotlight this post!  
Unread 23-03-2010, 16:48
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: Reset user program button

Well most of the background tasks are persistent ones (frcnetworkcommunication, frcvision, pcvideoserver, CAN bridge), and they would never have a reason to terminate other than a crash. For the rest of it a script can be setup that iterates through the task listing and kills the unknown or usercode instance specific tasks.

Also on our bot we generally use netconsole for a reboot since it means we don't have to wait for the camera to boot (CAN code seems to die if the camera isn't completely booted).
__________________

"To have no errors would be life without meaning. No strugle, no joy"
"A network is only as strong as it's weakest linksys"
Reply With Quote
Reply


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
NXT Brick clicks - reset button pushed...still clicking FTC Mesa Prep Technical Discussion 5 05-12-2009 13:35
RC remote program and reset button schematic Bluephlame Electrical 5 10-02-2008 01:24
Reset Button for Vex RC's irishninja FIRST Tech Challenge 5 18-06-2006 15:56
Visibility of Robot Controller and Reset Button Tracy Rules/Strategy 1 17-02-2003 07:36
Select button and user mode n[ate]vw Programming 2 20-01-2003 16:33


All times are GMT -5. The time now is 16:57.

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