Skip to main content

Oak Sensors in Microsoft Robotics Developer Studio


First, you will have to install Microsoft Robotics Developer Studio 2008. There are three versions of the software: Express, Standard and Academic (details on the differences can be found here). All versions should be compatible with the Oak Service.

Next, you will need to download and install the Oak service corresponding to you device. You can download the installer for free on the dedicated webpage on the Toradex website. Unzip and launch the installer application. It should detect the folder where your version of Microsoft Robotics Developer Studio 2008 is installed.

Getting started

"DSS Services" are the building blocks at the heart the Microsoft Robotics technology - they allow users to integrate Oak sensors with Microsoft Robotics Developer Studio 2008.

The easiest way to discover what you can do with our DSS services is to use Microsoft Visual Programming Language (VPL), which is a graph based editor for building robotics applications. If you are not familiar with VPL, you should start with the tutorials available on Microsoft Developer Network website.

The DSS services can be downloaded below.

DSS service for Oak Accelerometer
DSS service for Oak Distance
DSS service for Oak Move
DSS service for Oak Relative Humidity (RH)
DSS service for Oak Tilt
DSS service for Oak Pressure
DSS service for Oak Lux
DSS service for Oak MagR

Once you have installed your Oak DSS service(s), it will appear in the service list window.

Operations available

Each Oak DSS service offers several operations. The most important one is the Get operation that retrieve the current state of the Oak sensors. The sample application in the graph below simply retrieves the current state of an Oak Accelerometer sensor and displays the 3 acceleration values in a dialog box.

The other operations implement the other functionalities that are available for the device via "feature reports", such as setting and getting user device and channel names, changing report and sampling rates, etc... The complete list of operation available for each device is available is each device's datasheet. Every function has a VolatileMem parameter allowing to specify whether the data is stored or retrieved from RAM instead of flash memory, making the setting non persistent.

Working with more than one device of a given type

If you have only one device connected to a given, you can use your device without any additional setup. But if you have more than one device of a given type, you need a way to tell one from another. To do that you will have to use the 'device user name' feature of the Oak sensor, and and the initial configuration of the service.

  • Give every device a different 'user device name'. You can do this using the free Oak DAT program that you can download, or with a VPL application using the SetUserDeviceName operation (with only one device connected, of course).
  • Select your Oak sensor bloc in your VPL application, then in the "Properties" windows, set the "Configuration" value to "Set initial configuration". In the list of options that appears, set the value of "UserDeviceName" to the name of the device you want your block to operate on.

Send Feedback!