A Python Socket.IO server that allows any Socket.IO-compliant application to communicate with manipulators used in electrophysiology experiments.
GPL-3.0 License
The Electrophysiology Manipulator Link (or Ephys Link for short) is a Python Socket.IO server that allows any Socket.IO-compliant application (such as Pinpoint) to communicate with manipulators used in electrophysiology experiments.
Supported Manipulators:
Manufacturer | Model |
---|---|
Sensapex | uMp-4 uMp-3 |
New Scale | Pathfinder MPM Control v2.8+ M3-USB-3:1-EP |
Ephys Link is an open and extensible platform. It is designed to easily support integration with other manipulators.
For more information regarding the server's implementation and how the code is organized, see the package's development documentation.
For detailed descriptions of the server's API, see the API reference.
NOTE: Ephys Link is an HTTP server without cross-origin support. The server is currently designed to interface with local/desktop instances of Pinpoint. It will not work with the web browser versions of Pinpoint at this time.
Pinpoint comes bundled with the correct version of Ephys Link. If you are using Pinpoint on the same computer your manipulators are connected to, you can launch the server from within Pinpoint. Follow the instructions in the Pinpoint documentation.
The configuration window will close and the server will launch. Your configurations will be saved for future use.
To connect to the server from Pinpoint, provide the IP address and port. For example, if the server is running on the same computer that Pinpoint is, use
localhost
8081
If the server is running on a different (local) computer, use the IP address of that computer as shown in the startup
window instead of localhost
.
pip install ephys-link
Import main and run (this will launch the setup GUI).
from ephys_link.__main__ import main
main()
Clone the repository.
Install Hatch
In a terminal, navigate to the repository's root directory and run
hatch shell
This will create a virtual environment, install Python 12 (if not found), and install the package in editable mode.
If you encounter any dependency issues (particularly with aiohttp
), try installing the latest Microsoft Visual C++
(MSVC v143+ x86/64) and the Windows SDK (10/11)
via Visual Studio Build Tools Installer.
Complete documentation including API usage and development installation can be found on the Virtual Brain Lab Documentation page for Ephys Link.
If this project is used as part of a research project you should cite the Pinpoint repository. Please email Dan ([email protected]) if you have questions.
Please reach out to Kenneth ([email protected]) for questions about the Electrophysiology Manipulator Link server. Bugs may be reported through the issues tab.