BUG: Suite2P gui not saving update to NWB file
Describe the issue:
When working in the GUI, the dropdown option for "save NWB file" doesn't seem to work. My version is 0.14.4 but I tried this on 0.14.2. I have tried loading the stat.npy or a .nwb file prior to saving the output.
Saving .nwb files works fine when running suite2P and setting ops['save_NWB']=True, just doesn't want to update nor save out NWB files from the GUI interface (after suite2P algorithms are run).
Any thoughts/recommendations?
Thanks! John
Reproduce the code example:
No code. This is a bug report for the GUI interface.
Error message:
No response
Version information:
suite2p v0.14.4
Context for the issue:
No response
@JohnStout, have you checked inside the suite2p of your save_path0 directory? An ophys.nwb file should be saved there once you use the Save NWB File on the GUI. If this doesn't solve your problem, can you elaborate more on the steps you're taking so that I can reproduce this error?
Having the same issue here, when trying to use the "save NWB"
It creates the ophy.nwb but it seems incomplete. It only occupies 33MB and I get this error
Fields: file_create_date: [datetime.datetime(2025, 3, 27, 16, 36, 34, 499908, tzinfo=tzlocal())] identifier: /data/project/nvl_lab/HoloBMI/Raw/190930/NVI12/D5/im/holostim_seq/holostim_seq_190930T132217-001 session_description: suite2p_proc session_start_time: 2025-03-13 23:20:39.501307-05:00 timestamps_reference_time: 2025-03-13 23:20:39.501307-05:00
Traceback (most recent call last): File "C:\Users\Nuria\anaconda3\envs\suite2p\lib\site-packages\hdmf\backends\hdf5\h5tools.py", line 959, in set_attributes obj.attrs[key] = value File "h5py\_objects.pyx", line 54, in h5py._objects.with_phil.wrapper File "h5py\_objects.pyx", line 55, in h5py._objects.with_phil.wrapper File "C:\Users\Nuria\anaconda3\envs\suite2p\lib\site-packages\h5py_hl\attrs.py", line 104, in setitem self.create(name, data=value) File "C:\Users\Nuria\anaconda3\envs\suite2p\lib\site-packages\h5py_hl\attrs.py", line 202, in create attr = h5a.create(self._id, name, htype, space) File "h5py\_objects.pyx", line 54, in h5py._objects.with_phil.wrapper File "h5py\_objects.pyx", line 55, in h5py._objects.with_phil.wrapper File "h5py\h5a.pyx", line 50, in h5py.h5a.create OSError: Unable to synchronously create attribute (object header message is too large)
The above exception was the direct cause of the following exception:
Traceback (most recent call last): File "C:\Users\Nuria\anaconda3\envs\suite2p\lib\site-packages\suite2p\gui\menus.py", line 55, in
lambda: save_nwb(get_suite2p_path(parent.basename))) File "C:\Users\Nuria\anaconda3\envs\suite2p\lib\site-packages\suite2p\io\nwb.py", line 510, in save_nwb fio.write(nwbfile) File "C:\Users\Nuria\anaconda3\envs\suite2p\lib\site-packages\hdmf\utils.py", line 577, in func_call return func(args[0], **pargs) File "C:\Users\Nuria\anaconda3\envs\suite2p\lib\site-packages\hdmf\backends\hdf5\h5tools.py", line 395, in write super().write(**kwargs) File "C:\Users\Nuria\anaconda3\envs\suite2p\lib\site-packages\hdmf\utils.py", line 577, in func_call return func(args[0], **pargs) File "C:\Users\Nuria\anaconda3\envs\suite2p\lib\site-packages\hdmf\backends\io.py", line 99, in write self.write_builder(f_builder, **kwargs) File "C:\Users\Nuria\anaconda3\envs\suite2p\lib\site-packages\hdmf\utils.py", line 577, in func_call return func(args[0], **pargs) File "C:\Users\Nuria\anaconda3\envs\suite2p\lib\site-packages\hdmf\backends\hdf5\h5tools.py", line 834, in write_builder self.write_group(self.__file, gbldr, **kwargs) File "C:\Users\Nuria\anaconda3\envs\suite2p\lib\site-packages\hdmf\utils.py", line 577, in func_call return func(args[0], **pargs) File "C:\Users\Nuria\anaconda3\envs\suite2p\lib\site-packages\hdmf\backends\hdf5\h5tools.py", line 1013, in write_group self.write_group(group, sub_builder, **kwargs) File "C:\Users\Nuria\anaconda3\envs\suite2p\lib\site-packages\hdmf\utils.py", line 577, in func_call return func(args[0], **pargs) File "C:\Users\Nuria\anaconda3\envs\suite2p\lib\site-packages\hdmf\backends\hdf5\h5tools.py", line 1018, in write_group self.write_dataset(group, sub_builder, **kwargs) File "C:\Users\Nuria\anaconda3\envs\suite2p\lib\site-packages\hdmf\utils.py", line 577, in func_call return func(args[0], **pargs) File "C:\Users\Nuria\anaconda3\envs\suite2p\lib\site-packages\hdmf\backends\hdf5\h5tools.py", line 1292, in write_dataset self.set_attributes(dset, attributes) File "C:\Users\Nuria\anaconda3\envs\suite2p\lib\site-packages\hdmf\utils.py", line 577, in func_call return func(args[0], **pargs) File "C:\Users\Nuria\anaconda3\envs\suite2p\lib\site-packages\hdmf\backends\hdf5\h5tools.py", line 970, in set_attributes raise RuntimeError(msg) from e RuntimeError: unable to write attribute 'starting_frame' on object '/acquisition/TwoPhotonSeries/external_file'
When I try to open the ophys.nwb created it says that it is not a proper nwb file
ERROR with NWB: Missing NWB version in file. The file is not a valid NWB file.
If I try to use my pynwb to open the nwb I get similar error