Pineblaster
This labscript device controls the PineBlaster open-source digital pattern generator based on the Digilent chipKIT Max32 Prototyping platform.
Warning
The chipKIT Max32 board is no longer commercially available. As such, this device is considered deprecated. We recommend the PrawnBlaster as a replacement device (for both new users looking for a cheap pseudoclock, and existing users of the PineBlaster). The PrawnBlaster microcontroller only costs ~$5USD and supports more instructions, multiple independent pseudoclocks, an internal wait monitor, and an easier connection for referencing to an external clock source.
Detailed Documentation
- class labscript_devices.PineBlaster.PineBlaster(name, trigger_device=None, trigger_connection=None, usbport='COM1')[source]
Bases:
PseudoclockDevice
Instantiates a pseudoclock device.
- Parameters:
name (str) – python variable to assign to this device.
trigger_device (
DigitalOut
) – Sets the parent triggering output. IfNone
, this is considered the master pseudoclock.trigger_connection (str, optional) – Must be provided if
trigger_device
is provided. Specifies the channel of the parent device.**kwargs – Passed to
TriggerableDevice.__init__()
.
- add_device(device)[source]
Adds a child device to this device.
- Parameters:
device (
Device
) – Device to add.- Raises:
LabscriptError – If
device
is not an allowed child of this device.
- allowed_children = [<class 'labscript_devices.PineBlaster.PineBlasterPseudoclock'>]
Defines types of devices that are allowed to be children of this device.
- Type:
- clock_limit = 10000000.0
- clock_resolution = 2.5e-08
- clock_type = 'fast clock'
- property clockline
- description = 'PineBlaster'
Brief description of the device.
- generate_code(hdf5_file)[source]
Generate hardware instructions for device and children, then save to h5 file.
Will recursively call
generate_code
for all children devices.- Parameters:
hdf5_file (
h5py.File
) – Handle to shot file.
- max_instructions = 15000
- property pseudoclock
- trigger_delay = 3.5e-07
- wait_delay = 2.5e-06
- class labscript_devices.PineBlaster.PineBlasterPseudoclock(name, pseudoclock_device, connection, **kwargs)[source]
Bases:
Pseudoclock
Creates a Pseudoclock.
- Parameters:
- class labscript_devices.PineBlaster.PineblasterTab(notebook, settings, restart=False)[source]
Bases:
DeviceTab
- labscript_device_class_name = 'PineBlaster'
- start_run(*args, **kwargs)
- status_monitor(*args, **kwargs)