View Full Version : New Team Questions
Hey our team was just setup, team 1676, and this is our first year doing anything like this. I have alot of Linux(kernel hacking and configing everything, heh gentoo user) and programming experience, mainly OpenGL game development stuff. Because of all this I have been chosen to lead the group's programming efforts. I have a few questions to the experienced robot programmers out there. What OS is on the robot? If there is none or its horrible can I put embedded Linux on it? I only run Linux myself, is it possible to program this robot on Linux? Is there some sort of emulator I can get so I dont have to be with the robot, or it dose not have to be fully built for me to test?
Thanks
nuke
Bharat Nain
02-01-2005, 02:47
OK first, yes you can program this robot using Linux. Visit http://kevin.org/frc/ and you should find some more information. For starting off, I highly recommend the documents on http://www.innovationfirst.com/FIRSTRobotics/documentation.htm
And then if you are advanced enough you can look at this (http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1335&dDocName=en010319) page, but only if you are a really core programmer. Otherwise innovation FIRST is the best place to start.
To answer another part of you question, there is no OS on the robot controller. It is a microchip which understands C and assembler. Search, Read documents and get a feel of what our robot controller(microchip product) is. Its might not be such a good idea to try to go as far and put Linux on there or something, Search, Read documents you can find and you will get a feel.
A warm welcome to the ChiefDelphi online community and one more suggestion, next time before you post, use the Search function (http://www.chiefdelphi.com/forums/showthread.php?p=308347#post308347) before you ever post, because most of your questions are already asked regarding programming. If you cant find it, then post, we will be most glad to help.
-Bharat
It would be impossible to put Linux on there, as Linux can't run from flash memory.
Max Lobovsky
04-01-2005, 22:58
It would be impossible to put Linux on there, as Linux can't run from flash memory.
Just curious, why not?
Astronouth7303
05-01-2005, 07:26
It's not actually impossile, it's just that with the limited resources, it seems excessive.
phrontist
05-01-2005, 08:10
These are microcontrollers, and essentially their beauty is in their lack of operating system. If you really like tweaking your system, you'll LOVE have total control over this processor. Do you know C well? If not, learn it (see this helpful page on FIRSTwiki (http://www.firstwiki.org/Resources_for_C_programming)). I highly reccommend "The C Programming Language" by Kernighan and Ritchie, because it's very well written and is essentially THE book on the topic. It's also a really great refrence.
This is not actually "normal" C, but rather C18, a stripped down version. It's actually quite close to normal C, and has everything you need. All the information on the C18 standard (and it's use on the microcontrollers) you could ever need is in the whitepapers here (http://kevin.org/frc/).
Be sure to read and understand the defualt code fully, when it is released this saturday (Excited yet? :D ).
When you're feeling confident, go to the whitepapers section of this site and read the paper on interrupts, which is really great. The quaderature whitepaper is also useful.
If you need any help, IM/Email me without hesitation (click on my username above to get contact info). Oh, and while it's not terribly useful right now, the Code Repository (http://www.chiefdelphi.com/forums/showthread.php?p=313135) will soon be very useful. Glad to have you on board.
Astronouth7303
05-01-2005, 17:13
Be sure to read and understand the defualt code fully, when it is released this saturday (Excited yet? :D ).
You actually expect it to change much?
heh thanks for your responses! Im a real n00b at this, I thought it had to have an os just like most electronic devices do(pda cell phone router ect). Now that ive really looked at the source and went to a course today I understand it now. Writing the code should be easy, I might write my own base code and base it off the default so I can tweak the hell of out of it. Ive been doing C/C++ for years. Once we opened the kit today and went through all the parts it came with MSVS .net, jw why would we need that since its an ia32(maybe x86_64?) compiler? Just for the IDE? Anyway im probably going to code on my thinkpad since our school computers tend to uhhh never work espcially when you need it and the adminitrators will fix it "when they get to it."
heh thanks for your responses! Im a real n00b at this, I thought it had to have an os just like most electronic devices do(pda cell phone router ect). Now that ive really looked at the source and went to a course today I understand it now. Writing the code should be easy, I might write my own base code and base it off the default so I can tweak the hell of out of it. Ive been doing C/C++ for years. Once we opened the kit today and went through all the parts it came with MSVS .net, jw why would we need that since its an ia32(maybe x86_64?) compiler? Just for the IDE? Anyway im probably going to code on my thinkpad since our school computers tend to uhhh never work espcially when you need it and the adminitrators will fix it "when they get to it."
hehe I know that feeling. Now the reason they give you MSVS.net is so you can program other things i assume. Its not used for the robot in any way shape or form. You use MPLab to program the robot. Its a nice IDE.
hehe I know that feeling. Now the reason they give you MSVS.net is so you can program other things i assume. Its not used for the robot in any way shape or form. You use MPLab to program the robot. Its a nice IDE.
Some teams have written their own 'Dashboard' program using the MS Dev Tools. So, instead of having the Dashboard show the Operater Interface or Robot Controller it could show your robot or the joysticks; or the robot on the play field that kind of thing.
Sean
TimeOut: Do you mean some teams instead of using the joystickes would use a laptop? I have a whole graphics engine, so it could be possible for me to do that. The only problem is my laptop only has an ATI Radeon 7500. Could you explain further please?
jparkteach
08-01-2005, 23:32
TimeOut: Do you mean some teams instead of using the joystickes would use a laptop? I have a whole graphics engine, so it could be possible for me to do that. The only problem is my laptop only has an ATI Radeon 7500. Could you explain further please?
NOPE, you're not using the laptop instead of the joystick. You still have to use a joystick to drive the robot. However, you can have a laptop connected to your operator interface to show you what's going on inside the robot controller. It's a nice troubleshooting tool. For more info on the Dashboard go to http://www.ifirobotics.com/dashboard_viewer.shtml
Kamikaze
09-01-2005, 00:22
I only run Linux myself, is it possible to program this robot on Linux?
Yes. There seem to only be proprietary tools for compiling for the robot controller but it can still work. I've had some success with using WINE to run the mcc18 compiler and the mplink program to get the thing compiled. WINE is a compatibility layer program for various platforms that allows you to run programs written for Windows.
I can probably give you a makefile to use to compile stuff later. I modified some makefiles posted on Chiefdelphi (from the thread about cygwin RC development) a bit to use WINE and run on Linux, but that was for the 2004 code. Because there's a newer compiler Microchip is providing us with and the 2005 default code I will likely have to make a few changes.
TimeOut: Do you mean some teams instead of using the joystickes would use a laptop? I have a whole graphics engine, so it could be possible for me to do that. The only problem is my laptop only has an ATI Radeon 7500. Could you explain further please?
jpark is correct. It's actually a good way to troubleshoot your controller. You can 'watch'. Also, I don't want to make it sound like it's a trivial project. Unless you have a lot of programmers you are better off focusing on the robot instead of the Dashboard.
It could make an excellent off-season project however.
Sean
Yes. There seem to only be proprietary tools for compiling for the robot controller but it can still work. I've had some success with using WINE to run the mcc18 compiler and the mplink program to get the thing compiled. WINE is a compatibility layer program for various platforms that allows you to run programs written for Windows.
I can probably give you a makefile to use to compile stuff later. I modified some makefiles posted on Chiefdelphi (from the thread about cygwin RC development) a bit to use WINE and run on Linux, but that was for the 2004 code. Because there's a newer compiler Microchip is providing us with and the 2005 default code I will likely have to make a few changes.
Have you tried using VMware and the tools?
Sean
TimeOut/JPark: Thanks for the info!!! Id do it if I had the time/resources but im the only one on my team that knows C. So I really have to focus on the robot. I may do it off reason as TimeOut suggested.
Kamikaze: I have it running through wine(actually cedega, the gaming version of wine). When I first downloaded the compiler I started to surf the FTP server and found MPLAB C30. I read in the readme that its under the gnu licence and the source is availible from the microtech web site. Does anyone know were this source is? Maybe we could port it to Linux.
Kamikaze
09-01-2005, 19:58
When I first downloaded the compiler I started to surf the FTP server and found MPLAB C30. I read in the readme that its under the gnu licence and the source is availible from the microtech web site. Does anyone know were this source is? Maybe we could port it to Linux.
The compiler is for different microcontrollers. The RC uses 18F8520 controllers. C30 is for dsPIC30F type controllers.
The compiler is for different microcontrollers. The RC uses 18F8520 controllers. C30 is for dsPIC30F type controllers.
heh thanks. I got a little worried hearing about the newest compiler that we'er getting and then finding a newer one.
vBulletin® v3.6.4, Copyright ©2000-2017, Jelsoft Enterprises Ltd.