Frequently Asked Questions

This FAQ answers the most common questions about using, extending, and supporting g.Pype. If you are new or troubleshooting, this is the right place.

Getting Started & Licensing

How do I install g.Pype?

You can install g.Pype directly from PyPI using pip install gpype. Run this command in your preferred Python terminal. After installation, continue with the g.Pype Training section of the manual to learn how to use it.

How do I use g.Pype?

The best way to get started is to follow the g.Pype Training section of the manual, which provides step-by-step examples and walkthroughs.

Is g.Pype free?

Yes, g.Pype is free for private and educational use within an IDE (VS Code, PyCharm, etc.). For commercial deployment, a g.Pype Runtime license must be purchased.

How is g.Pype licensed?

g.Pype is, for large parts, open source under the g.tec Non-Commercial License (GNCL). This means you can use it freely for private and educational use within an IDE. For commercial deployment of applications, a g.Pype Runtime license must be obtained. Please contact us for details.

General Use & Philosophy

What programming skills do I need to use g.Pype?

Only basic Python knowledge is required. Pipelines are simple to define, and the g.Pype Training allows you to get started even with little coding skills.

Can I use g.Pype without coding?

No. g.Pype is intentionally code-based. There is no design GUI planned, because writing code is often simpler, more flexible, and easier to maintain.

How is g.Pype different from NeuroPype, Medusa, or BrainFlow?

g.Pype focuses on simplicity and a code-based interface. Unlike NeuroPype or Medusa, no GUI is planned, because the code itself is intentionally simple. BrainFlow focuses on device-agnostic data acquisition and basic filtering, whereas g.Pype provides a modular real-time signal processing backend and visualization frontend for end-to-end neuroscience and BCI applications.

How is g.Pype different from MNE-Python?

MNE-Python provides powerful research-oriented tools with a primary (and historical) emphasis on offline biosignal data analysis, while g.Pype focuses on self-contained real-time neuroscience and BCI applications. g.Pype can also stream into the MNE-Python ecosystem via MNE-LSL, so the two toolkits can be used together.

Platform Support

Can I use g.Pype on macOS and Linux?

Yes on macOS. Linux is currently not supported.

Are there restrictions on macOS?

Yes. You cannot use g.Nautilus or Paradigm Presenter on macOS.

Can I use g.Pype on Android or iOS devices?

Planned for upcoming releases.

Hardware Support

Can I use g.Pype with my own amplifier?

Yes, as long as it is a BCI Core-8 or a g.Nautilus. Third-party amplifiers are not supported. However, you can still use g.Pype without hardware, for example with the signal/noise generator.

Can I use g.Pype with the Unicorn Hybrid Black?

Planned for upcoming releases.

Can I use g.Pype with g.HIamp, g.USBamp, or g.Pangolin?

Integration is planned. We are currently investigating performance feasibility, but technically it is possible.

Can I connect multiple amplifiers to one pipeline?

Yes. You can instantiate multiple source nodes for each amplifier.

Does g.Pype support trigger boxes (e.g. g.TRIGbox)?

Yes. You can record trigger signals via the DI of g.Nautilus.

Does g.Pype support third-party stimulators or TMS devices?

Yes, you can build your own stimulation node in g.Pype if the device has a Python-compatible interface.

Pipelines & Execution

Can I create standalone applications with g.Pype?

Yes. You can compile your g.Pype application into an executable and deploy it with g.Pype Runtime.

Does g.Pype support real-time data processing?

Yes. g.Pype is designed for low-latency, real-time applications such as BCI experiments.

Can I stop and resume a pipeline?

Yes.

How do I save, load, or share pipelines?

Pipelines are just Python code, so you save them as .py scripts and can share them like any other code file.

What happens if one node crashes?

You will be notified in the IDE terminal with more information. You can check the g.Pype log file for details. Use your IDE’s debugging features or write diagnostic messages to the log. See the Troubleshooting section for guidance.

Can I debug pipelines interactively?

Yes. Pipelines can be run directly in Python, allowing you to use standard debugging tools such as breakpoints, logging, or variable inspection. Pipelines also feature a monitoring and logging component which simplifies multi-threaded bug tracing and fixing.

Visualization & Stimulus Presentation

What visualization tools are available?

g.Pype uses PyQtGraph for fast, interactive plotting in Qt applications. Standard visualization tools like time series scopes are available. You can also develop your own custom dashboards or use external plotting libraries.

Can I present stimuli (audio/visual) with g.Pype?

Yes. You can purchase the Paradigm Presenter from g.tec, which provides millisecond-precision stimulus presentation. Alternatively, you can integrate PsychoPy into g.Pype.

Can I use g.Pype with VR/AR displays?

Experimental integration is possible using external Python libraries or custom nodes.

Can I use g.Pype widgets outside of Qt?

Widgets are Qt-based, but we plan to integrate additional frontend technologies (Flutter, React, etc.) into g.Pype.

Interfacing & Extensions

Can I use third-party libraries like scikit-learn with g.Pype?

Absolutely. Third-party Python libraries can be integrated into your pipeline by wrapping them in custom nodes. Alternatively, you can stream g.Pype data via LSL/UDP into third-party interfaces.

Does g.Pype support Lab Streaming Layer (LSL)?

Yes. LSL output nodes are supported, making it easy to stream your data into LSL-enabled applications.

Can I receive data streams (UDP/LSL) from remote sources?

Not generally. g.Pype is restricted to g.tec amplifiers, and external LSL/UDP streams may originate from unsupported devices.

Can I control g.Pype pipelines from a web dashboard?

Planned for upcoming releases.

Advanced & Research Use

Can I use OSCAR with g.Pype?

Yes. Integration of the OSCAR artifact removal algorithm is planned for upcoming releases.

Can I do source localization or machine learning with g.Pype?

Yes. You can implement custom nodes for this purpose, or use LSL/UDP streaming to connect g.Pype with other applications.

Can I re-run a file that has been pre-recorded with g.Pype?

This is not the primary use case, since stored data is often pre-processed and pipelines may rely on multiple synchronous sources. However, you can store comprehensive data for downstream offline analysis.

Is g.Pype suitable for clinical use?

g.Pype itself is a research tool. Applications in the clinical context require ethical approval.

Can I simulate EEG data with g.Pype?

Partly yes. The generator node allows you to create noise, which you can bandpass and modulate to resemble EEG with band-power activity. Simulating time-locked responses like ERPs is technically possible but requires customized nodes.

I am using g.Pype in my scientific publication. How do I cite it?

Please refer to the Citation Guidelines in the Appendix for the correct citation format.

Contact & Support

How do I report bugs or request features?

Please open an issue in the public GitHub repository.

How do I get support?

Direct g.tec support is not included with the free version. However, we provide extensive documentation, a troubleshooting guide, and FAQs (this page) to help you solve problems efficiently.