About robert

This author has not yet filled in any details.
So far robert has created 29 blog entries.

New version – v2014.11.06.162

A new minor version with three little features:  the Excel output feature now includes millisecond precision, and I fixed a bug with the sound starting prematurely.  Additionally, there is a small bug fix around printing trials and phases.

I’m planning a larger release soon.


By |November 6th, 2014|Uncategorized|0 Comments

New Release – v2014.06.15

This release comes with a few new features – shuffle(), repeat(), and .Next: […]

By |June 16th, 2014|New release, Programming language|0 Comments

Counting wheel turns

A few days ago I was asked by a researcher:

“We want to be able to see how many times the rat turned the wheel one complete revolution.  As the wheel turns it will send a value through the Arduino starting at zero up to 1 and then it flips from 1 right back to zero.  Would there be a way just to count the number of times the input value changes from one to 0 within a phase?
We also want to make sure that value is reported in the exported Excel doc.

No problem!  […]

By |February 2nd, 2014|Uncategorized|0 Comments

v2014-01-02 – MAJOR new release

Hey Experimentors!!

v2014.01.02.150 is a MAJOR new release. We’ve rebuilt the entire sound system to use Windows Media Player internally (you never actually see Windows Media Player).  This allowed us to add many new features:

  1. Experimentor can now play many types of music files, including Wave (.wav), Windows Media Audio (.wma), MP4 Audio file (.m4a), Windows audio file (.aac, .adt, .adts), etc.
  2. Experimentor now supports waiting for a sound to finish, and it’s really easy too:  .  So you can start a sound (which will play asynchronously) and then continue doing some more things, and then wait for the sound to finish.  When the sound finishes playing (or is stopped) the wait statement will stop waiting and the code will continue.
  3. You can now also have a when clause for when the sound stops playing:

You can read the documentation to learn more about Experimentor’s sound capabilities.

If you are running Windows “N” which doesn’t come with Windows Media Player (really only available in Europe) then Experimentor will fall back to its old capabilities, and only be able to play .wav files, and the “wait” and “when” capabilities will not be available either.

Now that we’re using Windows Media Player to play sounds, it’s a small jump to use it for another major release with something else really exciting as well…

Finally, this release also fixes an annoying bug introduced in the December release where – without Diagnostic mode turned on – Experimentor would not actually connect to your Arduino, and then crash.

I hope that helps,


By |January 2nd, 2014|Uncategorized|0 Comments

New version: 2013.12.18.121

There’s a new version available: v2013.12.18.121.  This version contains a few bug fixes around the Arduino, and the news feed is working correctly again.

There is new Arduino code available which you can download and then upload into your Arduino.  This new code fixes a problem with the Arduino’s digital input, as well as making the Arduino/Experimentor communication more robust.  Additionally, the new Arduino code ensures that analog inputs will always report when they hit 1023 – the Arduino’s maximum analog value; previously they might not report 1023 if the Arduino first sees something close to that, like 1020.

Finally, one of the more important fixes for the Arduino is that you can no longer use pins 0 or 1, and attempting to do so will report an error within Experimentor.  Pins 0 and 1 are used by Experimentor to communicate to and from the Arduino to control the Arduino and to receive data from the Arduino over the USB port.  So it’s very important that these pins are not used for devices.

I hope that helps!


By |December 18th, 2013|Uncategorized|0 Comments

New version: 2013.08.05.117 – minor bug fixes

There were some minor bugs around how keyboard input was being processed, which are now fixed.  The fix allows you to test for a space, like so: […]

By |August 5th, 2013|Uncategorized|0 Comments

New version: 2013.06.23

A new version is available that now supports the Adruino’s Analog pins, which is pretty cool.  They can be used as input or output pins, providing you with more device options through the Arduino.  The changes to how the Arduino device driver is now used are documented here.



By |June 29th, 2013|Uncategorized|0 Comments

New version! Custom objects

Version 2013.06.02 means Experimentor Workbench now includes custom objects and custom object types!  This is really helpful, because you can create your own objects with your own custom properties:

Of course you can have collections of your own objects as well; the documentation has several examples of how this can be useful.

Run statement updates

Additionally – although a lot more minor – you can now use expressions with the run statement, rather than just an ID.  This allows you to do things such as the “more complex example” on the run statement‘s documentation page, such as:


By |June 2nd, 2013|Uncategorized|0 Comments

Guiding principles

I’ve finally decided to post the principles that guide development of Experimentor software.

In order, they are:

  1. The software should be completely focused on scientific researchers!
  2. The software should be easy to use
  3. The software should be flexible and powerful, as long as it exposes this flexibility and power in an easy to use way
  4. The software should default to saving running session data; we know how important it is for researcher’s to have all of their data!
  5. The software should stop on errors as soon as possible; when a researcher is testing their codes, we don’t want error messages or warnings to be missed.


Let me know what you think!


By |May 19th, 2013|Uncategorized|0 Comments

New version: v2013-05-19.98

This new version does a much better job of reporting when an image source (the file path to the image on your computer) can’t be found.  If an image can’t be found the program will print an error message and stop, rather than continuing to run without any image showing up on the screen.

I hope this helps!


By |May 19th, 2013|Uncategorized|0 Comments