PyPulsePal¶
Python API for the PulsePal open-source pulse train generator.
Key features¶
- Validated Pydantic v2 models for channel and trigger configuration
- Single-call bulk upload (
sync_all_params) and per-parameter programming (program_one_param) - JSON and YAML config file I/O
- Custom pulse trains and arbitrary waveforms
- SD card persistence (model 2)
- Digital logic output (model 2)
- Context manager with automatic save-on-exit
Quick start¶
from pypulsepal import PulsePal
with PulsePal(serial_port="/dev/ttyACM0") as pp:
pp.channel_configs[0].phase1Voltage = 5.0
pp.channel_configs[0].pulseTrainDuration = 1.0
pp.sync_all_params()
pp.trigger_selected_channels(channel_1=True)
→ Getting Started for installation and a step-by-step walkthrough.