Here is the wiki page for the VEX Arm9 Microcontroller
The VEX PRO Arm9 Microcontroller is a redesign of the popular Qwerk designed by Charmed Labs. Processer, memory, ram, and FPGA remain unchanged. I/O will be compatible with all VEX motors, sensors, and connectors. Packaging has been redesigned and an LCD has been integrated.
*]802.11g wireless communication (VEXnet compatible)
*]ARM9 processor running at 200MHz
*]220 MIPS performance (22x the V0.5 microcontroller)
*]16MB Flash (512x the V0.5 microcontroller)
*]32MB SDRAM (18,000x the V0.5 microcontroller)
*]Runs Linux 2.6, programmable with Eclipse IDE
*]Webcam video support
*]One USB host port, One USB device port
*]One I2C port (connects to multiple new smart sensors)
*]One fast UART serial port
*]16 high resolution analog inputs (12-bit)
*]16 fast digital I/O (all can be interrupts)
*]16 motor ports
*]12 standard 3-wire PWM motor ports
*]4 smart 2-wire motor ports (back-EMF feedback for closed-loop control)
*]Motor current limit is 4x original controller
*]Built in LCD (2x16 character) with 6 buttons
*]Built in speaker (MP3 and WAV audio output)
*]Latches on all 2-wire and 3-wire IO sockets
Note. A good amount of hardware information can be found at [blog – Charmed Labs which you can get to from the Wiki by following the Qwerk link and then the Hardware link.](blog – Charmed Labs which you can get to from the Wiki by following the Qwerk link and then the Hardware link.)
I have no doubt that TeRK will be one of the programming options, but it certainly isn’t the only one. The VEXwiki page mentions the Eclipse IDE (Integrated Development Environment). Eclipse is a very nice open source development environment (even runs on a Mac - yeah!) which you can use to develop in a variety of languages.
I’ve played around with TeRK/Ice a bit on an Qwerk controller and it is cool, but isn’t very approachable (compared to the current Vex programming options). It may be OK at the college level, but I don’t think it would be much of a hit with brand new programmers.
Ice is really geared for distributed computing; a program (or collection of programs) running on multiple independent processors interacting with each other via Ice. I don’t know what the college-level games will look like that use this controller, but I suspect they won’t need much of this distributed infrastructure.
Where Ice would really shine is allowing bots to talk to each other, but that would require the rules to allow multibots. Or if you wanted alliance partner robots to be able to communicate/cooperate, it would require a standardized protocol established as part of the rules/template.
Since the VEX Arm9 microcontroller runs Linux, it should have no problem running more conventional programs. All you need is a library that gives you access to all the I/O ports and a compatible toolchain. Then you tie it all together in the Eclipse IDE and you have a full (free) development environment.
Note: I agree with pretty much everything Quazar says but I want to touch on one specific item:
I just don’t see the necessity or even the attraction of the Vex Pro at the level of brand new programmers. My bet is on those groups using the easyC and ROBOTC programmable Vex Cortex.
My gut feeling is that there will be a substantial price difference between the two controllers and I wouldn’t be surprised to see future rule limitations keeping the number of motors down to what the Vex Cortex can use at below the college level.
And while there’s a lot of things that can be done with Eclipse, it also doesn’t come close to approachable in my opinion. It does have an advantage in that a lot of experienced programmers (professional and student) are familiar with it.
My gut feeling is there will be more course plans based off of the Terk system and Eclipse will attract the people who aren’t making it part of a curriculum.
I’ve only spent a few hours messing around with TeRK/Ice and Eclipse, so I’m basing my comments on very limited experience. Eclipse seems to me to be similar in scope and complexity to MPLAB - not exactly the same, but similar. It will appeal to developers that have used a traditional IDE in the past (MPLAB, VisualStudio, Xcode, etc). I agree that it is not as approachable as EasyC.
It’ll be interesting to see what materializes. I found the TeRK stuff to be easy to set up initially, but then making any changes was difficult and confusing. It may have improved since I looked at it, and/or I may not have found the best tools for monkeying with it.
I kind of disagree with this statement. My opinion may be different though than someone coming from a competition team though since I am just a VEX hobbist.
If you can only afford to buy one new microcontroller, you might want to buy the VEX Pro because you would have the advanced features available as you learn to use them. Some people or teams don’t have a lot of money and they couldn’t afford to buy one new microncontroller now and another one later as their programming skills improve.
I don’t have any advanced programming skills - I just use EasyC, but that doesn’t mean that I wouldn’t like to use the advanced features of the VEX Pro. I don’t know if I could afford to buy a new microcontroller now and another one later or if I could learn advanced programming.
And to be honest why should I have to learn advanced programming to be able to use the advanced features of the VEX Pro? That’s the nice thing about EasyC. It allows someone just starting out to be able to do some amazing things. I get to use the same sensors as someone who is writing their own C code with MPLAB.
The VEX Pro shouldn’t be aimed just at people with advanced programming skills. Everyone should be able to have access to it’s advanced features regardless of their programming skills and I certainly hope that there will be something like EasyC available for it.
The problem with this statement is that I don’t think the two controllers are going to be even close to each other in cost. The core of the Vex Pro (the Qwerk) is a $349 core. That’s without any of the work Vex is putting into it.
I agree that some people don’t have a lot of money. Heck, in my opinion, I have a lot of money and I don’t see me ordering a Vex Pro at any point in the near future because I simply can’t justify a $350 core unit, never mind that core unit nicely packaged, engineered, and hooked up to a Wifi. Maybe Santa will be good to me this year though.
The one thing that really offsets the cost of the Vex pro is the cost of advanced programming environments. If you have the programming skills, then you probably already have the environment sitting on your development station.
I suspect that the correct answer for those teams is “Don’t buy a new microcontoller now. You don’t need it.”
The advanced features of a Qwerk is that it’s a linux box. So far the easiest way anyone’s found to have complete access to ALL of the features of a linux box is to be a programmer, and a pretty good one at that.
I don’t see any new posts and now the Terk pages at CMU (including the page that the Vexpro product page points to) seem to be shut down with a permanent maintenance message. All the projects from the CMU Terk pages are gone too.
Nothing new has shown up in the Vex forums so I am thinking this processor is pretty much unsupported and may be even dead.
Seems like I wasted my money buying this one. Does Vex have any plans of going forward with this ?