A preprint will be available soon.
Please feel free to open a new GitHub issue for any questions, suggestions, or comments you might have.
The source for this website is persistently stored on Zenodo (https://doi.org/10.5281/zenodo.3838692) and can be used to build the website locally (see
README.md file at the root of the archive).
A multitude of scientific disciplines employs experimental research involving the presentation of stimuli to research subjects. Be it displaying a stimulus to a human, applying an electric shock to a rodent, or switching off the lights in a room where an autonomous robot is trying to navigate. Researchers need to record these events together with other data to make sense of the results.
Traditionally, the parallel port was the interface of choice for event marking, and a lot of hardware for science experiments depends on this interface. Yet, the parallel port has been replaced by the universal serial bus (USB) protocol, which means that it is becoming more and more difficult to obtain modern computer hardware that supports a parallel port “out of the box”.
Replacements of the parallel port interface are needed to make sure that all the benefits that the parallel port supplied in the past (speed, simplicity, robustness) will be available in the future.
One such replacement is relay output data via USB to a dedicated microcontroller unit (e.g., an Arduino or a Teensy), which then converts the incoming data into a parallel signal, and sends it on to its destination.
In our article, “In COM we trust: feasibility of USB based event marking”, we show the feasibility of such an approach through a direct comparison of USB based event marking with the parallel port. On this website we showcase supplementary material.
The data used in the article “In COM we trust: feasibility of USB based event marking” as well as the analysis scripts are supplied. Additionally, we provide code to reproduce the figures used in the article.
In this section we supply a shopping list, build instructions, and example firmware to build a simple hardware to mark events from USB to TTL.
In this section we provide examples on how to mark events from USB to TTL using popular programming languages (e.g., Python).