Skip to content

Cannot compile labscript file when NI PCI 6733 has digital outputs #12

@philipstarkey

Description

@philipstarkey

Original report (archived issue) by Philip Starkey (Bitbucket: pstarkey, GitHub: philipstarkey).


The NI PCI 6733 raises an exception when trying to add digital outputs in labscript.

The Exception raised is:

#!python

Traceback (most recent call last):
     File "C:\labscript\userlib\labscriptlib\atoms2\connectiontable.py", line 12, in <module>
       stop(1)
     File "C:\labscript\labscript\labscript.py", line 1928, in stop
       generate_code()
     File "C:\labscript\labscript\labscript.py", line 1841, in generate_code
       device.generate_code(hdf5_file)
     File "C:\labscript\labscript_devices\CiceroOpalKellyXEM3001.py", line 83, in generate_code
       PseudoclockDevice.generate_code(self, hdf5_file)
     File "C:\labscript\labscript\labscript.py", line 896, in generate_code
       Device.generate_code(self, hdf5_file)
     File "C:\labscript\labscript\labscript.py", line 393, in generate_code
       device.generate_code(hdf5_file)
     File "C:\labscript\labscript\labscript.py", line 786, in generate_code
       Device.generate_code(self, hdf5_file)
     File "C:\labscript\labscript\labscript.py", line 393, in generate_code
       device.generate_code(hdf5_file)
     File "C:\labscript\labscript\labscript.py", line 393, in generate_code
       device.generate_code(hdf5_file)
     File "C:\labscript\labscript_devices\NI_PCI_6733.py", line 32, in generate_code
       parent.NIBoard.generate_code(self, hdf5_file)
     File "C:\labscript\labscript_devices\NIBoard.py", line 94, in generate_code
       digital_out_table = self.convert_bools_to_bytes(digitals.values())
     File "C:\labscript\labscript_devices\NIBoard.py", line 40, in convert_bools_to_bytes
       bits = bitfield(outputarray,dtype=self.digital_dtype)
     File "C:\labscript\labscript\labscript.py", line 94, in bitfield
       if iterable(arrays[i]):
   IndexError: list index out of range

Looks like the digital output numpy array dtype is incorrectly specified (must match the number of digital outputs)

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingmajor

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions