Welcome

Kind of a FAQ about this program

Blue IO is a program for experiments in the electrophysiological research field - especially on experiments that assess the visual system of animals. For that purpose the program generates (rather simple) visual stimuli, applies electrical stimuli and records electrical signals from cells. With some modificatons the program may be used outside an electrophysiological context - given you have a spare UEI PD2-MF(S) data acquisition board around...

We had the great pleasure to do a brief Q&A session with the programmer of this piece of software. Read the demanding questions and the quite sophisticated answers in the following:

Okay, what's this?
Blue IO is a software to generate simple visual stimuli on a special stimulus device while simultaneously record analog data on 4 channels of a UEI PD2-MF(S) DAQ data acquisition board and, also simultaneously, apply analog output data. Also there is partial control of the operation mode of a npi SEC 10 LX cell amplifier integrated.

Well, that's sounds rather weird - what actual use has this program?
This program is written for electrophysilogical experiments on the visual system of an animal. I wrote the software for my own experiments on the blowfly's visual system, which I assessed by quite demanding methods which led the world to exciting new findings about synaptic transmission and eventually provided me a doctor's degree :-). But I needed a very specially tailored software to do my research - Blue IO. I am not sure if this software may be somehow useful outside Bielefeld University. But maybe some folks also playing with UEI PowerDAQ I/O boards or some electrophysiologists may find this software interesting.

Understood - then what's actually presented here on these webpages?
In the following chapters I describe what is needed to run the program, how to modify it (on sourcecode level) and how to use it.

What's the LED board which is spoken about here?
It is a custom made LED board, details about that board are uncovered in the requirements section

How is simultaneous work of analog input and output and digital lines achieved?
I like that question. The DAQ board has three subsystems: digital I/O, analog in and analog out. The programm accesses all these subsystem simultaneously by using a multithreaded layout. Each subsystem has an dedicated thread. With earlier driver versions of the board there were some serious issues, but now it works stable. According to the support of UEI they were not aware of other projects using all three subsystems simultaneously. And this program does not only use the subsystems simultaneously, but it quenches out the subsystems up to the maximum!

The sourcecode is difficult to read, the methods are - let's say - kind of unorthodox
Mind you that I am no programmer, but biologist. The aim was not to write elegant code, but to develop a working solution.

Why the need to simultaneously run WinUAE - the famous Commodore Amiga Emulator? Confess - you actually like to annoy ppl with old computers!
Well, while I indeed like the Commodore Amiga (but more its successor system MorphOS), this is not done to annoy ppl but to increase the power of the system. The programm uses the Sleep() command quite a lot. While it is debatable whether this command is a nice one or not, the fact remains, that Windows has a poor timing when using this command in normal mode. But there is another mode available in Windows that provides a much better timing. I could have added the routines inside the Blue IO program to switch to that mode, but I chose the easy approach to just launch a program that triggers thisparticular mode. WinUAE does the job good. And while having WinUAE installed you may play a round of Giana Sisters or Turrican when bored too much from work...

Are there any future plans for this great piece of software?
There are some improvements I would like to add. And I always wanted to implement a tetris or space invaders version presented on the LED board. If I am too bored I may deliver that. But aside from that I am willing to help other ppl to adjust and maintain that program. You just need to contact me.

Thank you for taking the time to answer these questions.
Cheers!

--

What's next to read?

You may proceed with:

Requirements

The code manual page


back to the Blue IO main page

back to main page and contact information
--
latest change: 26-08-2009 -- (c) U. Beckers