etho
Project description
etho: A Python framework for coordinating stimuli, data acquisition, and hardware control in neuroscience experiments
etho is an open-source Python framework for running behavioral neuroscience experiments that require coordinated stimulus presentation, hardware control, data acquisition, and experiment logging.
It was developed for neuroscience experiments, where multiple hardware devices must operate together with reproducible timing. etho coordinates cameras, National Instruments DAQ hardware, acoustic and optogenetic stimulation, environmental sensors, and external imaging systems through a modular service-based architecture.
The software is designed to make experiments reproducible, configurable, and maintainable by separating:
- experiment logic and hardware (
protocol.yaml) - stimulus definitions (
playlist.txt) - acquisition callbacks and logs
from the underlying device code.
See the documentation for details.
Installation
Quick installation:
uv venv --python 3.14
.venv\Scripts\activate
uv pip install etho-python
Some hardware backends require additional vendor SDKs and drivers and specific python versions. See the full installation guide.
Usage
Etho can be controlled via a GUI. Launch it with:
etho gui
Alternatively, experiments can be run from the terminal:
etho run protocol.yaml
Data generated by etho can be inspected, annotated, and analyzed with xarray-behave.
Citation
If you use ethoearch, please cite:
TODO
A JOSS paper describing the software is in preparation.
The etho software has been used in the following publications:
-
Vijendravarma, R. K., Narasimha, S., Steinfath, E., Clemens, J., & Leopold, P. (2022). Drosophila females have an acoustic preference for symmetric males. Proceedings of the National Academy of Sciences, 119(13), e2116136119. https://doi.org/10.1073/pnas.2116136119
-
Steinfath, E., Khalili, A., Stenger, M., Schultze, B. L., Nair, S. R., Alizadeh, K., & Clemens, J. (2025). A neural circuit for context-dependent multimodal signaling in Drosophila. Nature Communications, 16, 9472. https://doi.org/10.1038/s41467-025-64907-9
-
Palacios-Muñoz, A., & Clemens, J. (2025). Drosophila males integrate song and pheromones using context-specific strategies. bioRxiv. https://doi.org/10.1101/2025.07.25.666755
-
Ravindran Nair, S., Palacios-Muñoz, A., Martineau, S., Nasr, M., & Clemens, J. (2026). Sex-specific behavioral feedback modulates sensorimotor processing and drives flexible social behavior. Nature Communications, 17, 4026. https://doi.org/10.1038/s41467-026-72057-9
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file etho_python-1.0.tar.gz.
File metadata
- Download URL: etho_python-1.0.tar.gz
- Upload date:
- Size: 90.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: python-requests/2.33.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a863364678b5e0c93bf9012e7983b21d4d0893296787753581224b2b19ddda47
|
|
| MD5 |
5739164b06d30aedb59ca318c2a00176
|
|
| BLAKE2b-256 |
5614aeaf78853b4ed1dc9a3955164514e33ec53576ebcf6133be7b6d8348b406
|
File details
Details for the file etho_python-1.0-py3-none-any.whl.
File metadata
- Download URL: etho_python-1.0-py3-none-any.whl
- Upload date:
- Size: 86.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: python-requests/2.33.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f422a34a432ea0f90aaf2f8e8af35a00a07b3458d992e514ab8b48590279d5cb
|
|
| MD5 |
350c293bea83badc77c3aaa394a7f2c1
|
|
| BLAKE2b-256 |
c8c146976ce5ed58b7b18dc6d293ad3af0f1a55050fcc2728c24ec9c23d528ab
|