The VEX Robotics interface now supports MRS 2.0.
http://www.codeplex.com/VexMsrs
This project describes a set of services to support the VEX Robotics controller from Microsoft Robotics Studio 2.0. This release has some major changes to the default handling. Rather than requiring you to set default parameters, each supporting service can search for the controller to setup a working default. (E.g. if the first encoder is set as interrupt 3, then if you create an encoder without a manifest, it will search and find the encoder on interrupt 3.)
There are MANY bug fixes in comparison to the 1.5 version. Responses are now generated after requests are satisfied. New and soon to be released sensors from VEX Robotics are supported. (At least I expect they are since I don’t actually have the sensors yet.)
Currently implemented are:
- Motors
- Servos
- Button switch sensors
- Limit switch sensors
- Light sensor
- Sonar sensor
- Encoders
- Gyros
- Accelerometers
- Analog Inputs/Outputs
- Digital Inputs/Outputs
A description of the SquareBot robot is included to get started with.
Merry Christmas,
Edmund Harfmann
My first question is, what happens when you have more than one encoder? I guess that new feature of polling ports is convenient if you only have one of each type of sensor, but I can see that causing issues. Oh well, I hope it works out okay for those who decide to use it.
The scanning only happens when you DON’T specify a manifest. If you configure a manifest, it will use it as is. This is really not a big change from the existing system other than that it will create a working service rather than a dummy that does not connect to anything real. (e.g. you could create digital input 1, analog input 1, digital output 1 as the defaults with the prior system. Now they will be created with something that is real or not create the service if it is not configured… again if no manifest is available.)
At some point I plan to make using a manifest on an ‘outer’ servic to force the controller to update the controllers configuration to match the outer service. Of course in that direction, if you used two different services that each went and tried to claim IO port 5, then who wins the actual configuration is up in the air.
Ed