Generate IMRO channelmaps for Neuropixels probes that respect electrode-ADC wiring constraints.
- Browser-based generation of
.imrofiles for SpikeGLX — the tables that tell SpikeGLX which channels to record from, what reference to use, and recording amplification gain. - Arbitrary selection of electrode geometries, within the boundaries of Neuropixels electrode-ADC hardware wiring constraints.
- Common presets available out of the box (reach out to suggest other common geometries!).
- Option to load a pre-existing
.imrofile as a starting point (or simply to visualize a probe geometry).
Note
This tool is in beta. The IMRO editor tools in SpikeGLX and Open Ephys work correctly — what we provide here are tools to specify IMRO tables more easily. If you import one of our tables into SpikeGLX or Open Ephys, please double-check that all site selections, referencing, gains, and filter settings are what you intended.
git clone https://github.com/m-beau/pixelmap.git
cd pixelmap
uv run pixelmap # installs dependencies automatically and launches the GUIAlso available via pip, conda, or Docker.
Use the online GUI directly in your browser — no installation required.
Or launch it locally:
uv run pixelmap # or: pixelmap (if installed with pip)- Select your probe type from the dropdown.
- Choose a preset or select electrodes interactively (click, drag, or type ranges).
- Download the
.imrofile once you've reached the target electrode count. - Load in SpikeGLX via the IM-Setup tab.
import pixelmap as cmg
imro_list = cmg.generate_imro_channelmap(
probe_type="2.0-4shanks",
layout_preset="tips_all",
wiring_file="wiring_maps/2.0-4shanks_wiring.csv"
)
cmg.save_to_imro_file(imro_list, "my_channelmap.imro")See the full documentation for the complete API reference, GUI guide, preset reference, and troubleshooting.
| Probe type | Status |
|---|---|
| 1.0 | Supported |
| 2.0, 1-shank | Supported |
| 2.0, 4-shanks | Supported |
| Quadbase | Planned |
| NXT | Planned |
UHD and Opto are not currently on our roadmap — open an issue if you need support for these.
Bug reports and feature requests are welcome via GitHub Issues. Pull requests are also welcome — please open an issue first to discuss significant changes.
A paper describing PixelMap is being prepared for submission to the Journal of Open Source Software (JOSS). A DOI and citation will be provided here once published.
This project is licensed under the GNU General Public License v3.0.